Answers:
根据此页面,FirewallD日志位于/var/log/firewalld
。要获取调试消息,您需要使用--debug
或运行它--debug=2
。
我知道这是一个过时的帖子,但是今天我一直在搜索此帖子,并且发现了许多试图解决此问题的旧博客。对于公众而言,Red Hat的此更新应该比仅订户更具可用性:
从勘误表RHSA-2016:2597升级到firewalld-0.4.3.2-8.el7
指定应记录的数据包
firewall-cmd --set-log-denied=<value>
值可以是以下之一:全部,单播,广播,多播或关闭
为了记录被阻止的流量firewalld
,以下方法rsyslogd
适用于我:
编辑/etc/sysconfig/firewalld
和用于更新该值LogDenied
到all
(或根据需要)
LogDenied=all
重新启动firewalld
sudo systemctl restart firewalld
通常,这会在防火墙中的拒绝/丢弃规则之前添加日志记录规则,例如:
LOG all -- anywhere anywhere LOG level warning prefix "IN_drop_DROP: "
LOG all -- anywhere anywhere LOG level warning prefix "FINAL_REJECT: "
创建一个名为/etc/rsyslog.d/custom_iptables.conf
(注意扩展名为is.conf)的文件,并向其中添加以下语句:
:msg,contains,"_DROP" /var/log/iptables.log
:msg,contains,"_REJECT" /var/log/iptables.log
& stop
重新启动rsyslog
sudo systemctl restart rsyslog
现在,丢弃和拒绝的数据包将被记录到 /var/log/iptables.log
journalctl -f
。FWIW,最初,基于其他答案,我仅完成了LogDenied = all部分,但这还不够。
_iptables.conf
→ _firewalld.conf
以减轻混乱?
/etc/sysconfig
dir,而是在编辑/etc/firewalld/firewalld.conf
文件。我上次使用此答案没有注意到它,因为LogDenied=all
我确实使用了另一个答案。
/etc/firewalld/firewalld.conf