我(仍)试图build立一个iptables防火墙,但这次,我试图logging丢弃的数据包。 这里是我如何做到这一点(这个代码插入到ACCEPT规则之后; $IPT代表iptables的绝对path,这里是/sbin/iptables ):
$IPT -N LOGDROP $IPT -A LOGDROP -j LOG -m limit --limit 5/min -j LOG --log-level debug --log-prefix "iptables rejected: " $IPT -A LOGDROP -j DROP $IPT -A INPUT -s 0/0 -j LOGDROP $IPT -A OUTPUT -j LOGDROP $IPT -A FORWARD -j LOGDROP
当我尝试执行这个代码时,iptables拒绝它,并说:
iptables v1.4.8: multiple -j flags not allowed Try `iptables -h' or 'iptables --help' for more information.
然而,我在networking上到处都可以看到,这是对选定数据包应用两种操作的方式,那么为什么我的iptables版本处于这种不好的状态呢?
您在此行中指定了-j LOG两次:
$IPT -A LOGDROP -j LOG -m limit --limit 5/min -j LOG --log-level debug --log-prefix "iptables rejected: "