Linux防火墙日志查看方法
Linux系统中防火墙日志的查看方式取决于所使用的防火墙工具(如iptables、firewalld、ufw等),以下是常见场景的具体操作:
iptables是传统Linux防火墙工具,其日志默认集成到系统日志(syslog/messages)中,需通过过滤关键字获取。
/var/log/messages
):sudo grep iptables /var/log/messages
/var/log/syslog
):sudo grep iptables /var/log/syslog
tail -f
命令实时跟踪日志输出(替换对应日志文件路径):# Red Hat/CentOS
sudo tail -f /var/log/messages | grep --line-buffered iptables
# Debian/Ubuntu
sudo tail -f /var/log/syslog | grep --line-buffered iptables
-j LOG
目标启用了日志记录(如sudo iptables -A INPUT -j LOG --log-prefix "iptables: "
)。firewalld是现代Linux系统(如CentOS 7+、Fedora)的默认防火墙工具,支持通过journalctl和专用日志文件查看。
sudo journalctl -u firewalld
sudo journalctl -u firewalld -f
sudo journalctl -u firewalld --since "2025-10-01" --until "2025-10-05"
err
):sudo journalctl -u firewalld -p err
/var/log/firewalld/
目录下,可通过以下命令查看:# 查看目录下所有日志文件
sudo ls /var/log/firewalld/
# 查看主日志文件(如firewalld.log)
sudo cat /var/log/firewalld/firewalld.log
# 实时跟踪日志文件
sudo tail -f /var/log/firewalld/firewalld.log
/etc/firewalld/firewalld.conf
,设置log-level=debug
(可选值为emerg
、alert
、crit
、err
、warning
、notice
、info
、debug
),然后重启firewalld服务:sudo firewall-cmd --set-log-denied=all # 启用拒绝包日志记录
sudo systemctl restart firewalld
```。
ufw(Uncomplicated Firewall)是Ubuntu/Debian的简化防火墙工具,日志默认存储在/var/log/ufw.log
。
sudo cat /var/log/ufw.log
sudo tail -f /var/log/ufw.log
/etc/ufw/ufw.conf
文件,修改loglevel
参数(可选值为off
、low
、medium
、high
、full
),如设置为high
以记录更多细节,修改后重启ufw服务:sudo systemctl restart ufw
```。
root
用户,普通用户需用sudo
提升权限才能查看。logrotate
工具压缩旧日志(如/var/log/syslog.1.gz
),可通过sudo less /var/log/syslog.1.gz
查看压缩日志。LOG
目标(iptables)或是否启用了日志记录(firewalld的log-denied
参数)。