防火墙的开启与关闭
#开启
systemctl start firewalld
#关闭
systemctl stop firewalld
#重启
systemctl restart firewalld
防火墙端口
查看所有开放的端口
查看开放到到所有域的端口
firewall-cmd --zone=public --list-ports
查看所有开放的端口
firewall-cmd --list-all
查看所有永久开放的端口
firewall-cmd --list-all --permanent
开放关闭端口
#永久开放80、81端口
firewall-cmd --zone=public --add-port=80/tcp --add-port=81/tcp --permanent
#永久关闭80、81端口
firewall-cmd --zone=public --remove-port=80/tcp --remove-port=81/tcp --permanent
#永久开放8080-8090端口
firewall-cmd --add-port=8080-8090/tcp --permanent
#永久关闭8080-8090端口
firewall-cmd --add-port=8080-8090/tcp --permanent
针对某个IP开放端口
firewall-cmd --permanent --remove-rich-rule 'rule family=ipv4 source address=192.168.11.128 port port=6379 protocol=tcp accept'
删除针对某个IP开放的端口
firewall-cmd --permanent --add-rich-rule 'rule family=ipv4 source address=192.168.11.128 port port=6379 protocol=tcp accept'
# 配置立即生效
firewall-cmd --reload
# --permanent代表用久生效,设置时不加,重启后开放的端口就会失效
# --zone=public代表针对所有ip开放,可以不加
端口转发
将80端口的流量转发至8080
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080
将80端口的流量转发至192.168.0.1
firewall-cmd --add-forward-port=proto=80:proto=tcp:toaddr=192.168.1.0.1
将80端口的流量转发至192.168.0.1的8080端口
firewall-cmd --add-forward-port=proto=80:proto=tcp:toaddr=192.168.0.1:toport=8080
查看防火墙的状态
firewall-cmd --state
docker映射的端口,开放端口外网依然无法访问
#修改docker0网卡为trusted域:(信任域)
firewall-cmd --permanent --zone=trusted --change-interface=docker0
#从信任域中移除
firewall-cmd --permanent --zone=trusted --remove-interface=docker0
firewall-cmd --reload
文章来源于:https://www.cnblogs.com/heqiuyong/p/10460150.html
https://www.cnblogs.com/elson-zeng/p/12553329.html
https://blog.csdn.net/s_p_j/article/details/80979450