Answers:
您可以使用iptables
。
在终端上,将规则添加到 iptables
sudo iptables -A OUTPUT -p all -m owner --uid-owner username -j DROP
其中username是您要禁用Internet连接的用户。保存文件并退出。
这将增加一条规则,iptables
说明由指定用户创建的所有外发软件包都将被自动删除iptables
。
如果您想对一个完整的用户组执行相同的操作,我建议--uid username
您而不是使用--gid-owner groupname
,这将对一个完整的用户组具有相同的效果。
因此,为防止安全组访问Internet,该命令应类似于以下内容
sudo iptables -A OUTPUT -p all -m owner --gid-owner security -j DROP
要使规则永久生效,您可以在中创建一个脚本,在其中/etc/network/if-up.d/
添加必要的行并使其可执行。
作为一种选择,用于iptables-save
保存您的当前规则并在启动时恢复它们。
保存当前iptables
规则
sudo iptables-save > /etc/iptables_rules
/etc/rc.local
用您喜欢的文本编辑器打开,然后在文件末尾添加
/sbin/iptables-restore < /etc/iptables_rules
这将在每次引导时恢复保存的规则。
有关更多信息,请访问[ iptables
联机帮助页 ]页面,以获取有关多个iptables
选项的更多信息。
network-manager
,如果您从组中删除一个用户network
并禁用连接network-manager
或其他类似工具,则他将无法再次建立连接,而另一位用户是网络组的成员。这是另一种思维方式,因为它会自行禁用连接。
sudo /etc/init.d/networking
编辑后,您的工作量/etc/network/interfaces
有多/etc/init.d/networking
低?
sudo iptables -A OUTPUT -p all -m owner --uid-owner internet -j ACCEPT
但是并没有将其重新打开进行测试。