全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

IP归属甄别会员请立即修改密码
查看: 1031|回复: 7
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
1#
发表于 2022-4-18 15:30:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
之前处理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……太屑了
2#
发表于 2022-4-18 15:45:14 来自手机 | 只看该作者
你可以设置容器的时候 端口填127.0.0.1:xxx:xxx
3#
发表于 2022-4-18 15:47:17 | 只看该作者

  1. sudo vim /etc/default/docker
  2. DOCKER_OPTS="--iptables=false"
复制代码
4#
发表于 2022-4-18 15:48:27 | 只看该作者
rootless docker会遵守,
5#
发表于 2022-4-18 15:49:50 | 只看该作者
raw>nat
这个是正规的解决方案
6#
发表于 2022-4-18 16:46:49 来自手机 | 只看该作者
要自己写个hook 挂在启动docker 之后。因为docker启动时会自动加防火墙规则
7#
发表于 2022-4-18 18:09:46 | 只看该作者
对头~  直接绕过防火墙 iptable上会直接加规则。要么映射端口时候加127.0.0.1:  要么
  1. vim /etc/default/ufw
  2. #把DEFAULT_FORWARD_POLICY修改成下面这样
  3. DEFAULT_FORWARD_POLICY="ACCEPT"

  4. vim /etc/default/docker
  5. #修改文件
  6. DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4 -iptables=false"

  7. vim /etc/ufw/before.rules

  8. 在`*filter`前面添加下面内容
  9. *nat
  10. :POSTROUTING ACCEPT [0:0]
  11. -A POSTROUTING ! -o docker0 -s 172.17.0.0/16 -j MASQUERADE
  12. COMMIT



  13. vim /etc/docker/daemon.json
  14. {
  15. "iptables": false
  16. }
复制代码
8#
发表于 2022-4-18 18:10:26 | 只看该作者
ipt里有docker chain了解一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-9-15 16:31 , Processed in 0.064861 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表