firewall-cmd提供了一个动态管理的防火墙,支持网络/防火墙区域来定义网络连接或接口的信任级别。它支持IPv4、IPv6防火墙设置和以太网网桥,并将运行时和永久配置选项分开。它还支持服务或应用程序直接添加防火墙规则的接口。
使用firewalld的好处可以在运行时环境中立即进行更改,不需要重新启动服务或守护程序;使用firewalld D-Bus接口,服务,应用程序和用户都可以轻松调整防火墙设置。界面完整,用于防火墙配置工具firewall-cmd,firewall-config和firewall-applet。
**语法格式** :firewall-cmd [参数]
**常用参数** :
| --state | 显示当前服务运行状态 |
| ---------------------------- | ------------------------ |
| --zone=public --list-ports | 查看所有打开运行的端口 |
| --reload | 不重启立即加载 |
| --list-all-zones | 查看区域信息情况 |
| --panic-on | 拒绝所有包 |
| --panic-off | 取消拒绝状态 |
| --query-panic | 查看是否拒绝 |
**参考实例**
查看当前firewalld服务运行状态:
```
[root@anycode ~]# firewall-cmd --state
running
```
查看所有放行的端口:
```
[root@anycode ~]# firewall-cmd --zone=public --list-ports
```
重新加载修改的配置,不重启服务:
```
[root@anycode ~]# firewall-cmd --reload
success
```
查看所有规则区域配置信息:
```
[root@anycode ~]# firewall-cmd --list-all-zones
```