如果在 SSH 服务器的防火墙更改后 SOCKS 浏览中断,不要凭仍然存活的 SSH shell 判断整条链路。服务器会为动态转发打开单独的目标 TCP 连接。

这些回复到达服务器选择的临时端口。若策略只允许新的入站流量发往 SSH 服务,又不接受已建立的流量,就可能丢弃这些数据包。

在现有的 IPv4 iptables 规则集中,连接状态片段为:

-A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

将它放在匹配的终止 drop/reject 之前。它放行被跟踪的返回流量,而不是通往高端口的每个新连接。

用被丢弃的 tuple 和状态来验证这一原因。OUTPUT 必须允许后续连接,IPv6 路径也需要其适用的规则。SOCKS 协商、SSH 传输和目的流量是需要分别检查的不同阶段。

相关文章