答案1
我可以告诉你 Squid 和 Dansguardian 是如何工作的。
Squid 是一个 HTTP 代理。这意味着浏览器不会直接将 HTTP 请求发送到他们想要联系的目标地址,而是将其发送到 Squid,在正常情况下,Squid 会将请求重新发送到目标地址,接收回复,并将回复转发回原始请求浏览器。
有趣的是,Squid 的功能远不止简单的转发。它最出名的功能之一就是缓存;它将经常访问的页面保存在磁盘上,并使用磁盘来满足请求,而不是一遍又一遍地联系目标服务器来获取同一页面。
另一件事是过滤;如果 URL 与模式匹配,或者脚本拒绝该 URL,Squid 可以响应 HTTP 请求并返回错误页面(例如,说该页面已被阻止)。我认为 Dansguardian 的工作方式是这样的;对于每个 HTTP 请求都会执行一个脚本来检查 URL,并向 Squid 发出批准或拒绝的答案。
现在,除非您希望用户轻松绕过此步骤,否则 Squid 必须是 HTTP 流量进出您的网络的唯一途径。可以明确设置浏览器以使用代理服务器,但更好的方法是在网络中的网关设备上或附近设置 Squid 以进行透明代理。您需要配置网关设备以将所有传出的端口 80 流量重定向到 Squid 的 IP 和端口。这使得 Squid 接收端口 80 上的所有传出流量,透明地拦截所有 HTTP 请求,从而强制所有用户通过代理。然后,在 Squid 上实施的任何策略都将应用于该网络中的所有用户。
答案2
DansGaurdian 是一款与 IPCop 兼容的内容过滤器插件,它利用了 Squid。IPCop 不附带 DansGaurdian,但Cop+ 分布我使用的就是这样的。您可以在 IPCop 的支持网站 ipcops.com 上获得 IPCop 的一般支持。
如果您选择安装 Cop+ 发行版,请小心应用 IPCop 更新,因为它们可能会覆盖 DansGaurdian 配置。