防火墙限制docker了

今天有个安全方面的需求,演示环境禁止将3306等高危端口暴露到外网。

于是同事开启了防火墙,仅将应用端口暴露。结果导致演示环境无法使用。

由于公司的应用是基于docker部署的。结果他问我为什么同一台机器,应用无法访问mysql。

docker对于宿主机来说,其实是一个独立的环境,有自己独立的网卡,可以将其看做外部机器。所以防火墙会拦截docker容器的请求。

解决方案:

  1. 将应用部署到其他机器上,其他机器在内网部署。
  2. 不使用docker,采用宿主机直接部署应用
  3. 将docker网卡添加到trusted域

1被否,公司没有那么多台服务器
2工程量大,而且以后无法使用k8s进行调度

firewall-cmd --permanent --zone=trusted --change-interface=docker0
firewall-cmd --reload

自此自己的系统可以正常访问了。
问题解决了一半,过段时间,有人反应其他系统无法使用。
登录nacos查看下服务

在这里插入图片描述
在这里插入图片描述
第一张图是我们系统的,第二张图是别人系统的,2者ip网段不同,于是怀疑是有2个网卡

ifconfig
在这里插入图片描述

2者网段不同,于是将他们的网卡也加进去

firewall-cmd --permanent --zone=trusted --change-interface=br-1f2dcac8086b
firewall-cmd --reload

自此问题解决

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值