在 Ubuntu 上查看防火墙规则的命令取决于所使用的防火墙管理工具。以下是常用工具的查看方法:
一、使用 ufw
(Uncomplicated Firewall)
Ubuntu 默认的防火墙工具是 ufw。查看规则的方法如下:
- 查看防火墙状态
bash sudo ufw status
输出示例: ``` Status: active
To Action From -- ------ ---- 22/tcp ALLOW Anywhere 8388 ALLOW Anywhere ```
Status: active
表示防火墙已启用。-
列表显示已设置的允许或禁止规则。
-
查看详细规则 如果需要更详细的信息,可以使用:
bash sudo ufw status verbose
输出会包含日志级别等更多信息。
二、使用 iptables
iptables
是一个低级防火墙工具,ufw 在底层使用它。如果没有启用 ufw,你可能需要直接使用 iptables
查看规则。
- 列出所有规则
bash sudo iptables -L -v -n
输出示例: ``` Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
Chain FORWARD (policy ACCEPT) ...
Chain OUTPUT (policy ACCEPT) ... ```
INPUT
表示进入流量的规则。FORWARD
表示转发流量的规则。-
OUTPUT
表示出口流量的规则。 -
查看特定表规则
- 查看 NAT 表规则:
bash sudo iptables -t nat -L -v -n
- 查看过滤表规则(默认表):
bash sudo iptables -t filter -L -v -n
三、使用 firewalld
如果你的系统使用的是 firewalld
,可以用以下命令查看规则:
-
查看当前区域规则
bash sudo firewall-cmd --list-all
-
查看所有已启用规则
bash sudo firewall-cmd --list-all-zones
-
查看开放的端口
bash sudo firewall-cmd --list-ports
四、其他实用命令
-
检测防火墙是否运行
bash sudo systemctl status ufw
-
列出所有监听端口 查看系统中所有当前监听的端口及其对应的服务:
bash sudo netstat -tuln
-
检查是否启用了 IPv6 防火墙规则
bash sudo ip6tables -L -v -n
根据你使用的防火墙工具选择适合的命令即可。如果你需要进一步修改规则或调整配置,也可以直接操作这些工具。