我正在尝试锁定一台 Linux 笔记本电脑(输入和输出)。因此,只有由特定组启动的软件才应被允许连接到互联网。阅读了很多(很多)帖子并找到了这个解决方案,但它不起作用。这就是我测试输出的方法。 (如果我能让它工作,我会对 INPUT 做同样的事情。)
下载 firefox.tar.bz2 并解压到 path/to/my/folder 中
首先,在 GUI 中,我进入菜单/管理/用户和组,创建一个新组“freegroup”,并将笔记本电脑上的唯一用户“我自己”添加到该组中。如果我单击用户,我可以在组中看到第二组是“freegroup”
关闭 GUFW(在 GUI 中)
确保我们从空开始:
sudo iptables -F
sudo iptables --delete-chain
列表规则:
sudo iptables -L -n
Chain INPUT (policy ACCEPT)
num target prot opt source destination
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
添加组“freegroup”规则,并确保添加补充组选项:
sudo iptables -A OUTPUT -m owner --gid-owner freegroup --suppl-groups -j ACCEPT
关闭输出
sudo iptables --policy OUTPUT DROP
列出新规则
sudo iptables -L -n --line-numbers
Chain INPUT (policy ACCEPT)
num target prot opt source destination
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
Chain OUTPUT (policy DROP)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 owner GID match 1001 incl. suppl. groups
从终端以“freegroup”组运行 Firefox:
sudo -g freegroup -s path/to/my/folder/firefox
Firefox 启动,但无法连接到互联网...
我只在 Terminal 中看到错误
ATTENTION: default value of option mesa_glthread overridden by environment.
,但我认为它与 iptables 无关......
我究竟做错了什么?我对 Linux 很陌生。请帮助不要投反对票!谢谢!!!