在 Debian 系统中,查看 iptables 的状态和规则,常用以下几种方式:
sudo iptables -L -n -v
说明:
-L:列出规则-n:以数字形式显示(不做 DNS 解析,更快)-v:显示详细信息(包计数、字节数等)sudo iptables -t filter -L -n -v
sudo iptables -t nat -L -n -v
sudo iptables -t mangle -L -n -v
默认表是 filter,如果不加 -t 就是查看 filter 表。
sudo iptables -L -n -v --line-numbers
⚠️ 注意:iptables 本身没有“运行状态”的概念,只有规则是否存在。
sudo iptables -S
输出示例:
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
如果只有默认策略,说明没有额外规则。
Debian 通常使用 iptables-persistent 来保存规则:
sudo systemctl status iptables
sudo systemctl status netfilter-persistent
新版本 Debian 一般用
netfilter-persistent
Debian 10(Buster)以后,iptables 可能是 nftables 后端。
sudo update-alternatives --query iptables
或:
ls -l /usr/sbin/iptables
如果指向 xtables-nft-multi,说明是 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
如果你愿意,可以告诉我:
cat /etc/debian_version)我可以帮你精准分析 iptables 规则。