我有两台服务器 A 和 B。A 和 B 可以互相 ssh 并连接到其他服务器,但无法 ssh 连接到服务器 C。所有服务器都可以 ssh 连接到 A 和 B(包括服务器 C)。请求在以下位置挂断:
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
最终超时。如果我执行 a,netstat -a
我会看到在服务器 C 和服务器 A 或 B 上建立了连接。当我跟踪服务器 C 上的日志时,我看到了连接尝试,但从未完成。我可以双向 ping 和跟踪路由。
答案1
我发现了同样的问题。
就我而言:
- 客户端 SSH 版本:OpenSSH_6.7p1 Debian-5,OpenSSL 1.0.1k 201 年 1 月 8 日
- 服务器 SSH 版本:OpenSSH_5.3p1,OpenSSL 1.0.1e-fips 2013 年 2 月 11 日
似乎这个 ssh 服务器版本存在问题,因为我在许多不同的远程系统上使用同一个客户端,没有任何问题。
经过大量对 MTU 值的测试后,我最终发现解决方案是从 MAC 算法列表中删除 hmac-md5。
编辑/etc/ssh/ssh_config
下一行:
# MACs hmac-md5,hmac-sha1,[email protected],hmac-ripemd160
MACs hmac-sha1
我希望这能帮到您。
答案2
添加-c aes256-ctr
今天,我在尝试从运行 10.9.4(OpenSSH_6.2p2、OSSLShim 0.9.8r 8 Dec 2011)的 Mac 上从 AWS Store 登录新的 bitnami LAPP 堆栈(OpenSSH_5.9p1 Debian-5ubuntu1.4 pat OpenSSH_5*)时发现了此问题。
答案3
我检查了 openssh-server 和客户端的版本。我发现它已被降级,降级后连接终止并显示此消息。