APP下载

基于Squid代理服务器的访问控制策略设计与实现

2012-11-09郭雅

中国教育网络 2012年5期
关键词:代理服务器客户机访问控制

文/郭雅

基于Squid代理服务器的访问控制策略设计与实现

文/郭雅

本文主要分析Squid代理服务器的安装、配置及访问控制策略设计,介绍Webmin管理工具的安装,以及如何通过Webmin实现对代理服务器访问控制策略的管理。

Squid是Linux下一个缓存Internet数据的代理服务器软件,其接收用户的下载申请,并自动处理所下载的数据。即当用户申请下载一个主页时,直接到Squid代理服务器的Cache中查看所需要的目标文件是否存在,如在Cache中存在,则反馈给用户;如果在Cache中不存在,Squid代理服务器直接向目标服务器作出请求,得到目标文件后反馈给用户,同时在代理服务器的Cache中对目标文件保留一个备份。

华南师范大学增城学院有31个电脑机房,通过一个三层交换机划分VLAN的方式把所有机房连接起来。如果机房要上网,方法一是通过交换机把路由开通,缺点是同一个VLAN的机房都可以上网;方法二是同一个VLAN的机房,通过架设一台ISA sever代理服务器控制上网,缺点是每个VLAN都要一个ISA sever代理服务器。

通过构建一个基于Linux的Squid代理服务器,再通过Webmin系统管理工具可以方便管理机房的上网。Webmin是一个基于Web的 Linux、Unix系统管理工具。管理员通过浏览器访问Webmin的各种管理功能并完成相应的管理动作。目前Webmin支持绝大多数的Linux、 Unix系统,这些系统除了各种版本的Linux以外还包括:AIX、HPUX、Solaris、Unixware、Irix和FreeBSD等。

Squid代理服务器与Webmin的安装

Squid安装

Squid的安装有两种方法。方法一:Linux、 Unix和FreeBSD等都自带squid组件,只要在安装系统时选上该组件,即系统安装完squid也安装完成。方法二:从squid站点www.squid-cache.org获取该软件的源代码安装包,包括gz和bz2两种压缩方式。下载最新的稳定版squid-3.1.19.tar.gz保存到/home/user/目录下,用以下命令解开压缩包:$ tar xzvf squid-3.1.19.tar.gz。然后,进入相应目录对源代码进行编译和安装,命令如下:$cd squid-3.1.19,执行./configure,make和 make install。

安装结束后,Squid的可执行文件在/usr/local/squid/sbin/目录下,主要配置文件Squid.conf位于/usr/local/squid/etc/目录下。如果是系统自带的Squid,主要配置文件Squid.conf位于/etc/squid/目录下。

Webmin安装

Webmin最新版本可以登陆http://www.webmin.com下载,目前最新版本是webmin-1.580.tar.gz,下载保存到/home/user目录下,用以下命令解开压缩包:$ tar xzvf webmin-1.580.tar.gz。然后,进入相应目录对源代码进行编译和安装,命令如下:$cd webmin-1.580,执行./setup.sh,会提示Config file directory [/etc/webmin] ,按回车则文件安装到/etc/webmin/目录下,如果想保存到其他路径,输入完整路径按回车即可。一般情况下选择默认路径,默认端口是10000,登录用户名是admin,密码自行设置。安装完成后在浏览器输入:http://Linux服务器IP地址或域名:10000/,登陆即可管理。

以孝与廉应为做人根本、基础与底线开展道德教育。如果一个人不慈不孝、不廉不洁,可以说其还没有成为真正的人,更不用说是一个好人、一个健康的人,这种伦理就是一种人之为人的底线伦理。西方伦理学所谓的底线伦理或者本底伦理,就是所有人之所以为人都要遵循的东西。以孝廉文化作为底线伦理开展道德教育也体现了社会主义核心价值观的要求。

Squid代理服务器与客户机的配置

Squid的配置

Squid主要配置文件Squid.conf位于/usr/local/squid/etc/目录下,方法一可以用vi命令编辑squid.conf文件,但要求对命令参数要很熟悉。方法二通过webmin工具配置squid,因为是图形界面配置,易掌握,方便管理。

(1)方法一用vi命令编辑squid.conf文件,删除squid.conf文件的原有内容,加入以下语句,squid就可以启动使用了。

cache_peer 210.39.242.88 parent 8080 0 #其他高速缓存,如果是一级代理不需要此语句。

使用命令/usr/local/squid/sbin/squid -f /usr/local/squid/etc/squid.conf -z建立硬盘缓冲区的缓存目录结构,运行命令/etc/rc.d/init.d/squid start启动squid,客户机配置好就可以上网。

(2)方法二通过浏览器登录webmin管理界面,默认是英文界面,通过“Change Language and Theme”选项可以改成中文界面。改完后,单击“服务器”,→“Squid代理服务器”,如果没有“Squid代理服务器”,在“Search:”输入:squid,查找即可找到。再编辑Squid代理服务器的“系统配置”,详细请参照图1所示,配置好点击保存即可。

图1 squid系统配置

在“端口和网络”选项设置客户机上网的IP地址是:192.168.32.78,端口为8080。在“其他高速缓存”选项增加高速缓存主机,主机名为:210.39.242.88,类型为父,代理端口为8080,ICP 端口为0。在“内存使用”选项设置内存为64M。在“访问控制”选项里选“代理约束”,把ACL下面的“all”设置为“允许”,保存即可。点击“返回到squid索引”,选择“高速缓存选项”,高速缓存目录设置为:/usr/local/squid/var/cache,类型为UFS,大小 (MB)是4000,一级目录为16,二级目录为256。点击“返回到squid索引”,再点击“初始化高速缓存”,选择“启动 Squid”,客户机配置好即可上网。

2、客户机的配置

在客户机上运行浏览器,选择“工具”菜单→“Internet选项”,在弹出的窗口中单击“ 连接” 选项卡,选择“局域网设置”,在弹出的窗口中选中“为LAN使用代理服务器(X)”选项,地址栏内代理服务器的IP地址为192.168.32.78,端口号为8080。这样客户端计算机则可通过代理服务器上网了。

Squid代理服务器的访问控制策略设计与实现

Squid代理服务器的访问控制策略设计

访问控制是squid配置中的重点,squid访问控制有两个要素:ACL 元素和访问控制列表。通过以下方法,系统管理员可以严格、清晰地定义代理服务器的访问控制策略。ACL的基本格式:ACL列表名称,控制方式,控制目标。

(1)禁止192.168.1.1--192.168.1.60这个网段里的所有客户机上网,配置代码如下:

(2)禁止用户访问包含有sex关键字的URL,配置代码如下 :

(3)禁止QQ通过squid上网,配置代码如下:

(4)禁止用户下载*.mp3,*.exe,*.zip,*.rar文件,配置代码如下:

(5)禁止用户访问域名为www.sohu.com的网站,配置代码如下:

(6)禁止192.168.2.0这个子网里所有客户机在周一至周五的9点到12点上网,配置代码如下:

以上操作只能在squid.conf文件下编辑添加,如果部分规则需要更改,只能通过命令的方式进行。现在通过登陆webmin管理工具,也可以做到同样的配置,操作起来更方便。在浏览器输入:http://192.168.32.78:10000/,进入webmin管理界面,找到“Squid代理服务器”后单击,再单击“访问控制”,如图2所示。

图2 访问控制

例如要禁止 192.168.1.1--192.168.1.这60个网段里的所有客户机上网,点击“Ethernet地址”下拉框,选“客户地址”,再点击“创建新的ACL”按钮。

在“创建在ACL”菜单中输入以下内容。“ACL名称”输入:1-room,“来自IP”输入:192.168.1.1,“到IP”输入:192.168.1.60,“网络掩码”输入:255.255.255.0。单击“保存”返回到“访问控制”界面,单击“代理约束”→“添加代理约束规则”,选中“1-room”,点击“保存”,1-room的访问控制就设置完成,再点击“应用更改”即刻生效。其他规则的添加大同小异。添加完ACL规则,最后的条目一定要是“all”,并且要设为“拒绝”,否则无法生效。如果最后的条目“all”设为“允许”,则所有的计算机都可以通过代理服务器上网、下载等操作。

访问控制策略的管理

(1)通过命令方式修改squid.conf的配置信息,运行/etc/init.d/squid reload,重新导入配置文件,再重启动squid即可生效,命令为:/etc/rc.d/init.d/squid restart。这不便于机房管理员的管理。

(2)通过webmin工具管理,设置“访问控制列表”,通过“代理约束”下的“允许”和“拒绝”选项来控制,最后再单击“应用更改”即刻生效。

通过webmin管理squid的访问控制策略,即使不是专业系统管理员,也很容易掌握,适合电子阅览室、学校机房或其他企事业单位使用。当然Squid代理服务器访问控制策略功能丰富,ACL类型和访问控制列表众多,以上所讲仅为一些基本用法,系统管理员在实际应用中可根据不同需求进行配置。

(作者单位为华南师范大学增城学院)

猜你喜欢

代理服务器客户机访问控制
一种跨策略域的林业资源访问控制模型设计
地铁信号系统中代理服务器的设计与实现
隔山亦能打牛,本本巧变远控利器
云计算访问控制技术研究综述
ONVIF的全新主张:一致性及最访问控制的Profile A
防火墙技术与校园网络安全的研究
从操作系统层面谈信息安全与自主访问控制
一种容侵系统的设计
升腾瘦客户机借神码翱翔“云端”
基于Web数据提高访问速度的方法