如何在 Ubuntu 20.04 中重新启动 iptables?

如何在 Ubuntu 20.04 中重新启动 iptables?

我使用 ufw 来管理防火墙。但是 Docker 直接修改了 itpables 规则。我尝试进行一些测试,看看"iptables": false在 /etc/docker/daemon.json 中设置的效果如何,但似乎一旦启动 Docker,iptables 规则就会设置并且不会消失:

$ cat /etc/docker/daemon.json 
{
  "iptables": false
}

$ sudo systemctl stop containerd docker.service docker.socket

$ sudo iptables -L | grep -i docker
DOCKER-USER  all  --  anywhere             anywhere            
DOCKER-ISOLATION-STAGE-1  all  --  anywhere             anywhere            
DOCKER     all  --  anywhere             anywhere            
Chain DOCKER (1 references)
Chain DOCKER-ISOLATION-STAGE-1 (1 references)
DOCKER-ISOLATION-STAGE-2  all  --  anywhere             anywhere            
Chain DOCKER-ISOLATION-STAGE-2 (1 references)
Chain DOCKER-USER (1 references)

我很快发现 iptables 没有 systemd 单元,因此我尝试以几种不同的方式重新启动 ufw,但我猜由于 Docker 绕过了 ufw,所以它没有任何效果。

我猜重新启动计算机就可以解决问题,但这正是我想要避免的,因为我想进行一些涉及多次启用和禁用 Docker iptables 集成的测试,并且我不想每次都重新启动。

相关内容