这是我目前的环境:
我有一台运行Ubuntu Server / Squid的虚拟机,它被设置为不透明。 我有一些IP地址需要绕过Squid身份validation,所以他们有不受限制的访问。 在某些情况下,这是需要的,因为一些应用程序不能和代理一起工作。
iptables -t nat -I PREROUTING -s 192.168.0.12 -p tcp --match multiport --dports 80,443 -j ACCEPT
我现在的问题是,我必须阻止Facebook的一些不受限制的IP地址。
我已经search了很长时间,并testing了一大堆事情来执行我目前的规则,没有成功,所以我希望你们中的一些人能够启发我在这种情况下。
为了可靠地过滤Facebook,你需要设置一个透明的代理(例如squid),并根据域名进行过滤。
您可以添加到您的iptables规则阻止域,例如:
iptables -t nat -I OUTPUT -p tcp -d www.facebook.com -j DROP iptables -t nat -I -p tcp -d facebook.com -j DROP
由于DNS查找,使用域名实际上不build议使用iptables,所以你可以得到Facebook的IP地址(例如dig或host命令),并添加这些IP(你将不得不查看更新)。
或者您可以使用专门用于网页内容过滤的工具。