轻松实现Linux下的互联网过滤功能_unix 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还可以设定上网时间段;可以定期检查日志,及时发现学生上网中存在的不良倾向。 (出处:赛迪网--中国电脑教育报)

时间: 2024-09-20 04:19:19

轻松实现Linux下的互联网过滤功能_unix linux的相关文章

VNC:Linux下的远程遥控专家_unix linux

在微软Windows操作系统中的远程控制工具软件非常多,其中大家最熟悉的莫过于赛门铁克公司的PC ANYWHERE,还有CA ControlIT等等.这些远程控制工具软件都可以通过网络来控制特定的计算机,可以共享那台计算机的数据资料,操作该计算机上的外部设备.  既然在Windows下的远程控制软件如此出色,那么在Linux平台中是否有好用的一次控制工具软件呢?实际上,在Linux操作系统平台中也是存在几款功能强大的远程控制工具软件的,只是这些软件非常少,使用的用户也不是很多,所以一般的Linu

Linux下的压缩文件剖析_unix linux

    对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕.别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rap.可是Linux就不同了,它有.gz..tar.gz.tgz.bz2..Z..tar等众多的压缩文件名,此外windows下的.zip和.rar也可以在Linux下使用,不过在Linux使用.zip和.rar的人就太少了.本文就来对这些常见的压缩文件进行一番小结,希望你下次遇到这些文件时不至于被

linux下输入长文件名小技巧_unix linux

    这个小技巧其实是写给新手们的,老手们恐怕会嗤之以鼻,而且我还不能算什么老手,如此看来似乎确实有些不妥.但是又转念一想即使是新手也未必不能给新手介绍一些自己的经验.俗话说的好,愚者千虑必有一得,况且大侠们对一些小技巧早已喑熟,他们恐怕不屑写这等鸡毛蒜皮一般的小文章,可是我等广大之linux 爱好而又刚刚入门者掌握这个有用的小技巧又是十分必要,因为它们可以大大简化我们的工作量.但是这方面的小技巧又很少被人提及,至少我是费了不少气力才得到的.因为这个理由才使得我有动力来写本文. 如果你是一个没

Linux下的高可用性方案研究_unix linux

  保证持续稳定的系统运行时间变得越来越重要,而传统意义上的小型机系统让普通用户望而却步.用户需要的是更高的可用性以及更低的成本.高可用性(HA)技术能自动检测服务器节点和服务进程错误.失效,并且当发生这种情况时能够自动适当地重新配置系统,使得集群中的其他节点能够自动承担这些服务,以实现服务不中断. Cluster应用可分为三方面:High-Availability(HA)(高可用性集群).Load Balance(负载均衡集群).Scientific(科学集群).在集群的这三种基本类型之间,经

独辟蹊径:实现Linux下的局域网远程接入_unix linux

本文介绍一种利用Linux服务器的两个串口构建拨号服务器的方法,远程用户可以通过拨号连接到局域网,方便地进行信息传递和资源共享. 笔者的配置环境是Red Hat 8.0 Linux操作系统,所需的硬件包括两个外置Modem(分别连接到COM1和COM2端口)和两条电话线.实现步骤如下: 1.初始化串口设备 在/etc/inittab文件中加入如下两行,用来初始化ttyS0和ttyS1两个串口设备: S0:345:respawn:/sbin/mgetty -D -X 3 ttyS0 S1:345:

Linux下即插即用设备的安装_unix linux

即插即用,在Linux底下?不好办,你还是换老的非即插即用设备吧.这是我初次接触Linux时,那些Linux高手们告诉我的.可是,我觉得总该有办法的.经过不懈的努力,我发现了两种方法.一是先从DOS启动,初始化设备后,再用loadlin加载到Linux中.但这不是我所梦寐以求的,因为每次需要大量时间来启动.我继续不停的寻找,终于有一天,我找到了我需要的东西,一个称为isapnptools的应用程序. 现在,大多数发行套件中都有isapnptools.如果你的套件中有,安装它即可.如果你的发行套件

linux下改变键盘映射解决方案_unix linux

linux xmodmap修改键盘映射Caps_Lock和Super_L互换 换awesome窗口管理器去了.由于ubuntu的unity还是不太稳定.偶尔卡住半天,受不了果断会曾经的awesome.话说用Win/Super的时候太多了.琢磨了半天还是不太习惯,想着还是把Caps lock和super给换一下. 用~$ xev |grep keycode 按要互换的两个键的到以下信息: 1 state 0×50, keycode 133 (keysym 0xffeb, Super_L), sam

Linux下中文字体的安装_unix linux

1.首先禁用xfs服务器. 运行Setup命令,在服务项中中止xfs随系统运行的特性.之所以禁用xfs服务器主要是因为xfs会自动更新字体目录下的fonts.dir文件,从而影响我们所做的修改. 2.将选中的字体拷贝到相关的目录. 一般选用simsun.ttf为基本的字体(据说该字体为最精美的中文字体).将这些字体拷贝到 /usr/share/fonts/default/TrueType下,生成fonts.dir 和 fonts.scale文件. 在所在的字体目录下运行:ttmkfdir > f

Linux下批量修改文件编码_unix linux

假设需要将所有ipaddr目录下的php文件,编码从gb2312转到utf8 cd ipaddr  find ./ -type f -name "*.php"|while read line;do  echo $line  iconv -f GB2312 -t UTF-8 $line > ${line}.utf8  mv $line ${line}.gb2312  mv ${line}.utf8 $line  done  上面脚本将当前ipaddr目录下的所有php文件,从gb2