Linux · 15 9 月, 2020 0

UFW/iptables对Docker镜像不起作用

真是日了……Docker部署的镜像直接把端口暴露在公网上,设置iptables屏蔽了,拿浏览器试了一下,居然iptables没起作用。

Docker这厮自己也会写iptables,导致用户手动设置的iptables条目失效。那解决思路就明确了:禁止Docker修改iptables!具体做法:

Ubuntu

在文件/etc/default/docker里加一行,然后重启Docker:

DOCKER_OPTS="--iptables=false"

CentOS7

mkdir /etc/systemd/system/docker.service.d
vim /etc/systemd/system/docker.service.d/docker.conf

添加行:

ExecStart=
ExecStart=/usr/bin/dockerd --iptables=false

重启相关服务:

systemctl daemon-reload
systemctl restart docker

更多参考

无法访问外网了?
https://www.binss.me/blog/docker-pass-through-system-firewall/

还是希望保留Docker写iptables的功能:
https://chaifeng.com/to-fix-ufw-and-docker-security-flaw-without-disabling-iptables/