前言
记录一下Linux下的firewall-cmd命令的用法,以后慢慢更新,慢慢完善。
正文
查看防火墙状态
#查看防火墙状态 systemctl status firewalld #开启防火墙 systemctl start firewalld #开机启动 systemctl enable firewalld
|
端口访问设置
查看已开放的端口、IP规则
#查询打开的端口 firewall-cmd --zone=public --list-ports
|
开放新端口,默认情况下所有端口都是关闭状态
#开放端口9001/tcp (tcp、udp等) firewall-cmd --zone=public --add-port=9001/tcp --add-port=9001/udp --permanent #批量开放9002~9005的tcp端口 firewall-cmd --zone=public --add-port=9002-9005/tcp --permanent #重新载入防火墙设置,使设置生效 firewall-cmd --reload
|
关闭已开放的端口
#关闭端口9001/tcp (tcp、udp等) firewall-cmd --zone=public --remove-port=9001/tcp --add-port=9001/udp --permanent #批量关闭9002~9005的tcp端口 firewall-cmd --zone=public --remove-port=9002-9005/tcp --permanent #重新载入防火墙设置,使设置生效 firewall-cmd --reload
|
IP访问设置
查看已设置的规则
#查看已设置的规则 firewall-cmd --zone=public --list-rich-rules
|
开放或限制ip(设置规则)
#开放IPV4地址为:192.168.0.0 指定端口:9001/tcp firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.0" port protocol="tcp" port="9001" accept" #开放IPV4地址为:192.168.0.1,不指定端口,代表可以访问所有端口(是否可以访问未开放端口待验证) firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.1" accept" #限制IPV4地址为:192.168.1.0 firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.0" reject" #重新载入防火墙设置,使设置生效 firewall-cmd --reload
|
删除已设置的规则
#删除开放IPV4地址为:192.168.0.0 指定端口:9001/tcp firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.0.0" port protocol="tcp" port="9001" accept" #删除开放IPV4地址为:192.168.0.1,不指定端口,代表可以访问所有端口(是否可以访问未开放端口待验证) firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.0.1" accept" #删除限制IPV4地址为:192.168.1.0 firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.1.0" reject" #重新载入防火墙设置,使设置生效 firewall-cmd --reload
|
如设置未生效,可尝试直接编辑规则文件,删掉原来的设置规则,重新载入一下防火墙即可
vi /etc/firewalld/zones/public.xml
|
参考地址
https://blog.csdn.net/haoqi9999/article/details/125988881