我知道PID
某个特定进程的,我想禁用这个进程的 Internet 访问,并且只禁用这个进程的 Internet 访问,以便其他进程可以访问 Internet。
有什么办法吗?
我搜索了一些资料,找到了一种禁用可执行程序上网的方法。但我需要运行两个程序chrome
,一个可以访问互联网,另一个不能。
答案1
答案2
我刚刚遇到了同样的问题,并找到了一个很好的解决方案ubuntuforums.org
概括
添加一个组“no-internet”并将您的用户添加到其中
sudo addgroup no-internet sudo adduser $USER no-internet
添加 iptables 规则以阻止该组访问网络:
iptables -I OUTPUT 1 -m owner --gid-owner no-internet -j DROP
运行您不想访问互联网的进程,例如
sg
(以不同的组 ID 执行命令):sg no-internet "process command line"
答案3
我建议使用防火墙规则来锁定该程序。如果您可以隔离该程序正在使用的端口号,则可以阻止这些端口上的流量。您还可以使用 SELinux 或其他安全软件设置“每个进程”防火墙规则。
https://help.ubuntu.com/community/Gufw
如果你正在寻找更直接或更具挑战性的方法,你可以将 IPTables 配置为记录在这里。