iptables SSH连接日志logging

build立连接时只能写入日志条目吗? 我努力了:

iptables -I OUTPUT -p tcp --dport 22 -j LOG --log-level notice --log-prefix "outgoing ssh connection" 

loggingSSH出口连接,但是这会logging每一个数据包,这是你可以想象的有点压倒性的监控目的。 我正在运行SLES 11 SP3。 所以,如果有人能指出一个办法,只有在build立合同时才写一个日志条目,我将不胜感激。

您需要loggingstream量的线路可能如下所示:

 iptables -I OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j LOG --log-prefix "Outgoing SSH connection" 

在另一个terminal上查看日志

while :; do iptables -L OUTPUT -v -n --line-n; sleep 2; done

我正在使用-m状态 – 状态。 不过我会build议使用--ctstate

man iptables更多。

如果你觉得你被日志压倒了,你可能会考虑改变日志--log-levelhttp://www.netfilter.org/可以告诉你更多。

val0x00ff的build议使用 – --state ,也是由Petter H发表评论 ,应该运作良好。

但是,您不需要为此引入会话状态跟踪。 您可以添加--syn标志,使该规则仅匹配设置了SYN标志的数据包,该标志仅在新的连接尝试中设置。