赛迪网 > IT技术 Linux > 最新更新
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

轻松实现 Linux下的互联网过滤功能

发布时间:2006.12.30 04:55     来源:赛迪网--中国电脑教育报    作者:覃进文

目前,很多学校都建起了校园网并连接上互联网,但互联网上的不良信息非常多,如何进行网站过滤,防止不健康网站对学生的影响呢?以下本着零成本、高效益的原则,谈谈在免费的Linux下如何实现互联网的过滤功能。

设置代理服务器

校园网通过Linux上网,在网关上利用Squid架设代理服务器。

首先要安装好Linux,我用的是易装好用的RedHat Linux 7.2。在安装RedHat Linux 7.2时,Squid已同时安装好,我们只需简单的配置一下就能使用。

RedHat Linux 7.2安装后默认是未运行Apache,故应先启用Squid,确保Squid代理服务器能正常工作。修改/etc/squid/squid.conf配置文件。

  
    http_port 3128 (定义Squid监听HTTP客户端请求的端口) 
  
    cache_mem 10 MB (Squid可以使用的内存理想值,一般设为物理内存的1/3) 
  
    cache_swap_low 95 
  
    cache_swap_low 90 
  
    maximum_object_size 4096 KB(大于该值对象将不被存储) 
  
    cache_dir ufs /var/spool/squid/cache 200 16 256
        (指定Squid用来存储对象的交换空间大小及其目录结构) 
  
    acl all src 192.168.1.1/24(定义All 为192.168.1.1网段) 
  
    http_acceaa allow all(192.168.1.1 网段的客户端可使用Squid代理上网) 
  
    cache_effective_user squid(使用的用户和用户组) 
  
    cache_effective_group squid(其余参数用默认值即可) 
  
    [root@squid bin]# chmod 777 /var/spool/squid/cache
        (使/var/spool/squid/cache目录为Noboay用户,具有写权限) 
  
    [root@squid bin]# squid -z(手工建立Squid的缓存目录/var/spool/squid/cache) 
  
    [root@squid bin]# /etc/rc.d/init.d/squid start
         (启动Squid,停止Squid用/etc/rc.d/init.d/squid stop)
  

在客户端进行测试,以Windows为例。运行IE,单击“工具”,接着单击“Internet选项”,再单击“连接”选项卡,单击“局域网设置”;在“局域网设置”窗口中,在“地址”处填上Squid服务器的IP地址:192.168.1.16,在“端口”处填上“3128”,确定后退出。此时客户端应能浏览Internet,说明Squid已正常运行。

过滤功能的配置

接下来进行的是网站过滤功能的配置。可以有两种配置方法。

方法一

请到ftp://k12linux.mesd.k12.or.us/pub/squidguard/下载RPM版本的SquidGuard-1.2.0-3.i386.rpm。

  
#rpm -ivh squidguard-1.2.0-3.i386.rpm 
 
 

(安装后数据目录Dbhome:/var/squidguard/blacklists;日志目录Logdir: /var/log/squidguard)按提示修改/etc/squid/squid.conf文件中的有关配置行:

  
    redirect_program /usr/sbin/squidgua- 
  
    rd -c /etc/squid/squidguard.conf 
  
    redirect_child 5 
 
 

重启Squid,查看/var/log/squidguard/squidguard.log,看最后一行:2002-06-23 16:13:18[2237] squidguard ready for requests则表明Squidguard已正常运行。

方法二

请到squidguard.mesd.k12.or.us/squidguard.tar.gz下载TAR版本的SquidGuard.tar.gz,并存放到根目录下。

  
    #cd / (进入根目录) 
  
    #tar vzxf squidguard.tar.gz 
 
 

(解压缩文件到/usr/local/squidguard 下,数据目录Dbhome:/usr/local/squidguard/db;日志目录Logdir:/usr/local/squidguard/log)修改/etc/squid/squidguard.conf配置文件:

  
redirect_program: /usr/local/bin/squidguard -c /etc/squid/squidguard.conf
  

重启Squid,查看/usr/local/squid guard/log/squidguard.log确保SquidGuard已正常运行。试浏览一些欲过滤网站,若能被重定向到指定网页,则说明过滤功能已起作用。

在使用TAR版本的SquidGuard时能增减数据。进入到数据目录:/usr/local/squidguard/db下的Porn文件夹,新建一个Domains.diff文件,内容格式是(加号“+”表示增加,减号“-”表示去除):

  
    +newsite1(把newsite1加入过滤名单,不能访问) 
  
    +newsite2(把newsite2加入过滤名单,不能访问) 
  
    -site3(把site3从过滤名单去掉,可以正常访问) 
  
    -site4(把site4从过滤名单去掉,可以正常访问)
  

然后执行:

#/usr/local/bin/squidguard -c /etc/squid/squidguard.conf -u
  

查看SquidGuard.log文件,若有:

  
    db update done 
  
    squidguard stopped(102233.823)
  

表明数据更新成功!再重启Squid即可。

此方法的优点

此方法的优点是配置方便,对硬件要求低,一般退役下来的486、586完全能胜任,代理服务器可以长时间工作。且所有软件都是免费的,过滤名单更新快,只需到www.squidGuard.org下载最新版本的过滤名单数据库替换旧的即可,也可以手工增减过滤名单。

Squid还可以设定上网时间段;可以定期检查日志,及时发现学生上网中存在的不良倾向。

(t115)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 国外互联网服务瘫痪 国内技术网站访问激增 (12-29) · Linux操作系统对I/O端口资源的管理 (12-29)
· 金算盘亿禧网:06最值得关注的商业网站 (12-29) · 十分钟快速架设Linux系统下WebMail (12-29)
· Linux中访问硬盘DOS分区、软盘和光盘 (12-29) · Red Hat Linux 5将跳票到07年2月底 (12-29)
· Google访问量07年将勇夺全球和美国冠军 (12-29) · RedHat中让普通用户安全执行管理员程序 (12-28)
· 我愿Linux与开源世界永远充满活力 (12-28) · Linux中Gnome与KDE字体大小不同的解决 (12-28)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
[政务][电信][金融][农业][制造业][中小企业]
[CIO][ERP][协同][IT管理][中间件][电子商务]
[政策][地方][专家][评估][辞典][博客][社区]
· 专题:一路畅通构想曲——让出行不再遭遇堵车
· CIO工作亲历:企业ERP选型不能忽视"选人关"
· 综述:信息化建设给中国监狱带来的各种变化
· 金融业风险管理和法规遵从有五点需考虑的因素
· 保险业CIO关注:该如何建立统一高效的CRM体系
· 调查显示:多数CIO对IT规划仍存在困惑和误解
  博客·论坛 ·曾剑秋·项立刚·Java学习·网管