温馨提示×

Debian怎么查看iptables状态

小樊
54
2026-08-14 05:08:21
栏目: 智能运维

在 Debian 系统中,查看 iptables 的状态和规则,常用以下几种方式:


一、查看 iptables 当前规则(最常用)

1️⃣ 查看所有表的所有规则

sudo iptables -L -n -v

说明:

  • -L:列出规则
  • -n:以数字形式显示(不做 DNS 解析,更快)
  • -v:显示详细信息(包计数、字节数等)

2️⃣ 查看指定表(filter / nat / mangle)

sudo iptables -t filter -L -n -v
sudo iptables -t nat -L -n -v
sudo iptables -t mangle -L -n -v

默认表是 filter,如果不加 -t 就是查看 filter 表。


3️⃣ 查看规则并显示行号(方便删除)

sudo iptables -L -n -v --line-numbers

二、查看 iptables 是否“运行”

⚠️ 注意:iptables 本身没有“运行状态”的概念,只有规则是否存在。

查看是否有规则

sudo iptables -S

输出示例:

-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT

如果只有默认策略,说明没有额外规则。


三、查看 iptables 服务状态(如果使用 iptables-persistent)

Debian 通常使用 iptables-persistent 来保存规则:

sudo systemctl status iptables
sudo systemctl status netfilter-persistent

新版本 Debian 一般用 netfilter-persistent


四、检查是否使用 nftables(Debian 10+)

Debian 10(Buster)以后,iptables 可能是 nftables 后端

查看是否启用 nftables

sudo update-alternatives --query iptables

或:

ls -l /usr/sbin/iptables

如果指向 xtables-nft-multi,说明是 nftables 后端。

查看 nftables 规则

sudo nft list ruleset

五、查看当前连接状态(辅助)

sudo iptables -nvL | grep -E "Chain|pkts"

或者查看连接跟踪:

cat /proc/net/ip_conntrack
# 或
cat /proc/net/nf_conntrack

六、常见组合命令(推荐)

sudo iptables -t filter -nvL --line-numbers
sudo iptables -t nat -nvL --line-numbers

如果你愿意,可以告诉我:

  • Debian 版本(cat /etc/debian_version
  • 是服务器还是桌面
  • 想排查 端口不通 / 防火墙问题 / Docker / K8s

我可以帮你精准分析 iptables 规则。

0