嘟嘟社区

[疑问] docker无视防火墙规则吗?


之前处理Ubuntu防火墙的时候一直没搞懂原理,瞎几把操作老是搞烂了,iptable、ufw、firewall一直禁用的,昨天把三个防火墙全删了,然后重新部署了ufw(iptable搞不明白),简单设置了一下,只放21、80、443端口出来。

今天打开Censys搜索自己的ip,发现暴露的还有两个已启用的docker端口? 我~都~惊——呆了,ufw规则里明明没放开这两个端口啊。

经过Google一番搜索才发现,docker默认是无视防火墙规则的,不管是iptable还是ufw又或是firewall,全部无视,所以ip+docker端口是可以直接访问你的docker反代设置的网站……

然后Google结果显示,必须要单独配置iptable的docker转发规则才能填这个坑,否则是关不上的……所以还得学iptable……太屑了

你可以设置容器的时候 端口填127.0.0.1:xxx:xxx
  1. sudo vim /etc/default/docker
  2. DOCKER_OPTS="–iptables=false"

复制代码

rootless docker会遵守,
raw>nat
这个是正规的解决方案