上班时间段禁止访问娱乐淘宝等网站,禁止下载mp3、exe等类型文件,采购部门需要上淘宝等某些限制网站(高级代理),
能代理上网站、QQ等功能;限制同一ip请求连接数,周六周日不受限制上网……
squid.conf配置内容如下:
#more /etc/squid/squid.conf |grep -v "^#"
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl localhost src ::1/128
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl to_localhost dst ::1/128
acl localnet src 192.168.0.0/16 #定义本地内网网段
acl SSL_ports port 443 #SSL
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl RestTime time MTWHF 00:00-8:29 #定义休息时间段1(周六周日除外,下同)
acl WorkTime time MTWHF 8:30-11:29 #定义工作时间段1
acl workTime time MTWHF 12:30-17:29 #定义工作时间段2
acl RestTime time MTWHF 17:30-23:59 #定义休息时间段2
acl CONNECT method CONNECT
acl OverConnlimit maxconn 25 #定义客户端最大连接数
http_access allow localhost #允许本地连接
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports #拒绝非安全端口的连接
http_access deny CONNECT !SSL_ports #拒绝非443的安全连接端口
acl deny_ip src "/etc/squid/deny_ip" #拒绝的客户端ip列表
acl qqgame dst "/etc/squid/policy/qqgame.list" #拒绝的QQ游戏ip列表
acl love_ip src "/etc/squid/vip_ip" #应用vip高级代理
acl allowurl url_regex "/etc/squid/allow.list" #允许的URL地址列表(优于denyurl列表)
acl denyurl url_regex "/etc/squid/denyurl.list" #拒绝访问的URL列表
acl Black_URL url_regex -i ^rtsp:// ^mms:// ^emule:// #拒绝类似电驴的请求
acl danger url_regex -i \.exe$ \.bat$ \.vbs$ \.zip$ \.mp3$ \.rm$ \.rar$ #拒绝下载这些类似的文件
http_access deny deny_ip #应用拒绝的客户端列表
http_access deny qqgame #应用拒绝我QQ游戏列表
http_access allow vip_ip #应用vip代理
http_access deny danger
http_access deny OverConnLimit #应用拒绝超过连接数的代理
http_access allow allowurl #允许例外的网站列表
http_access deny Black_URL
http_access deny denyurl WorkTime #工作时间拒绝上denyurl中的网站 (当然高级代理除外)
http_access allow denyurl RestTime #休息时间不限
http_access allow all
http_access allow localnet
http_access allow localhost
http_access deny all
http_port 3128 #tcp 3128端口作为代理上网端口(可自行定义)
hierarchy_stoplist cgi-bin ?
coredump_dir /var/spool/squid
cache_mgr IT_Administrators
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern .; 0 20% 4320
客户端的配置:
1、浏览器的配置,这里以IE为例:Internet选项-->"连接"-->"局域网设置"
说明:如果公司是单网段刚可以配置透明代理,这不是文章的重点,如果是多网段不用透明代理,有微软的域系统,可以利用域策略自动配置IE的代理
这机有点类似走了透明代理,但网关还是自己网段的,只是浏览器的代理被域策略配置成代理服务器的ip和端口(实际上笔者所在的公司就是这么实现的);
deny_ip 列表如下:(请根据自己公司的局域网网段构建列表)
#网段IP 电脑使用人 电脑名
#-------------2网段ip地址-------------------------------------------
192.168.2.2
192.168.2.3
192.168.2.4
192.168.2.5
192.168.2.6
192.168.2.7
192.168.2.8
192.168.2.9
#192.168.2.10 #张三 xxb-04
#192.168.2.11 #李四 TL2-03
#192.168.2.13 #王五 TL1-04
#192.168.2.14 #赵六 ERP-01
#192.168.2.15 #郭七 tl1-09
#192.168.2.16 #程咬金
#192.168.2.17 #刘老要 TL2-04
#192.168.2.18 #凤平 pp-02
#192.168.2.19 #陈佳 TL-10
说明:deny_ip列表在默认注释掉的才是有效的,即可以上网的,没有注释掉的就是拒绝上网的;
高级vip_ip列表也类似,只要在vip_ip列表中就不受上班时间限制上网denyurl中的网站,也不受限制下载;真是方便;另外实践中
以上配置能正常代理上网上QQ包括QQ远程协助,但是QQ不能发送图片,经查资料,原因是默认情况 下http_access deny CONNECT !SSL_ports 起的作用
如果想让QQ能发送图片,那么请把这条注释掉!
denyurl.list和allow.list内容如下(可自行定义名称和添加内容)
http://bbs.wdtc520.com
http://creditcard.ccb.com/loginFrm.html
http://www.abchina.com/update/down/powerenterabc32.exe
http://jobs.12333sh.gov.cn/dwdl/showInfo.jsp?number=75
http://mail.qq.com/cgi-bin/
mail.qq.com/cgi-bin/
http://www.hao123.com/
http://www.sh.10086.cn/
说明:这两个列表既可以只填写关键字,也可以填写完整的URL,但必须是一行一个条目,这里定义的规则是
是allow.list列表是优于denyurl.list列表的,例如,如果denyurl.list中有2345,那么所有的url中只要包含2345
字段那么非vip用户在非休息时间是不能访问的,代理会提示网站内容不合法,请联系管理员等提示,
但是如果在在allow.list中有www.2345.com这个条目,那么客户端在受限制时间内(非vip客户)还是可以访问www.2345.com这个网站的~
这就是这两个列表的妙处~
参考文章来源于www.wdtc520.com http://www.wdtc520.com/thread-1182-1-1.html