Firewalld常用命令
目录
Firewalld相关命令启动服务以及添加服务或者端口等操作。
0.0.0.1 查看Firewall服务状态
systemctl status firewalld
0.0.0.2 启动/关闭Firewall
systemctl start firewalld
systemctl stop firewalld
0.0.0.3 禁用或者启用Firewall
systemctl disable firewalld
systemctl enable firewalld
0.0.0.4 查看端口是否开放
firewall-cmd --query-port=80/tcp
0.0.0.5 Firewalld的9个zone
zone 是firewalld 的单位。默认使用public zone 查看所有的zone
firewall-cmd --get-zones
查看默认的zone
firewall-cmd --get-default-zone
zone说明:
- drop (丢弃) 任何接收到的网络数据都被丢弃,没有任何回复,公有发送出去的网络连接。
- block(限制)任何接收的网络连接都被IPV4 的icmp-host-prohibited信息和IPV6的icmp6-adm-prohibited信息所拒绝。
- public (公共) 在公共区域内使用,不能相信网络内的其它计算机不会对你的计算机造成危害,只接收经过选取的连接。
- external (外部)特别是为路由器启用了伪装功能的外部网。你不能信任来自网络的其它计算,不能信任它们不会对你的计算机造成危害,只能接收经过选择的连接。
- dmz (非军事区) 用于你的非军事区的电脑 ,此区域内可公开访问,可以有限的进入你的内部网络,仅接收经过选择的连接。
- work (工作) 可以基本信任网络内的其它计算机不会危害你的计算机,仅接收经过选择的连接。
- home (家庭) 用于家庭网络,可以基本信任网络内的其它计算机不会危害你的计算机,仅接收经过选择的连接。
- internal (内部)用于内部网络,可以基本信任网络内的其它计算机不会危害你的计算机,仅接收经过选择的连接 trusted (信任) 可接收所有的网络连接。
0.0.0.6 新增开放端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=80/udp --permanent
0.0.0.7 删除一个端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
firewall-cmd --zone=public --remove-port=80/udp --permanent
0.0.0.8 添加/关闭服务
firewall-cmd --add-service=ftp --permanent
firewall-cmd --remove-service=ftp --permanent
0.0.0.9 查看Firewall状态
firewall-cmd --state
systemctl status firewalld
0.0.0.10 查看Firewall目前开放的内容
firewall-cmd --list-all
0.0.0.11 查看开放的端口
firewall-cmd --list-port
0.0.0.12 添加富规则
使mysql服务的3306端口只允许192.168.1.0/24网段的服务器能访问
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="3306" accept"
0.0.0.13 端口转发
开启伪装IP
firewall-cmd --permanent --add-masquerade
将本机的3306端口的访问转发到192.168.1.2服务器的13306端口
firewall-cmd --permanent --add-forward-port=port=3306:proto=tcp:toaddr=192.168.1.2:toport=13306
0.0.0.14 重载Firewall文件
firewall-cmd --reload
0.0.0.15 firewall-cmd命令的使用说明
firewall-cmd --help