Docker绕过UFW限制的问题

未曾想到,Ubuntu的防火墙UFW上的设置,会被Docker绕过。

情况是这样的,我开了一个docker服务,做了端口映射,然后我用nginx将入口反向代理到一个域名URL下。可以访问。

这时我想禁止通过服务器ip访问,结果居然失败了!一开始以为是UFW设置问题,结果一通操作,反而用域名访问不了,而IP可以。

于是搜索了下,居然是UFW和Docker有冲突。Docker会自己配置IPTABLES,而UFW低于IPTABLES于是就失效了。

真正的解决方法比较麻烦,需要修改Docker和UFW的配置,我这里用了一个Workaround,重新部署docker,但是在端口映射加上127.0.0.1:端口,这样对外这个接口不开放,只能通过nginx。

不过这个ufw一开,我连正常的访问也被中断了,很奇怪。还得再琢磨琢磨。


评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注