本教程展示如何在 DansGuardian、Privoxy 和一些防火墙规则的帮助下设置简单的家长控制设施。我已经测试过它,到目前为止,它似乎在大部分情况下都有效。
然而,有些事情我无法理解。也就是说,在本教程中,我们被告知要设置以下防火墙规则等:
sudo iptables -A OUTPUT -p tcp -m multiport --dports 80,443 -m owner --uid-owner privoxy -j ACCEPT
sudo iptables -A OUTPUT -o lo -p tcp --dport 8118 -m owner --uid-owner dansguardian -j ACCEPT
等待... -m owner --uid-owner dansguardian
,-m owner --uid-owner privoxy
??
我一直以为uid既可以是用户名也可以是组,可以分配给用户,而不是进程或者文件?一定是我看错了...
这更令人困惑,因为getent group
显示了 的条目dansguardian
,但没有显示privoxy
;所以我不确定这--uid-owner privoxy
指的是什么,因为privoxy
既不是用户也不是组。
预先感谢您向我解释这一点。
答案1
我一直认为 uids 可以是用户名或组
那些是用户名。它旨在让您Privoxy
在名为 的用户prixovy
和DansGuardian
名为 的用户下运行dansguardian
。
这更令人困惑,因为 getent 组显示了 dansguardian 的条目,但没有 privoxy 的条目
执行此操作即可cat /etc/passwd
查看用户列表。如果您在 Debian 或 Ubuntu 中安装了软件包,则很可能privoxy
是您系统上的用户。privoxy
可能没有group
像 那样的对应项dansguardian
。
答案2
您可以根据信使应用程序等程序使用的端口来阻止它。当你使用iptables时,你不能根据程序名称来阻止它。有些防火墙可以根据程序名称阻止它。