通常,所有信息到错误级别的消息都记录在/var/log/messages中,但很难区分消息中的长日志列表。
为了分离不同文件中与iptables相关的日志,请遵循以下步骤
注意:对于RHEL 6,日志文件名为rsyslog.conf
记录所有与 iptables 相关的消息
# vi /etc/syslog.conf # Log all kernel messages to firewall.log. kern.* /var/log/frewall.log # Log anything (except mail) of level info or higher. # Don't log private authentication messages! # Don't log kernel related any messages *.info;mail.none;authpriv.none;cron.none;kern.none /var/log/messages
仅记录警告级别的 iptables 消息
# Log all kernel messages to firewall.log. kern.warn /var/log/frewall-warn.log
将信息级别的所有消息记录到错误级别
kern.info;kern.!crit /var/log/firewall.log
根据不同文件中的严重性级别记录消息
kern.* /var/log/iptables.log kern.crit /var/log/iptables-crit.log kern.info /var/log/iptables-info.log
完成后重启 syslog服务
如果是 CentOS/RHEL 6,执行
# service rsyslog restart
如果是 CentOS/RHEL 5,执行
# service syslog restart
示例
创建一个规则来监控从 192.168.1.10 到 localhost 的 ping 日志
# iptables -I INPUT -s 192.168.1.10 -p icmp -j LOG --log-prefix "PING TEST "
现在让我们在日志文件中检验它
尝试从 192.168.1.10 ping 并观察日志文件
# cat /var/log/iptables.log Mar 6 11:22:36 test1 kernel: PING TEST IN=eth3 OUT= MAC=00:0c:29:51:aa:e1:00:0c:29:a3:f5:fa:08:00 SRC=192.168.1.10 DST=192.168.1.6 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=1037 SEQ=2 Mar 6 11:23:03 test1 kernel: PING TEST IN=eth3 OUT= MAC=00:0c:29:51:aa:e1:00:0c:29:a3:f5:fa:08:00 SRC=192.168.1.10 DST=192.168.1.6 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=3341 SEQ=1 Mar 6 11:23:04 test1 kernel: PING TEST IN=eth3 OUT= MAC=00:0c:29:51:aa:e1:00:0c:29:a3:f5:fa:08:00 SRC=192.168.1.10 DST=192.168.1.6 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=3341 SEQ=2
日期:2020-06-02 22:17:01 来源:oir作者:oir