firewall-cmd 是一款基于Linux系统下的防火墙管理工具,它可以帮助用户轻松地管理系统的防火墙规则,保护系统安全。本文将详细介绍 firewall-cmd 的用法和功能,帮助用户更好地理解和应用这款工具。
一、firewall-cmd 的基本用法
1. 查看防火墙状态:要查看当前系统的防火墙状态,可以使用以下命令:
```
firewall-cmd --state
```
如果返回 running,则表示防火墙正在运行;如果返回 not running,则表示防火墙未启动。
2. 查看防火墙规则:要查看当前系统的防火墙规则,可以使用以下命令:
```
firewall-cmd --list-all
```
该命令将列出当前系统上所有的防火墙规则,包括默认规则和自定义规则。
3. 开启/关闭防火墙:要开启或关闭防火墙,可以使用以下命令:
```
firewall-cmd --state
firewall-cmd --set-default-zone=public
firewall-cmd --reload
```
其中,--state 用于查看当前防火墙状态,--set-default-zone=public 用于设置默认防火墙区域为 public,--reload 用于重新载入防火墙规则。
4. 添加/删除防火墙规则:要添加或删除自定义的防火墙规则,可以使用以下命令:
```
firewall-cmd --add-service=http
firewall-cmd --remove-service=http
```
其中,--add-service=http 用于添加允许 HTTP 服务通过防火墙,--remove-service=http 用于删除允许 HTTP 服务通过防火墙。
5. 持久化防火墙规则:要将自定义的防火墙规则持久化,可以使用以下命令:
```
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
```
其中,--permanent 用于将规则*保存到防火墙配置文件中,--reload 用于重新载入防火墙规则。
二、firewall-cmd 的高级功能
1. 自定义防火墙区域:firewall-cmd 支持创建自定义的防火墙区域,可以根据不同的网络环境设置不同的规则。要创建自定义的防火墙区域,可以使用以下命令:
```
firewall-cmd --permanent --new-zone=myzone
firewall-cmd --permanent --zone=myzone --add-service=http
firewall-cmd --reload
```
2. 高级端口管理:firewall-cmd 支持管理端口的转发和映射,可以通过以下命令实现端口的转发和映射:
```
firewall-cmd --permanent --zone=public --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.1.10
firewall-cmd --reload
```
3. 高级规则设置:firewall-cmd 支持设置更加复杂的规则,可以根据具体需求创建自定义规则。以下是一个示例:
```
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port port="22" protocol="tcp" accept'
firewall-cmd --reload
```
通过以上介绍,相信大家对 firewall-cmd 这款防火墙管理工具有了更深入的了解。它不仅可以帮助用户管理系统的防火墙规则,还可以实现高级功能如端口转发和映射等。建议用户在使用时,根据具体需求灵活设置防火墙规则,以保证系统的安全性和稳定性。希望本文对您有所帮助,谢谢阅读!