Squid配置文件使用acl指令定义访问控制列表(access control list, acl),http_access指令定义访问规则(access rulers)。
acl指令的语法格式为:
acl aclname type values
http_access指令的语法格式为:
http_access allow/deny aclname
1、IP地址:type的值可以为src(Client)、dst(Server)、myip
acl aclname src ip/netmask
acl aclname dst hostname
其中,子网掩码netmask可以省略(netmask的值应该等于IP地址中非零值的个数)。
acl Squid dst www.squid-cache.org
注意,上面这种使用hostname定义acl效率比较低, 在启动Squid其它模块前,会先解析conf配置文件,其中的hostname无法使用Squid非阻塞的IP Cache接口,而是通过阻塞的gethostbyname( )调用来解析IP地址。这样会延缓Squid的启动速度。
定义只包含一个IP地址的acl:
下面三组ACL定义都是等价的:
acl Foo src 172.16.44.21/255.255.255.255
acl Foo src 172.16.44.21/32
acl Foo src 172.16.44.21
acl Xyz src 172.16.55.32/255.255.255.248
acl Xyz src 172.16.55.32/28
acl Bar src 172.16.66.0/255.255.255.0
acl Bar src 172.16.66.0/24
acl Bar src 172.16.66.0
定义包含一组连续IP地址的acl:
acl Bar src 172.16.10.0-172.16.19.0/24
2、域名:type的值可以为srcdomain、dstdomain、cache_host_domain
acl A dstdomain foo.com
acl B dstdomain .foo.com
注意:B最前的那个点被看做通配符,如http://foo.com/同时匹配A和B,http://www.foo.com/ 将匹配B
不要在同一个aclname里定义有重叠的域名或IP地址,例如:
acl Foo dstdomain .lrrr.org .am.lrrr.org
警告:'.am.lrrr.org' is a subdomain of '.lrrr.org'
acl Foo src 1.2.3.0/24
acl Foo src 1.2.3.4/32
警告:'1.2.3.4' is a subnetwork of '1.2.3.0/255.255.255.0'
3、用户名:type的取值可以为ident、proxy_auth。
4、正则表达式:type的值可以为srcdom_regex, dstdom_regex, url_regex, urlpath_regex, browser, referer_regex, ident_regex, proxy_auth_regex, req_mime_type, rep_mime_type。例如:
acl Foo url_regex -i ^http://www
其中-i表示大小写不敏感,定义了一个正则表达式url_regex,它必须以http开头。
5、端口号:type的值可以为port, myport。
acl Foo port 123
acl Bar port 1-1024
6、Autonomous system numbers:type的值可以为src_as, dst_as。
7、Method:type的值可以为GET, POST, PUT, HEAD,
CONNECT, TRACE, OPTIONS, and DELETE等,例如:
acl Uploads method PUT POST
8、proto:type的只可以为http, https (same as HTTP/TLS), ftp,
gopher, urn, whois, and cache_object等,例如:
acl FTP proto FTP
分享到:
相关推荐
1.参与squid 用户讨论列表,回答问题和帮助新用户。 2.测试新版本,报告bug 或其他问题。 3.致力于在线文档和FAQ。假如你发现错误,将它报告给维护者。 4.将你的局部修改提交给开发者。 5.对开发者提供财政支持...
6.1.5 Squid如何匹配访问控制元素 6.2 访问控制规则 6.2.1 访问规则语法 6.2.2 Squid如何匹配访问规则 6.2.3 访问列表风格 6.2.4 延时检查 6.2.5 减缓和加速规则检查 6.3 常见用法 6.3.1 仅仅允许...
squid和nginx配置正向代理访问API接口
Linux下用Squid实现局域网用户访问Internet的身份验证.pdf
squid可充当代理服务器,而对sian,netEase等大型的站点,squid又充当web加速器。我也是在网上找了很长一阵子才找到的,希望能给想学习squid的哥们有点帮助。
Squid中文权威指南 Squid中文权威指南 Squid中文权威指南
SQUID-MIB.mib. Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,...
通过squid访问日志access.log 统计squid 命中率
该笔记由博主本人亲自整理撰写,介绍以及各方面的操作都进行了简化提示,很适合linux的萌新进行学习,内容大致:【squid的安装】【正向代理】【反向代理】【ACL访问控制列表】【配置文件简单介绍】【简化记忆】
Squid is the most popular Web caching software in use today, and it works on a variety of platforms including Linux, FreeBSD, and Windows. Written by Duane Wessels, the creator of Squid, Squid: The ...
squid配置实用教程 squid配置实用教程
squid文件上传大小配置
本人在工作中维护着数台Squid服务器,多次参阅Duane Wessels(他也是Squid的创始人)的这本书,原书名是"Squid: The Definitive Guide",由O'Reilly出版。我在业余时间把它翻译成中文,希望对中文Squid用户有所帮助...
清理squid缓存,直接执行sh 脚本名,不过还需要知道要清理的squid服务器列表和需要清理的url列表
squidsquid代理服务软件squid代理服务软件squid代理服务软件
Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,到为一组人共享...
Squid Proxy Server 3.1 Beginner,最新版本,使用SQUID必备书籍
Squid代理服务器原理
Linux搭建Squid透明代理及squid+icap环境