类似 iptables 规则一起

类似 iptables 规则一起

我在 iptables 中有以下规则:

/sbin/iptables -N LOGGING
/sbin/iptables -A INPUT -j LOGGING
/sbin/iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IPTables Packet Dropped: " --log-level 7
/sbin/iptables -A LOGGING -j DROP

我也可以添加这些规则吗?还是应该更改?不确定,如果我使用“A INPUT -j LOGGING”和“A INPUT -j LOG”进行双重记录。

/sbin/iptables -A INPUT -j LOG
/sbin/iptables -A FORWARD -j LOG

答案1

不,你不需要。

-N LOGGING创建一个名为 的自定义表LOGGING。这只是您的自定义表,您可以在其中放置规则以对它们进行分组。虽然它被称为LOGGING,但它本身并不进行任何日志记录。您可以以任何方式命名它,除了现有的表和目标。

当您使用 来定位它时,-A INPUT -j LOGGING它只会告诉 netfilter“进入”此表。现在它从第一条规则“遍历”到末尾或终止目标(如ACCEPT或 )DROP,而LOG是非终止目标。即,它将在处理非终止目标后继续处理下一条规则。因此-j LOG是实际的 LOG 目标,负责记录日志。

但是,如果您提供的示例完整,您可能会遇到的实际问题是-A LOGGING -j DROP部分。它不包含任何匹配项,并且目标设置为DROP。没有任何匹配项包括它传递的每一个数据包。因此,它会在记录后丢弃每个数据包。如果这是您的意图,那么没问题。但通常这些都是通过某种匹配(如源/目标 IP、TCP/UDP 端口等)来完成的。

相关内容