在我们的 Ubuntu 机器上,我尝试通过在 /etc/network/interfaces 中添加以下行来阻止某个用户帐户访问互联网:
pre-up iptables -A OUTPUT -p tcp -m owner --uid-owner 1001 -j DROP
这种方法效果很好,只不过 Youtube 和其他 Google 产品没有被屏蔽。
我不是 iptables 专家,但我认为上述命令会删除全部来自指定用户的传出请求。Google 属性是否有什么特殊之处导致它们被豁免?
作为参考,以下是我的 iptables 列表:
$ sudo iptables --list
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- anywhere anywhere owner UID match ****
答案1
用户是否在使用 Chrome/Chromium?如果是,则浏览器最有可能使用快对于这些站点,该协议使用 UDP 作为传输方式。
可以封锁UDP 80和443端口来解决。