我的解决方案恰好是直截了当的.

>创建,验证新组;将所需用户添加到此组:

>创建:groupadd no-internet

>验证:grep no-internet / etc / group

>添加用户:useradd -g no-internet username

注意:如果您要修改现有用户,则应运行:usermod -a -G no-internet userName

检查:sudo groups userName

>在路径中创建一个脚本并使其可执行:

>创建:nano /home/username/.local/bin/no-internet

>可执行文件:chmod 755 /home/username/.local/bin/no-internet

>内容:#!/ bin / bash

sg no-internet“$@”

>添加iptables规则以删除组no-internet的网络活动:

> iptables -I OUTPUT 1 -m owner –gid-owner no-internet -j DROP

注意:不要忘记永久更改,因此它将是applied automatically after reboot.执行此操作取决于您的Linux发行版.

4.检查它,例如在Firefox上运行:

>没有互联网“firefox”

如果您想要例外并允许程序访问本地网络:

> iptables -A OUTPUT -m owner –gid-owner no-internet -d 192.168.1.0/24 -j ACCEPT

> iptables -A OUTPUT -m owner –gid-owner no-internet -d 127.0.0.0/8 -j ACCEPT

> iptables -A OUTPUT -m owner –gid-owner no-internet -j DROP

注意:如果产生,将保留规则.例如,如果您运行的程序没有Internet规则,并且该程序将打开浏览器窗口,则仍将应用规则.

Logo

更多推荐