网站运营
位置:首页>> 网站运营>> 解析squid安全策略

解析squid安全策略

 来源:asp之家 发布时间:2010-03-29 18:36:00 

标签:squid,解析,代理服务器

代理服务器的功能是代理网络用户取得网络信息,它是网络信息的中转站。随着代理服务器的广泛使用,随之而来的是一系列的安全问题。由于没有对代理服务器的访问控制策略做全面细致地配置,导致用户可以随意地通过代理服务器访问许多 * 、反动的非法站点,而这些行为往往又很难追踪,给管理工作带来极大的不便。以下为您介绍Linux下常用的Squid代理服务器的安全策略,期望抛砖引玉,对您的工作有所帮助。

控制对客户端访问

使用访问控制特性,可以控制在访问时根据特定的时间间隔进行缓存、访问特定站点或一组站点等。Squid访问控制有两个要素:ACL元素和访问列表。通过使用这些方法,系统管理员可以严格、清晰地定义代理服务器的访问控制策略。下面介绍一些例子:

◆ 允许内部一个网段的私有IP地址进行转发

acl me src 172.16.0.0/255.255.0.0

http_access allow all

上面的规则允许172.16.0.0这个网段的IP都被转发,但注意要在配置文件的最后加上“http_access deny all”,表示以上各规则都不匹配时拒绝所有的数据包。

◆ 允许列表中的机器访问互联网

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

如果允许网段10.0.0.124/24以及192.168.10.15/24内的所有客户机访问代理服务器,并且允许在文件/etc/squid/guest列出的客户机访问代理服务器,除此之外的客户机将拒绝访问本地代理服务器。其中,文件“/etc/squid/guest”中的内容为:

172.168.10.3/24

210.113.24.8/16

10.0.1.24/25

◆ 限制作访时段

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

上面的规矩容许所有的用户在规定的光阴内(周一至周四的8:30到20:30)造访代理服务器,只容许特定的用户(管理员,其网段为:192.168.10.0/24)在周五下午造访代理服务器,其他的在周五下午一律回绝造访代理服务器。

◆ 站点屏蔽

Squid可以屏蔽某些特定站点或含有某些特定字词的站点。用下面的规矩实现:

acl sexip src "/usr/local/squid/etc/sexip"

acl sexdn dstdomain "/usr/local/squid/etc/sexdn"

acl sexurl url_regex "/usr/local/squid/etc/sexurl"

acl sextag urlpath_regex "/usr/local/squid/etc/sextag"

http_access deny sexdn

http_access deny sexip

http_access deny sexurl

http_access deny sextag

上述代码中共有两部分,它们分辨 表现:sexip记载 不法IP地址133.3.103.6;sexdn记载 不法域sex.abc.com;exurl记载 不合法网址;sextag记载 不合法字眼—************。在实际利用中,无须把需要 屏蔽的所有站点或字词都列在上面,可以先保存 在一个文件中。ACL将从该文件中读出所需信息用以屏蔽被阻挠的站点。

◆ CONNECT的设置

目前存在有些用户通过二级代理软件造访一些不健康的站点,可以在Squid中通过CONNECT项来回绝。首先设置安全端口:

acl SSL_ports port 443 563

acl Safe_ports port 80 # http

acl Safe_ports port 21 # ftp

acl Safe_ports port 443 563 # https, snews

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 CONNECT method CONNECT

接着对通过CONNECT的非安全端口予以回绝,应用如下命令:

http_access deny CONNECT !SSL_ports

最后对Squid进行重新编辑 :

#/squid/bin/squid -k reconfigure

通过“tail/squid/logs/access.log -f |grep CONNECT”命令将看到应用 CONNECT上网的非安全端口盘算机都被回绝。

0
投稿

猜你喜欢

手机版 网站运营 asp之家 www.aspxhome.com