▶ 基本命令
查看电脑上是否已经安装 firewalld
systemctl status firewalld
安装防火墙
yum install firewalld
开启/关闭 防火墙
#开启防火墙
systemctl start firewalld.service
#关闭防火墙
systemctl stop firewalld.service
#设置开机自动启动
systemctl enable firewalld.service
#设置关闭开机制动启动
systemctl disable firewalld.service
#在不改变状态的条件下重新加载防火墙
firewall-cmd --reload
启用某个服务
#临时启用
firewall-cmd --zone=public --add-service=https
#永久启用
firewall-cmd --permanent --zone=public --add-service=https
开启某个端口
#临时开启
firewall-cmd --zone=public --add-port=8080-8081/tcp
#永久开启
firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp
说明:后面的协议只能在 {'tcp'|'udp'|'sctp'|'dccp'} 中选
查看开启的端口和服务
#查看开启的服务
firewall-cmd --permanent --zone=public --list-services
#查看开启的端口
firewall-cmd --permanent --zone=public --list-ports
其他命令
#修改配置后需要重启服务使其生效
systemctl restart firewalld.service
#查看服务是否生效
firewall-cmd --zone=public --query-port=8080/tcp
删除端口
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
端口转发
允许 IP 伪装
firewall-cmd --zone=external --permanent --add-masquerade
firewall-cmd --zone=public --permanent --add-masquerade
配置转发规则
# 如果端口是一个范围,表示方式:10000-20000
firewall-cmd --add-forward-port=port=<本机端口>:proto=tcp:toaddr=<目标主机地址>:toport=<目标主机端口> --permanent
重启生效
firewall-cmd --reload
删除转发规则
firewall-cmd --permanent --remove-forward-port=port=<本机端口>:proto=tcp:toaddr=<目标主机地址>:toport=<目标主机端口>