本节的目的并不是要解释 squidGuard 的详细配置,而只是介绍该程序并为使用该程序提些建议。要深入了解配置问题,请参见 squidGuard 的 网站 http://www.squidguard.org。
squidGuard 是一款用于 Squid 的免费 (GPL)、灵活而快捷的过滤器、重定向器和访问控制器插件。使用它可以针对 Squid 缓存定义多种访问规则,对不同用户组加以不同的限制。squidGuard 使用 Squid 的标准重定向接口。squidGuard 可以执行以下操作:
限制某些用户的 Web 访问,使其只能访问一组可接受的或众所周知的 Web 服务器或 URL。
防止某些用户访问某些列出的或在黑名单中列出的 Web 服务器或 URL。
防止某些用户访问与一组正则表达式或单词匹配的 URL。
将拦截的 URL 重定向至基于 CGI 的“智能”信息页面。
将未注册用户重定向至注册表单。
将横幅重定向至空白 GIF。
使用基于时间、周中各天、日期等的不同访问规则。
对不同用户组使用不同规则。
squidGuard 和 Squid 不能用于:
编辑、过滤或审查文档内的文本。
编辑、过滤或审查 HTML 嵌入脚本语言,如 JavaScript 或 VBscript。
在使用 squidGuard 之前,请先进行安装。提供最小的配置文件,如 /etc/squidguard.conf。可在 http://www.squidguard.org/config/ 中找到配置示例。以后可尝试更为复杂的配置设置。
接下来,如果客户机请求列在黑名单中的网站,则创建一个虚设的“拒绝访问”页面或复杂点的 CGI 页面来重定向 Squid。强烈建议使用 Apache。
现在,配置 Squid 以使用 squidGuard。使用 /etc/squid/squid.conf 文件中的以下项:
redirect_program /usr/bin/squidGuard
名为 redirect_children 的另一选项配置在该计算机上运行的“重定向”(在此例中是 squidGuard)进程数。squidGuard 速度很快,足以处理很多请求:在带有 5,900 个域和 7,880 个 URL(总数为 13,780)的 500 MHz Pentium 上,10 秒内可处理 100,000 个请求。因此,不建议设置四个以上的进程,因为进程的分配会过多的占用内存。
redirect_children 4
最后,通过运行 rcsquid reload 让 Squid 装载新配置。现在,可以通过浏览器测试这些设置。