先说句废话安装防火墙
下载:yum install firewalld
firewalld服务启停
启动: systemctl start firewalld
查看状态: systemctl status firewalld
停止运行: systemctl stop firewalld
开机时启用:systemctl enable firewalld
开机时禁用:systemctl disable firewalld
禁用,禁止开机启动: systemctl disable firewalld
查看是否开机启动:systemctl is-enabled firewalld
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed
firewalld-cmd配置和状态
查看防火墙状态: firewall-cmd --state
查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
查看所有打开的端口: firewall-cmd --zone=public --list-ports
查看活动的区域:firewall-cmd --get-active-zones
查看支持的服务:firewall-cmd --get-service
firewall功能操作
启动应急模式阻断所有网络连接:firewall-cmd --panic-on
关闭应急模式: firewall-cmd --panic-off
查看是否开启应急模式: firewall-cmd --query-panic
添加开放服务:firewall-cmd --zone=public --add-service=https #临时
添加开放服务:firewall-cmd --permanent --zone=public --add-service=https #永久
删除开放服务:firewall-cmd --zone=public --remove-service=https--permanent
添加开放端口:firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp #永久
添加开放端口:firewall-cmd --zone=public --add-port=8080-8081/tcp #临时
删除开放端口:firewall-cmd --zone=public --remove-port=80/tcp --permanent
操作后重新载入:firewall-cmd --reload
设置某个ip 访问某个服务
IP:192.168.122.250/7777 访问 http服务:
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.0.250/7777" service name="http" accept"
配置 IP 地址伪装
查看伪装:firewall-cmd --zone=external --query-masquerade
允许伪装:firewall-cmd --zone=external --add-masquerade
禁止伪装:firewall-cmd --zone=external --remove-masquerade
端口转发
打开端口转发,首先需要打开IP地址伪装:
firewall-cmd --zone=external --add-masquerade
转发 tcp 22 端口至 7777:
firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toport=7777
转发端口至另一个IP的相同端口:firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toaddr=192.168.0.250
转发端口数据至另一个IP的 7777端口:
firewall-cmd --zone=external --add-forward-port=22:porto=tcp::toport=7777:toaddr=192.168.0.250
这句不是废话
一定要注意空格和--