部署过docker后,防火墙firewall与iptables的基本指令

发布于:2024-07-06 ⋅ 阅读:(33) ⋅ 点赞:(0)

一、iptables【无需stop docker服务】

如果服务器中部署了docker,优先选用iptables

1. 记录关闭docker中运行的mongoDB的27017端口:

由于docker与iptables存在配置规则,因此要修改docker相关端口的可访问性时需要使用下面的语句:

关闭27017端口

iptables -I DOCKER-USER -i eth0 -p tcp --dport 27017 -j DROP

开放本机对27017端口的访问

iptables -I DOCKER-USER -i eth0  -s 127.0.0.1 -p tcp --dport 27017 -j ACCEPT

保存设置

service iptables save

重新启动

service iptables restart

查看与docker相关的策略

iptables --line -nvL  DOCKER-USER

详情参考:https://blog.csdn.net/yeqinghanwu/article/details/125979997

 

2. 其他iptables语句

-安装iptables

yum install iptables-services

-启动iptables

systemctl start iptables

-设置iptables开机自启

systemctl enable iptables

-设置开放某端口

/sbin/iptables -I INPUT -p tcp --dport 8000 -j ACCEPT

-设置开放针对某ip的某端口

/sbin/iptables -A INPUT -p tcp -s 31.8.11.78 --dport 80 -j ACCEPT

-保存设置

service iptables save

-重新启动

service iptables restart

-查看防火墙设置

/sbin/iptables -L -n

-docker容器与iptables冲突问题 参考网站:

https://www.it610.com/article/1288281195590787072.htm

 

二、firewall

-关闭docker服务

systemctl stop docker

-开启防火墙

systemctl start firewalld

-设置开机自启

systemctl enable firewalld

-移除端口

firewall-cmd --permanent --remove-port=2375/tcp

firewall-cmd --permanent --remove-port=27017/tcp

-对指定ip开放端口:

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="127.0.0.1" port protocol="tcp" port="27017" accept"

-重启防火墙(修改配置后要重启防火墙)

firewall-cmd --reload

-添加规则

vim /etc/docker/daemon.json

{

"iptables": false

}

-重启 docker

systemctl daemon-reload

-开启docker服务

systemctl start docker

-开启端口

firewall-cmd --zone=public --add-port=80/tcp --permanent

firewall-cmd --zone=public --add-port=9080/tcp --permanent

-重新加载防火墙配置:

firewall-cmd --reload

-查看防火墙:

firewall-cmd --list-all

-开启docker服务

systemctl start docker

-删除对指定ip开放的端口:

firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="0.0.0.0" port protocol="tcp" port="27017" accept"

-对指定ip开放端口:

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="127.0.0.1" port protocol="tcp" port="27017" accept"

-开启端口

firewall-cmd --zone=public --add-port=8000/tcp --permanent

-重新加载防火墙配置:

firewall-cmd --reload

-查看防火墙:

firewall-cmd --list-all

-关闭防火墙:

systemctl stop firewalld

-禁止防火墙开机启动:

systemctl disable firewalld


网站公告

今日签到

点亮在社区的每一天
去签到