免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2324 | 回复: 4
打印 上一主题 下一主题

squid2.6 透明代理配置,欢迎纠错 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-10-05 20:57 |只看该作者 |正序浏览
我的squid2.6 透明代理配置如下, 测试成功目前已投入使用,  

这次发上来和大家交流学习一下, 有错误或不对等,建议和改进请提出,

配置中加上我个入理解的注解, 如果不对或我个人了理错了,请高手门指正一下,


安装我就不说了啦
yum -y install squid #这样就可以安装了,
mkdir /home/cache
chown squid:squid /home/cache
chown squid:squid /var/log/squid

修改:vi /etc/squid/squid.conf 为


  1. #acl all src 0.0.0.0/0.0.0.0 and http_access allow all选项定义了一个访问控制列表。详细情况参见和Squid软件
  2. #携带的文档。这里的访问控制列表允许所有对代理服务的访问,因为这里该代理是加速web服务器。
  3. acl all src 0.0.0.0/0.0.0.0                 #允许所有IP访问
  4. acl manager proto http                 #manager url协议为http
  5. acl localhost src 127.0.0.1/255.255.255.255  #允午本机IP
  6. acl to_localhost dst 127.0.0.1                 #允午目的地址为本机IP
  7. acl Safe_ports port 80                # 允许安全更新的端口为80
  8. acl CONNECT method CONNECT        #请求方法以CONNECT
  9. http_access allow all                #允许所有人使用该代理.因为这里是代理加速web服务器
  10. http_reply_access allow all                #允许所有客户端使用该代理

  11. acl OverConnLimit maxconn 16        #限制每个IP最大允许16个连接,防止攻击
  12. http_access deny OverConnLimit

  13. icp_access deny all                        #禁止从邻居服务器缓冲内发送和接收ICP请求.
  14. miss_access allow all                #允许直接更新请求
  15. ident_lookup_access deny all                                #禁止lookup检查DNS
  16. http_port 8080 transparent                                #指定Squid监听浏览器客户请求的端口号。

  17. hierarchy_stoplist cgi-bin ?                #用来强制某些特定的对象不被缓存,主要是处于安全的目的。
  18. acl QUERY urlpath_regex cgi-bin \?
  19. cache deny QUERY

  20. cache_mem 1 GB        #这是一个优化选项,增加该内存值有利于缓存。应该注意的是:
  21.                      #一般来说如果系统有内存,设置该值为(n/)3M。现在是3G 所以这里1G
  22. fqdncache_size 1024        #FQDN 高速缓存大小
  23. maximum_object_size_in_memory 2 MB        #允许最大的文件载入内存

  24. memory_replacement_policy heap LFUDA  #动态使用最小的,移出内存cache
  25. cache_replacement_policy heap LFUDA         #动态使用最小的,移出硬盘cache

  26. cache_dir ufs /home/cache 5000 32 512  #高速缓存目录 ufs 类型 使用的缓冲值最大允午1000MB空间,
  27. #32个一级目录,512个二级目录

  28. max_open_disk_fds 0                                 #允许最大打开文件数量,0 无限制
  29. minimum_object_size 1 KB                         #允午最小文件请求体大小
  30. maximum_object_size 20 MB                 #允午最大文件请求体大小

  31. cache_swap_low 90                            #最小允许使用swap 90%
  32. cache_swap_high 95                            #最多允许使用swap 95%

  33. ipcache_size 2048                                # IP 地址高速缓存大小 2M
  34. ipcache_low 90                                #最小允许ipcache使用swap 90%
  35. ipcache_high 95                                  #最大允许ipcache使用swap 90%


  36. access_log /var/log/squid/access.log squid        #定义日志存放记录
  37. cache_log /var/log/squid/cache.log squid
  38. cache_store_log none                        #禁止store日志

  39. emulate_httpd_log on        #将使Squid仿照Web服务器的格式创建访问记录。如果希望使用
  40.                                 #Web访问记录分析程序,就需要设置这个参数。

  41. refresh_pattern . 0 20% 4320 override-expire override-lastmod reload-into-ims ignore-reload   #更新cache规则

  42. acl buggy_server url_regex ^[url]http://....[/url] http://          #只允许http的请求
  43. broken_posts allow buggy_server

  44. acl apache rep_header Server ^Apache                 #允许apache的编码
  45. broken_vary_encoding allow apache

  46. request_entities off                                        #禁止非http的标分准请求,防止攻击
  47. header_access header allow all                        #允许所有的http报头
  48. relaxed_header_parser on                                #不严格分析http报头.
  49. client_lifetime 120 minute                                #最大客户连接时间 120分钟

  50. cache_mgr [email]sky@test.com[/email]                        #指定当缓冲出现问题时向缓冲管理者发送告警信息的地址信息。

  51. cache_effective_user squid                        #这里以用户squid的身份Squid服务器
  52. cache_effective_group squid

  53. icp_port 0                       #指定Squid从邻居服务器缓冲内发送和接收ICP请求的端口号。
  54.                      #这里设置为0是因为这里配置Squid为内部Web服务器的加速器,
  55.                      #所以不需要使用邻居服务器的缓冲。0是禁用

  56. # cache_peer 设置允许更新缓存的主机,因是本机所以127.0.0.1
  57. cache_peer 127.0.0.1 parent 80 0 no-query default multicast-responder no-netdb-exchange
  58. cache_peer_domain 127.0.0.1                                 
  59. hostname_aliases 127.0.0.1

  60. error_directory /usr/share/squid/errors/Simplify_Chinese        #定义错误路径

  61. always_direct allow all                # cache丢失或不存在是允许所有请求直接转发到原始服务器
  62. ignore_unknown_nameservers on        #开反DNS查询,当域名地址不相同时候,禁止访问
  63. coredump_dir  /var/log/squid                 #定义dump的目录

  64. max_filedesc 2048                #最大打开的文件描述

  65. half_closed_clients off        #使Squid在当read不再返回数据时立即关闭客户端的连接。
  66.                                 #有时read不再返回数据是由于某些客户关闭TCP的发送数据
  67.                                 #而仍然保持接收数据。而Squid分辨不出TCP半关闭和完全关闭。

  68. buffered_logs on #若打开选项“buffered_logs”可以稍稍提高加速某些对日志文件的写入,该选项主要是实现优化特性。

复制代码

在命令提示符中输入squid –z                #创建cache文件 ,如果squid.conf有错会提示的,按提示排错。
service squid restart                        重新启动

iptables 设定
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080

ok设置完成, 可以测试了,
当你把apache 停止时候,就可以了看到squid的错误信息了, apache 打开的时候,
访问网站的记录,全部记录到 vi /var/log/squid/access.log 里面, 打开网站时候检查这log是不是不断刷新,如果有更新那就OK拉,

论坛徽章:
0
5 [报告]
发表于 2007-10-24 00:56 |只看该作者
mark一下。

论坛徽章:
0
4 [报告]
发表于 2007-10-23 23:14 |只看该作者
有些参数可以不要哦,如fqdncache_size 1024  
不过还是写得不错哦,很详细

论坛徽章:
0
3 [报告]
发表于 2007-10-07 10:33 |只看该作者
自已顶上:wink:

论坛徽章:
0
2 [报告]
发表于 2007-10-06 14:11 |只看该作者
以上配置都对吗? 还是没有人懂,还是没有高手出现.???
  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP