Anonim

为什么要过滤?

有很多原因导致您在浏览网络时想要过滤内容。 安全和隐私是最常见的。 您可以使用内容过滤来阻止广告,跟踪器和恶意网站,甚至阻止它们到达您的浏览器。 它为您现有的浏览附件增加了一层额外的保护。

使用内容过滤的另一个常见原因是防止儿童访问不适当的内容。 作为父母,这完全取决于您自己的方式,但是内容过滤可以帮助防止幼儿意外接触图形材料。

您需要什么

在Linux上过滤Web内容非常简单,尽管有几种方法可以处理它。 在过去,像Dansguardian这样的项目是最受欢迎的,但是目前还没有得到维护,其后继者E2guardian并不那么受欢迎。 作为该列中添加的负号,这些程序需要一个额外的代理,例如Squid或Privoxy。

奇怪的是,仅Privoxy即可透明地完成您需要的所有过滤。 因此,本指南将重点介绍使用Privoxy和iptables设置最简单,最轻便的过滤器。

Privoxy非常受欢迎,因此应将其包装为几乎要使用的任何发行版。 本指南将重点介绍基于Debian / Ubuntu的系统,因为它们是最受欢迎的系统。

使用Apt安装Privoxy。

$ sudo apt安装privoxy

设置Privoxy

您要做的所有事情都可以通过配置文件来处理。 这里没有光滑的图形界面。 这只是配置。 当然,在某些情况下使用它不太好,但是它可以使代理服务器保持点亮状态,因此不会妨碍您或严重降低连接速度。

基本配置

以root或sudo身份打开/ etc / privoxy / config中的文件。

首先,找到监听地址。 此设置将设置Privoxy监听的地址和端口。 通常,该设置已经设置为智能默认值,但是如果没有设置,则将其设置为与以下内容匹配。

监听地址127.0.0.1:8118

接下来,找到允许Privoxy拦截请求的设置。 查找accept-intercepted-requests,并将值设置为等于1。如果不存在,请创建该条目。

接受拦截的请求1

筛选器

默认情况下,Privoxy将阻止很多东西。 这包括安全威胁和不适当的内容。 如果您只是一个人在这里,则可以修改列表中的内容或从中删除内容。

具有过滤规则的Privoxy的配置文件位于/etc/privoxy/filter.default。 到处看看吧。 Privoxy使用正则表达式进行过滤,然后可以将被阻止的内容替换为HTML。 如果您正在寻找父母控制,那么他们就处于粗父母之下

随意修改,添加或删除任何这些规则。 如果您不能完全确定正则表达式的功能,请复制具有所需行为的表达式,然后针对要阻止的单词/内容进行修改。

iptables

在进行过滤器测试之前,您需要设置iptables防火墙,以通过Privoxy引导所有Web流量。 这是内容过滤的“透明”部分。 用户将无法看到正在发生的事情。 他们的流量将自动重定向并被过滤。 是否添加更多规则完全取决于您。 运行以下命令以添加重定向。

$ sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j重定向-to-port 8118 $ sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT -to-port 8118

现在,您所有的流量都将通过privoxy运行。 不幸的是,默认情况下,iptables不会保存您的规则。 您需要安装另一个软件包才能保存它。

$ sudo apt install iptables-persistent它将询问您是否要保存规则。 回答:“是。”

仍然有可能无法正常工作。 透明代理和HTTPS通常相处不佳。 在这种情况下,您将需要依赖浏览器的代理设置。 虽然有一种方法您仍然可以将其锁定,但是要付出更多的努力。 但是,如果您要过滤幼儿的内容,这应该不是什么大问题。 打开浏览器的代理设置,并将其指向127.0.0.1:8118。 这将迫使所有浏览器流量通过Privoxy。 如果您使用的是Firefox,则代理设置位于“首选项”菜单中“常规”选项卡的底部。

如果您要与更多有创造力的人打交道,而他们可能会尝试绕过代理,则需要找到用于管理代理的浏览器配置文件,并将所有权更改为root并将权限更改为只读。

测试出来

测试一下! 使用配置的计算机上的浏览器浏览到被阻止的内容。 如果您对此不太满意,可以随时返回并设置一个临时规则进行测试。

希望一切都按照您的需要进行设置,并且您的计算机有效地阻止了您想要的内容。 如果没有,您可以随时修改和定制规则。

使用linux和privoxy构建自己的Web内容过滤器