在 CentOS 上查看 iptables 状态,常见有以下几种方式,按使用场景说明:
iptables -L -n -v
说明:
-L:列出规则-n:以数字形式显示 IP 和端口(更快)-v:显示详细信息(包数、流量)查看指定表(如 nat):
iptables -t nat -L -n -v
iptables 服务service iptables status
或:
/etc/init.d/iptables status
systemd(但仍在用 iptables)systemctl status iptables
⚠️ 注意:
CentOS 7 默认使用 firewalld,如果你没手动切换回 iptables,这个服务可能是 未安装或未启用。
systemctl status firewalld
firewalld 是 running,说明防火墙由 firewalld 管理firewalld 是 stopped,且 iptables 是 running,才是 iptableslsmod | grep ip_tables
或:
iptables -S
输出类似:
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
说明 iptables 正常运行。
| 场景 | 推荐命令 |
|---|---|
| 查看规则 | iptables -L -n |
| 查看服务 | systemctl status iptables |
| 查看是否 firewalld | systemctl status firewalld |
❌ CentOS 7 默认没有 iptables 服务
✅ 实际是 firewalld 在管理 iptables 规则
如果你愿意,可以告诉我:
我可以给你更精确的命令 ✅