小编Jac*_*ing的帖子

ssh 隧道错误“ssh_exchange_identification:连接被远程主机关闭”

我正在尝试使用从我的办公室机器到我的家用机器的 ssh 隧道,并且在我尝试使用它时出现错误。

我正在做的是像这样启动一个 shell:

ssh -gL 12345:my.home.domain:22 my.home.domain
Run Code Online (Sandbox Code Playgroud)

这给了我一个合适的外壳,没问题。我通常做的是通过这台办公机器ssh到我的家用机器,如下所示:

ssh -p 12345 127.0.0.1
Run Code Online (Sandbox Code Playgroud)

这一直对我有用,直到上周我在我的家用机器上设置了一个新系统(从 Ubuntu 切换到 Debian)。现在我收到一个错误。我仍然可以打开我的初始 ssh 连接,但是当我尝试使用该隧道时,我(在办公室机器上)收到此错误:

ssh_exchange_identification: Connection closed by remote host
Run Code Online (Sandbox Code Playgroud)

此外,当这种情况发生时,我设置了隧道的开放外壳会向它吐出这条线:

channel 3: open failed: connect failed: Connection timed out
Run Code Online (Sandbox Code Playgroud)

在这一点上,我不知所措。如果需要更多信息,我很乐意发布。

============== 进一步=============

在进一步摆弄之后,我发现当我尝试在各个端口上 telnet 时,我从服务器(我的家用机器)得到了不同的响应。如果我尝试:

telnet my.home.domain 22
Run Code Online (Sandbox Code Playgroud)

我得到这个:

Trying <my ip address>...
Connected to <my domain>.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.5p1 Debian-6+squeeze2
Run Code Online (Sandbox Code Playgroud)

这是我所期望的。在设置隧道之后,然后 telnet 到那个,我看到了这个响应:

Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Run Code Online (Sandbox Code Playgroud)

============== 还有更进一步的 ==================

根据kbulgrien的建议,以下是带有 -v 选项的客户端机器的输出: …

ssh-tunnel

10
推荐指数
1
解决办法
2万
查看次数

标签 统计

ssh-tunnel ×1