如何调试 SSH 端口转发?

如何调试 SSH 端口转发?

我这里遇到的问题比较奇怪,有两台 ubuntu linux 机器,上面运行着两个相同的 HTTP 服务器,一台端口转发正常,另一台出现 ERR_EMPTY_RESPONSE。

我检查了 ufw 设置,但什么也没发现,因为我可以在其中任何一个上进行 SSH 登录,所以对于端口转发来说应该足够了。那么,有什么建议可以调试这个问题吗?提前谢谢您。

仅供参考,我做了测试:在服务器上,端口转发是 64444:localhost:64444。

# nc -vv -l 64444 // Got nothing.

在客户端上运行:

# nc -vv localhost 64444 myhost [127.0.0.1] 64444 (?) open sent 0, rcvd 0: NOTSOCK

# nc -vv localhost 64441 // any other port myhost [127.0.0.1] 64441 (?): connection refused sent 0, rcvd 0: NOTSOCK

答案1

噢!我知道问题所在了。

在一台服务器中,/etc/ssh/sshd_config 有下面的行,它将直接丢弃前向连接。

AllowTcpForwarding no

我删除此行并重新启动 sshd 后,这个问题就解决了。

相关内容