1、查看系统版本
cat /etc/redhat-release
2、查看防火墙运行状态
systemctl status firewalld
这里可以看到当前是未运行状态(inactive)。
3、关闭开机自启动防火墙
systemctl disable firewalld.service
4、启动防火墙并查看状态,系统默认 22 端口是开启的。
systemctl start firewalld
此处可以看到防火墙已开启。
5、设置开启指定端口,这里我开启 22 和 10022 端口
firewall-cmd --zone=public --add-port=22/tcp --permanent
firewall-cmd --zone=public --add-port=10022/tcp --permanent
设置成功,会提示 success。
6、设置完需要重载规则
firewall-cmd --reload
7、移除开启的指定端口
firewall-cmd --permanent --remove-port=8080/tcp
firewall-cmd --reload
8、查询指定端口是否已开启
firewall-cmd --query-port=22/tcp
开启成功会提示 yes。未开启提示 no。
9、重启防火墙
systemctl restart firewalld
10、查询目前开启的所有端口
firewall-cmd --list-ports
11、批量开放一段端口(TCP协议)
firewall-cmd --permanent --add-port=9001-9100/tcp
12、放行指定 ip (10.5.200.205)访问
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.5.200.205" accept'
成功会提示 success
设置完,重载规则
firewall-cmd --reload
13、允许指定IP段访问本机8080-8090端口
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="8080-8090" accept'
14、禁⽌指定IP访问本机8080端⼝
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="8080" reject'
15、查看所有规则
firewall-cmd --list-all
PS:还可以直接修改文件
修改/etc/firewalld/zones/public.xml
vim /etc/firewalld/zones/public.xml
这里可以看到我们前面设置的开放的端口,这里我开放了 10022 和 80 端口。(22是系统默认自带的)