SSH 问题:ssh_exchange_identification/kex_exchange_identification:远程主机关闭连接

SSH 问题:ssh_exchange_identification/kex_exchange_identification:远程主机关闭连接

我通过 ssh/scp 连接到我的主机的服务器,主要是通过 Linux 机器,多年来一切运行良好。

现在,突然之间,大多数连接尝试在输入密码提示之前就失败了,并出现以下错误(取决于 SSH 客户端版本):

> kex_exchange_identification: Connection closed by remote host
> Connection closed by xxx.xxx.xxx.129 port 22

或者

> ssh_exchange_identification: Connection closed by remote host
> Connection closed by xxx.xxx.xxx.129 port 22

不过,有些连接尝试还是有效的,并且保持了稳定的连接。这已通过多个客户端得到证实:

  1. Android 上的 JuiceSSH
  2. Linux 上的 OpenSSH_8.3p1(当前)
  3. Linux 上的 OpenSSH_6.0p1(旧版,从未更新)
  4. 档案

以及来自多个网络。尽管如此,我的托管商还是一直将责任归咎于我的客户或我的 IP 地址。

有什么建议可以进一步追踪吗?(是的,我知道我应该从像这样无能的托管商那里换过来,但是移动所有服务需要一周的时间......)

答案1

尝试捕获 ssh 调试(ssh -vvv )并查看它告诉您什么。您应该看到 kex 交换信息,它将告诉您服务器支持哪些 kex 算法,客户端支持哪些 kex 算法,如果成功,它们同意哪一个。

它还将为您提供更多信息,可能准确地显示故障位置。

相关内容