Conntrack:删除 conntrack 条目是否会删除 tcp 连接?

Conntrack:删除 conntrack 条目是否会删除 tcp 连接?

我想知道 Conntrack -D 是否删除了 tcp 连接或者只是删除了连接跟踪条目?

我建立了到路由器的 ssh,然后使用 Conntrack -D 命令删除了该条目。我可以看到该条目已被删除,但我看到终端上的 ssh 会话仍然存在。

另外,我在使用 Conntrack -L 进行展示时再次看到了该条目,但这次使用了不同的连接 ID 但相同的端口。

连接是否由终端上的 shell / ssh 程序重新启动?或者这是 Conntrack 的预期行为。

我是新手,不确定这个问题是否应该属于 iptables 标签,如果是的话,请重定向我。

答案1

Conntrack 仅允许您查看和操作有关连接的状态数据。它不会操作作为该 ssh 连接一部分的 TCP 数据包。

如果您想要中断 ssh 会话,只需删除该连接的状态数据,就会开始跟踪新连接。就像最初将 ssh 会话检测为新连接一样,协议跟踪只会看到正在进行的 ssh 会话中的下一个数据包并开始跟踪该连接。

如果您想要断开连接,则需要删除允许该会话启动的 iptables 规则。然后,当通过 Conntrack 断开连接时,防火墙将拒绝属于 ssh 会话的下一个数据包(假设防火墙配置为丢弃不属于某个正在跟踪的连接的数据包),并且 ssh 会话将停止工作。

相关内容