我有 ubuntu,我想知道在哪里可以找到 iptables 的日志文件?
我发现了/var/log/messages
,但我不确定这是否是正确的日志文件。
而且我还想知道这个日志文件什么时候改变的?我添加了一项规则来阻止我的计算机响应 ping 消息,但是当我 ping 我的计算机时,我没有看到任何更改/var/log/messages
答案1
除非您添加规则来添加日志条目,否则 IPTables 不会记录日志。这通常是通过 -j LOG 目标完成的。日志条目被发送到内核日志,并且您的 syslog 守护程序确定内核日志条目的去向,在您的情况下似乎是 /var/log/messages 。
如果您想阻止来自某个主机(例如虚构的 123.456.789.10)的 ping,并记录所有这些数据包,请运行:
iptables -A INPUT -p icmp --icmp-type 8 --source 123.456.789.10 -j LOG
iptables -A INPUT -p icmp --icmp-type 8 --source 123.456.789.10 -j DROP
答案2
因为它很容易填满你的日志,所以默认是不记录的。添加到 LOG 目标的跳转,该目标将记录到内核日志(您可以在dmesg
syslog 配置为为您的发行版写入该日志的任何位置使用 或 看到该日志)。在 LOG-target 规则中,您可以设置--log-level
和--log-prefix
来帮助组织消息并将它们与其他内核消息分开。
LOG 是一个“非终止目标”,因此规则遍历将继续到下一个规则 - 您基本上可以在现有规则之上添加日志记录而不影响它们。