轻松实现Linux下的互联网过滤功能
目前,很多学校都建起了校园网并连接上互联网,但互联网上的不良信息非常多,如何进行网站过滤,防止不健康网站对学生的影响呢?以下本着零成本、高效益的原则,谈谈在免费的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还可以设定上网时间段;可以定期检查日志,及时发现学生上网中存在的不良倾向。
相关文章

重启可暂时解决!微软承认Win10/Win11经典版Outlook存在3个BUG
微软承认Win10/Win11经典版Outlook存在多个bug,官方现已呼吁受影响用户提交诊断日志以协助分析,在为正式解决之前提供了临时解决办法2026-03-16
加密邮件终于能打开了! 微软紧急修复Win10/Win11经典版Outlook故障
微软紧急修复 Win10/Win11 经典版 Outlook 故障,加密邮件终于能打开了,针对无法等待正式补丁的用户,微软提供了两种临时解决方案,详细如下文2026-02-02
Win10/Win11新版Outlook无法打开Excel 附件的两种临时解决办法
微软承认部分 Win10/Win11 新版 Outlook 无法打开 Excel 附件,遇到这个问题的朋友可以参考本文的两种临时解决办法2025-12-03
Win10/Win11版Outlook存在加密邮件问题:附临时解决方案
微软官方近日已承认经典版Outlook桌面客户端存在程序漏洞,该漏洞导致用户在尝试打开来自外部组织(其他租户)的OMEv2加密邮件时操作失败,同时会弹出“正在为信息权限管理2025-09-28
微软补丁更新引发的软件故障屡见不鲜,最近win10/win11系统更新最新版本的Outlook后,发现无法正常启动,下面分享临时解决办法2025-08-21
遇到Outlook无法启动跳 4usqa 错误怎么办?别担心,跟着以下步骤,让你的Outlook重新焕发活力2025-05-14
微软新版Outlook将推出邮件分类快捷键及多项优化:5月开始部署
微软计划在新版Outlook for Windows中引入邮件分类快捷功能,用户可通过预设快捷键快速对邮件进行分类,从而大幅提升工作效率并优化管理流程2025-04-21rsync The --password-file option may only be used when accessing a
客户端上传文件执行命令出错,提醒The --password-file option may only be used when accessing an rsync daemon.查找资料也很少这样的说法,最后发现是冒号的问题2025-02-26
邮箱在使用的时候,由于各种原因,有时候我们可能会遇到忘记密码、账号被盗等问题,这时候就需要进行163邮箱找回操作,本文将为大家介绍如何进行163邮箱找回操作2025-02-01
电子邮件成为了我们日常生活和工作中不可或缺的一部分,无论是注册社交媒体、购物平台,还是与他人沟通,一个稳定的邮箱账号都变得至关重要,本文将为您提供详细的电子邮件2025-02-01




最新评论