我有一个运行 Ubuntu 20.04 和 OpenSSH 8.2p1 的 VPS 服务器,以及一个运行 Debian Buster 和 OpenSSH 7.9p1 的 Raspberry Pi 3。
我可以从桌面上正常 ssh 进入 VPS,但是当我从 Pi 上尝试时,出现 Kex 错误。
Sep 12 18:41:30 myhost sshd[3197]: Unable to negotiate with xxx.xxx.xxx.xxx port 64952: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1 [preauth]
我四处寻找并发现一些 答案对此已经有了,但是没有一个方法对我有用,而且似乎表明问题是服务器不支持现代 Kex 算法,我认为这里不会出现这种情况。
ssh -Q kex
这是VPS 和 Pi 上的输出:
VPS | Pi
----------------------------------------|----------------------------
diffie-hellman-group1-sha1 | diffie-hellman-group1-sha1
diffie-hellman-group14-sha1 | diffie-hellman-group14-sha1
diffie-hellman-group14-sha256 | diffie-hellman-group14-sha256
diffie-hellman-group16-sha512 | diffie-hellman-group16-sha512
diffie-hellman-group18-sha512 | diffie-hellman-group18-sha512
diffie-hellman-group-exchange-sha1 | diffie-hellman-group-exchange-sha1
diffie-hellman-group-exchange-sha256 | diffie-hellman-group-exchange-sha256
ecdh-sha2-nistp256 | ecdh-sha2-nistp256
ecdh-sha2-nistp384 | ecdh-sha2-nistp384
ecdh-sha2-nistp521 | ecdh-sha2-nistp512
curve25519-sha256 | curve25519-sha256
[email protected] | [email protected]
[email protected] |
.ssh/config
这是我在 Pi 上的文件内容:
IdentitiesOnly yes
Host myhost
HostName xxx.xxx.xxx.xxx
User myuser
Port 22
IdentityFile ~/.ssh/id_ed25519_myhost
任何调试帮助将不胜感激。
提前致谢!
答案1
好吧,我无缘无故地陷入了一场徒劳的追逐中 - 这里的问题是我在文件中错误地输入了我的 VPS 服务器的 IP 地址中的一个字符.ssh/config
。
哎哟。