一、firewalld的基本使用(系统防火墙)
- 查看防火墙状态:
systemctl status firewalld.service
- 关闭防火墙:
systemctl stop firewalld.service
- 重启防火墙:
systemctl restart firewalld.service
- 开启防火墙:
systemctl start firewalld.service
- 关闭开机启动:
systemctl disable firewalld.service
- 开启开机启动:
systemctl enable firewalld.service
二、配置firewalld-cmd
- 查看放行的所有端口:
firewall-cmd --zone=public --list-ports
- 查看防火墙规则:
firewall-cmd --list-all
- 重新加载防火墙规则:
firewall-cmd --reload
三、通过firewall-cmd(放行端口)
- 作用域是public,开放tcp协议的80端口,一直有效:
firewall-cmd --zone=public --add-port=80/tcp --permanent
- 作用域是public,批量开放tcp协议的80-90端口,一直有效:
firewall-cmd --zone=public --add-port=80-90/tcp --permanent
- 作用域是public,批量开放tcp协议的80、90端口,一直有效:
firewall-cmd --zone=public --add-port=80/tcp --add-port=90/tcp --permanent
- 指定某个端口限定某个ip访问
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.100.168.0" port protocol="tcp" port="2375" accept"
- 指定某范围端口限定某个ip网段访问
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.100.168.0/24" port protocol="tcp" port="8000-9999" accept"
- 删除规则
firewall-cmd --permanent --remove-rich-rule="rule family=ipv4 source address=10.100.168.0 port protocol=tcp port=2375 accept"
- 开放的服务是http协议,一直有效:
firewall-cmd --zone=public --add-service=http --permanent
- 重新载入,更新防火墙规则,这样才生效;systemctl restart firewal也可以生效:
firewall-cmd --reload
- 查看tcp协议的80端口是否生效:
firewall-cmd --zone=public --query-port=80/tcp
- 删除80端口放行规则:
firewall-cmd --zone=public --remove-port=80/tcp --permanent
注意:
放行端口后必须要重新加载防火墙才会生效!