`
xitong
  • 浏览: 6188930 次
文章分类
社区版块
存档分类
最新评论

Squid的访问控制列表语法

 
阅读更多


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

URL hostname

Matches ACL lrrr.org?

Matches ACL .lrrr.org?

lrrr.org

Yes

Yes

i.am.lrrr.org

No

Yes

iamlrrr.org

No

No


不要在同一个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







分享到:
评论

相关推荐

    Squid使用手册.rar

    1.参与squid 用户讨论列表,回答问题和帮助新用户。 2.测试新版本,报告bug 或其他问题。 3.致力于在线文档和FAQ。假如你发现错误,将它报告给维护者。 4.将你的局部修改提交给开发者。 5.对开发者提供财政支持...

    Squid中文权威指南

    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接口.rar

    squid和nginx配置正向代理访问API接口

    Linux下用Squid实现局域网用户访问Internet的身份验证.pdf

    Linux下用Squid实现局域网用户访问Internet的身份验证.pdf

    squid-squid中文文档

    squid可充当代理服务器,而对sian,netEase等大型的站点,squid又充当web加速器。我也是在网上找了很长一阵子才找到的,希望能给想学习squid的哥们有点帮助。

    Squid中文权威指南 最好的Squid指南

    Squid中文权威指南 Squid中文权威指南 Squid中文权威指南

    SQUID-MIB.mib

    SQUID-MIB.mib. Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,...

    squid命中率统计

    通过squid访问日志access.log 统计squid 命中率

    linux_squid服务器详细介绍.txt

    该笔记由博主本人亲自整理撰写,介绍以及各方面的操作都进行了简化提示,很适合linux的萌新进行学习,内容大致:【squid的安装】【正向代理】【反向代理】【ACL访问控制列表】【配置文件简单介绍】【简化记忆】

    Squid The Definitive Guide

    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文件上传大小配置

    squid文件上传大小配置

    Squid中文权威指南.rar

    本人在工作中维护着数台Squid服务器,多次参阅Duane Wessels(他也是Squid的创始人)的这本书,原书名是"Squid: The Definitive Guide",由O'Reilly出版。我在业余时间把它翻译成中文,希望对中文Squid用户有所帮助...

    刷新squid缓存脚本

    清理squid缓存,直接执行sh 脚本名,不过还需要知道要清理的squid服务器列表和需要清理的url列表

    squid代理服务软件

    squidsquid代理服务软件squid代理服务软件squid代理服务软件

    squid-5.0.3.tar.gz

    Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,到为一组人共享...

    SQUID 3.1权威指南

    Squid Proxy Server 3.1 Beginner,最新版本,使用SQUID必备书籍

    Squid代理服务器原理

    Squid代理服务器原理

    Linux搭建Squid透明代理及squid+icap环境

    Linux搭建Squid透明代理及squid+icap环境

Global site tag (gtag.js) - Google Analytics