在 Debian 中,“防火墙”通常指 iptables / nftables,而日志的查看方式取决于是否配置了防火墙日志规则以及系统使用的日志系统(rsyslog / systemd-journald)。下面分情况说明。
sudo nft list ruleset
如果有输出,说明使用的是 nftables。
sudo iptables -L -n -v
如果有规则,说明使用的是 iptables。
Debian 10+ 默认推荐 nftables,但很多服务器仍用 iptables。
Debian 使用 systemd-journald 管理日志。
sudo journalctl -k | grep -i 'firewall\|drop\|reject'
如果你在规则里用了 LOG 或 ct 标记:
sudo journalctl -k | grep 'kernel'
sudo journalctl -k -f
日志可能在:
/var/log/syslog
/var/log/messages
/var/log/kern.log
查看:
sudo grep 'iptables\|nft\|drop\|reject' /var/log/syslog
示例:记录被 DROP 的包
sudo iptables -A INPUT -j LOG --log-prefix "IPTABLES-DROP: "
sudo iptables -A INPUT -j DROP
然后查看:
sudo journalctl -k | grep IPTABLES-DROP
sudo nft add rule inet filter input counter log prefix "NFT-DROP: "
查看:
sudo journalctl -k | grep NFT-DROP
Debian 也可安装 UFW:
sudo ufw status
查看 UFW 日志:
sudo journalctl -u ufw
# 或
sudo less /var/log/ufw.log
| 你的情况 | 查看方式 |
|---|---|
| 不确定 | journalctl -k |
| nftables | nft list ruleset |
| iptables | iptables -L -n -v |
| 无日志 | 没配置 LOG 规则 |
| UFW | /var/log/ufw.log |
如果你愿意,可以告诉我:
cat /etc/debian_version)我可以直接给你可复制的命令。