acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl SSL_ports port 443
acl Safe_ports port 80 8080 #http
acl Safe_ports port 21 #ftp
acl Safe_ports port 443 #https
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access allow localhost
http_access allow all
cache_dir aufs /data/cache 1024 16 256
cache_mem 128 MB
hierarchy_stoplist cgi-bin ?
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern \.(jpg|png|gif|mp3|css|xml) 1440 50% 2880 ignore-reload
refresh_pattern . 0 20% 4320
注:
1、标示红色有的squid版本中没有,需要添加,LAN客户端才能使用代理,否则浏览器访问任何站点报:The requested URL could not be retrieved/ TCP_DENIED/403,代理服务端curl访问正常
2、生产环境:
cache_dir aufs /data/cache 1024 16 256中的
/data/cahce
放在一个磁盘比较大的空间里 面.
4、创建缓存目录和初始化:
mkdir /data/cache #/data/cache自定义
squid -z #初始化
5、检查语法和配置文件加载:
squid -k check
#简写squid -kche
squid -k reconfigure #
简写squid -krec
6、启动squid服务
/etc/init.d/squid start
7、开机启动:
chkconfig squid on
8、限制某些域名访问
acl CONNECT method CONNECT
白名单:在其下面添加四行:
acl http proto HTTP
acl good_domain dstdomain .baidu.com .163.com
http_access allow http good_domain
http_access deny http !good_domain
注:白名单域名为 ”.baidu.com .163.com” ,这里的 . 表示万能匹配,前面可以是任何字符,只能访问白名单域名,其它域名访问不了
acl CONNECT method CONNECT
黑名单:在其下面添加四行:
acl http proto HTTP
acl bad_domain dstdomain
.sina.com .souhu.com
http_access allow http !bad_domain
http_access deny http bad_domain
注:除了sina、souhu网站不能访问,其它网站都能访问
总结:squid代理服务端,可以使用 curl -xlocalhost:3128 http://www.qq.com -I测试代理是否成功
tcpdump -nn port 3128 #抓取通过3128端口的数据包
日志分析:
http://www.open-open.com/lib/view/open1422368109361.html
http://www.cnblogs.com/mchina/p/centos-squid-proxy-server.html
http://blog.csdn.net/suiyuan19840208/article/details/31786909
本文转自 boy461205160 51CTO博客,原文链接:http://blog.51cto.com/461205160/1736875
传统代理 需要客户端指向squid代理服务器,客户端能感知到squid代理服务器的存在
透明代理(常用) 客户端不需要配置,只要直接访问即可,服务端,借助了防火墙规则及静态路由的方式,完成透明代理
反向代理 做为类似与Nginx服务器的反向代理功能,但自身不需要一个首页,基于IP:端口,权重的方式完成反向 代理
对于Squid自身的管理/功能 :
ACL:主要做的是http access (基于http协议,access访问) 的允许和拒绝管理
sarg:日志分析功能,可以以天的方式指定将ac
1.squid代理的工作原理
客户机想访问163网站时,首先向代理服务器请求web页面,代理服务器首先会查看自己的缓存,如果缓存中有,则直接发送给客户机,如果缓存表中不存在,他会向inter发送请求,当获得返回web页面后,将数据发送给客户端的同时保存在缓存表中,方便下次使用