当前位置:   article > 正文

通过iptables限制docker 容器的运行端口_iptables禁用docker暴露的端口

iptables禁用docker暴露的端口

通过在iptables  DOCKER-USER 添加规则,即可实现所有外部网络都无法访问docker中的服务:

iptables -I DOCKER-USER -i enp0s3 -j DROP


规则:所有从外部网络进入的数据包,直接被丢弃。 DOCKER-USER链是上述FORWARD链中第一个规则匹配的到的链。 外部访问的数据包,其物理输入网口(如ens192),它是对外通信的网口。 我们可以在此,插入只允许某个网络访问,或某个网络不能访问的规则


#方法

  1. yum install -y iptables iptables-services
  2. service iptables save


或者
iptables-save > /etc/sysconfig/iptables
cp /etc/sysconfig/iptables  ~/iptables.bak

#显示DOCKER-USER的链中的规则信息

iptables -nL DOCKER-USER

主机nacos容器的默认访问端口为8848,首先要禁止所有IP访问docker的8848端口

# 在主机10.10.58.137执行如下命令:(ens192 为本机网卡)
#禁止所有IP访问docker的80端口

iptables -I DOCKER-USER -i ens192 -p tcp --dport 8848 -j DROP

配置允许访问的IP,删除DOCKER-USER的链中的默认规则(默认规则允许任意ip访问)
#只允许192.168.3.122访问docker的80端口

iptables -I DOCKER-USER -i ens192 -s 10.10.58.236 -p tcp --dport 8848 -j ACCEPT

#删除DOCKER-USER的链中的默认规则

#删除RETURN的规则

iptables -D DOCK-USER -j RETURN

保存新的DOCKER-USER策略,并设置iptables开机自启
#保存DOCKER-USER策略

service iptables save

#设置iptables开机自启,使策略永久生效

systemctl enable iptables.service
#或者
/etc/rc.d/init.d/iptables save

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/783053
推荐阅读
相关标签
  

闽ICP备14008679号