快速业务通道

巧用Squid的ACL和访问列表实现高效访问控制

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-08
“deny all”或“allow all”来避免安全性隐患.

使用该访问控制列表要注意如下问题:

  1. 这些规则按照它们的排列顺序进行匹配检测,一旦检测到匹配的规则,匹配检测就立即结束.
  2. 访问列表可以由多条规则组成.
  3. 如果没有任何规则与访问请求匹配,默认动作将与列表中一条规则对应.
  4. 一个访问条目中的所有元素将用逻辑与运算连接(如下所示):
    http_access Action声明1 AND 声明2 AND
  5. 多个http_access声明间用或运算连接,但每个访问条目的元素间用与运算连接.
  6. 列表中的规则总是遵循由上而下的顺序.

3.使用访问控制

上面详细讲述了ACL元素以及http_access访问控制列表的语法以及使用过程中需要注意的问题,下面给出使用这些访问控制方法的实例:

(1)允许网段10.0.0.124/24以及192.168.10.15/24内的所有客户机访问代理服务器,并且允许在文件/etc/squid/guest列出的客户机访问代理服务器,除此之外的客户机将拒绝访问本地代理服务器:


acl clients src 10.0.0.124/24 192.168.10.15/24

acl guests src “/etc/squid/guest”

acl all src 0.0.0.0/0.0.0.0

http_access allow clients

http_access allow guests

http_access deny all

其中,文件“/etc/squid/guest”中的内容为:


172.168.10.3/24

210.113.24.8/16

10.0.1.24/25

(2)允许域名为job.net、gdfq.edu.cn的两个域访问本地代理服务器,其他的域都将拒绝访问本地代理服务器:


acl permitted_domain src job.net gdfq.edu.cn

acl all src 0.0.0.0/0.0.0.0

http_access allow permitted_domain

http_access deny all

(3)使用正则表达式,拒绝客户机通过代理服务器访问包含有诸如“sexy”等关键字的网站:


acl deny_url url_regex -i sexy

http_access deny deny_url

(4)拒绝客户机通过代理服务器访问文件中指定IP或者域名的网站,其中文件/etc/squid/ deny_ip中存放有拒绝访问的IP地址,文件/etc/squid/deny_dns中存放有拒绝访问的域名:


acl deny_ip dst “etc/squid/deny_ip”

acl deny_dns dst “etc/squid/deny_dns”

http_access deny deny_ip

http_access deny deny_dns

(5)允许和拒绝指定的用户访问指定的网站,其中,允许客户1访问网站http://www.sina.com.cn,而拒绝客户2访问网站http://www.163.com:


acl client1 src 192.168.0.118

acl client1_url url_regex ^http://www.sina.com.cn

acl client2 src 192.168.0.119

acl client2_url url_regex ^http://www.163.com

http_access allow client1 client1_url

http_access deny client2 client2_url

(6)允许所有的用户在规定的时间内(周一至周四的8:30到20:30)访问代理服务器,只允许特定的用户(系统管理员,其网段为:192.168.10.0/24)在周五下午访问代理服务器,其他的在周五下午一点至六点一律拒绝访问代理服务器:


acl allclient src 0.0.0.0/0.0.0.0

acl administrator 192.168.10.0/24

acl common_time time MTWH 8:30-20:30

acl manage_time time F 13:00-18:00

http_access allow allclient common_time

http_access allow administrator manage_time

http_access deny manage_time


更多Linux管理相关的详细内容请关注我的Linux系统全方位管理专题:http://os.51cto.com/art/201009/228849.htm

本文出自 “卓越始于足下” 博客,请务必保留此出处http://patterson.blog.51cto.com/1060257/394338

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号