CentOS7 操作firewall防火墙
常用命令
开启关闭防火墙
systemctl start/status/stop/disable firewalld
查看默认区域名称
$ firewall-cmd --get-default-zone
public
查看区域信息
firewall-cmd --get-active-zones
查看指定接口所属区域
firewall-cmd --get-zone-of-interface=eth0
查看防火墙配置
# 查看所有配置
firewall-cmd --list-all
firewall-cmd --zone=public --list-all
# 查看指定区域的开放端口
firewall-cmd --zone=public --list-ports
# 查看开放规则
firewall-cmd --zone=public --list-rich-rules
# 查看开放服务
firewall-cmd --permanent --zone=public --list-services
开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent #单个端口
firewall-cmd --zone=public --add-port=1-3306/tcp --permanent #批量端口
firewall-cmd --reload #重新加载防火墙配置才会起作用
–permanent:永久的
不加就是临时的,重启后失效
开放端口,如果不指定IP,任何ip都可以访问
关闭端口
firewall-cmd --zone=public --remove-port=3306/tcp --permanent #单个端口
firewall-cmd --zone=public --remove-port=1-3306/tcp --permanent #批量端口
firewall-cmd --reload
开放某个IP
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=192.168.1.16 accept'
firewall-cmd --reload
未指定端口,则可以访问所有端口
禁止某个IP
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.0.0.42 drop'
firewall-cmd --reload
指定ip开放端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.200" port protocol="tcp" port="80" accept"
firewall-cmd --reload
指定IP限制端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.0.0.0/24" port protocol="tcp" port="80" reject"
开放ip端访问端口端
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="8080-8090" accept'
删除规则
firewall-cmd --permanent --remove-rich-rule '规则内容'
配置立即生效
firewall-cmd --reload