Linux 发行版中使用的动态防火墙管理工具。使用 firewalld
,你可以查看防火墙状态、当前配置的规则以及开放的端口。以下是一些常用的 firewalld
命令来管理和查看防火墙状态及端口配置。
1. 查看防火墙状态
检查 firewalld
是否正在运行
sudo systemctl status firewalld
如果 firewalld
正在运行,你会看到类似于以下的输出:
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since ...
查看 firewalld
的状态
sudo firewall-cmd --state
输出 running
表示 firewalld
正在运行。
2. 查看所有当前的防火墙规则
查看默认区域的规则
sudo firewall-cmd --list-all
这将显示默认区域的所有规则,包括已开放的端口、服务、源地址等。
查看所有区域的规则
sudo firewall-cmd --list-all-zones
这将显示所有区域的规则配置。
3. 查看开放的端口
查看所有已开放的端口
sudo firewall-cmd --list-ports
查看默认区域的已开放端口
sudo firewall-cmd --zone=public --list-ports
请根据你的实际区域(如 public
)替换 zone
参数。
4. 查看服务
查看所有已启用的服务
sudo firewall-cmd --list-services
查看特定区域的服务
sudo firewall-cmd --zone=public --list-services
5. 查看区域配置
查看所有区域的详细配置
sudo firewall-cmd --list-all-zones
6. 查看配置文件
firewalld
的配置文件通常位于 /etc/firewalld/
目录。你可以手动查看这些配置文件以了解详细的配置。
7. 临时和永久的配置
- 临时配置:在防火墙运行时生效,系统重启后失效。
- 永久配置:配置文件中进行的更改,系统重启后依然有效。
要保存临时配置,使其变为永久配置:
sudo firewall-cmd --permanent --add-port=8888/tcp
sudo firewall-cmd --reload
要删除永久配置:
sudo firewall-cmd --permanent --remove-port=8888/tcp
sudo firewall-cmd --reload