我正在尝试将计算机与网络隔离。
我在linux中运行以下命令:
#create net_cls folder for cgroup
mkdir /sys/fs/cgroup/net_cls
#mount the newly created folder
mount -t cgroup -o net_cls none /sys/fs/cgroup/net_cls
#create new cgroup
cgcreate -g net_cls:/block_app
#add firefox process which is currently running to the group
cgclassify -g net_cls:/block_app $(pgrep firefox)`
#change read/write permissions for the file
chmod 777 /sys/fs/cgroup/net_cls/block_app/net_cls.classid
#assign group id
echo 1 > /sys/fs/cgroup/net_cls/block_app/net_cls.classid
#add iptable entry to permit firefox process which was added to cgroup
iptables -I OUTPUT -m cgroup --cgroup 1 -j ACCEPT
#drop all packets
iptables -A OUTPUT -j DROP
现在,执行这些步骤可以在我的本地虚拟机中进行。
本地虚拟机设置如下:
- 操作系统:Linux Mint 21.1
这在另一台运行 Ubuntu 20.04 的服务器上不起作用。
它只是阻止所有流量,包括作为例外添加的 Firefox。
我是管理linux系统的新手。因此,欢迎任何指点甚至替代方法。