我不想将iptables
的日志输出与其他系统日志混合。如何为iptables
LOG 链输出指定专用日志文件?
您如何执行此操作将取决于您使用的日志守护程序,syslog
或syslog-ng
.
使用syslog,您可以通过调整特定日志级别以仅包含iptables
消息来实现此目的。
在/etc/syslog.conf
:
kern.warning /var/log/iptables
Run Code Online (Sandbox Code Playgroud)
iptables
使用该日志级别的集合:
iptables -A INPUT -j LOG --log-level 4
Run Code Online (Sandbox Code Playgroud)
和syslog-ng
你在一起应该可以变得更狂热。您可以过滤内容并将该内容发送到特定的日志文件,而不是修改日志级别。
在/etc/syslog-ng/syslog-ng.conf
:
destination d_iptables { file("/var/log/iptables"); };
filter f_iptables { match("IN=[A-Za-z0-9\.]* OUT=[A-Za-z0-9\.]*" value("MESSAGE")); };
log { source(s_sys); filter(f_iptables); destination(d_iptables); }
Run Code Online (Sandbox Code Playgroud)