iptables 中的 UNCLEAN 状态是什么意思

iptables 中的 UNCLEAN 状态是什么意思

iptables 中的 UNCLEAN 状态是什么意思?

例子:

iptables -A INPUT -m conntrack --ctstate UNCLEAN -j DROP

这实际上给了我一个错误,但应该存在不干净的状态。

另外,和INVALID状态有什么区别和联系呢?

答案1

不干净:

  • UNCLEAN匹配不需要任何选项,并且只需要在您想要使用它时显式加载它即可。请注意,此选项被视为实验性的,可能无法始终有效,也不会处理所有不干净的数据包或问题。不干净的匹配尝试匹配看起来格式错误或异常的数据包,例如具有错误标头或校验和的数据包等。例如,这可以用于DROP连接和检查坏流;但是,您应该意识到这可能会破坏法律联系。

  • 附注:它不久前被删除了(抱歉,不记得具体时间了,但我认为是在 2.6.x 树开始时)。他们指出,它没有得到正确使用,而且实现也不是他们想要的。大概就是这样。我认为它应该在 2.6.x 变更日志之一中。

无效的 :推荐

  • 状态INVALID意味着数据包无法被识别或者没有任何状态。这可能是由于多种原因造成的,例如系统内存不足或 ICMP 错误消息不响应任何已知连接。一般来说,在这种状态下删除所有内容是个好主意。

  • 带状态的规则INVALID将丢弃所有具有无效标头或校验和、无效 TCP 标志、无效 ICMP 消息(例如,当我们没有向主机发送任何内容时端口无法访问)的数据包,以及可能由序列预测或序列引起的失序数据包。其他类似的攻击。目标DROP将丢弃数据包而不做出任何响应,这与礼貌地拒绝数据包的 REJECT 相反。我们使用 是因为对这些数据包DROP没有正确的响应,并且我们不想确认我们收到了这些数据包。REJECTINVALID

相关内容