- FIREWALLD的基本使用
- 启动: systemctl start firewalld
- 查看状态: systemctl status firewalld
- 禁用,禁止开机启动: systemctl disable firewalld
- 停止运行: systemctl stop firewalld
- 配置FIREWALLD-CMD
- 查看版本: firewall-cmd --version
- 查看帮助: firewall-cmd --help
- 显示状态: firewall-cmd --state
- 查看所有打开的端口: firewall-cmd --zone=public --list-ports
- 更新防火墙规则: firewall-cmd --reload
- 更新防火墙规则,重启服务: firewall-cmd --completely-reload
- 查看已激活的Zone信息: firewall-cmd --get-active-zones
- 查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
- 拒绝所有包:firewall-cmd --panic-on
- 取消拒绝状态: firewall-cmd --panic-off
- 查看是否拒绝: firewall-cmd --query-panic
- 端口转发:
- 打开端口转发,首先需要打开IP地址伪装
- firewall-cmd --zone=external --add-masquerade
- 转发 tcp 22 端口至 1100:
- firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toport=1100
- 转发端口数据至另一个IP的相同端口:
- firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toaddr=10.10.0.1
- 转发端口数据至另一个IP的 1100 端口:
- firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toport=1100:toaddr=10.10.0.1
centos7以后版本的s防火墙与centos6之前的版本命令有所不同,centos6之前一直用的iptables,而centos7.0以后都是用的firewall。
查看防火墙状态:firewall-cmd --state
查看防火墙规则: firewall-cmd --list-all
禁用防火墙(开机不启动): systemctl disable firewalld.service
启用防火墙(开机启动): systemctl enable firewalld.service
开启防火墙: systemctl start firewalld.service
关闭防火墙: systemctl stop firewalld.service
重启防火墙: systemctl restart firewalld.service
查询端口是否开放:firewall-cmd --query-port=8080/tcp
配置文件位置:/etc/firewalld/zones/public.xml
添加开放端口:
#--permanent:表示设置为持久
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --permanent --add-port=8080/udp
移除端口:
firewall-cmd --permanent --remove-port=8080/tcp
firewall-cmd --permanent --remove-port=8080/udp