团队成员刚刚将我们的 AWS EC2 实例从 20.04 LTS 升级到 22.04 LTS,结果 ssh 连接中断。现在,当我尝试打开会话(在 MobaXterm 中)时,我得到:
Server refused our key No supported authentication methods available (server sent: publickey)
我在 EC2 机器上的 ~/.ssh/authorized_keys 中添加了一个公钥,并且我一直在 Windows 桌面上使用相应的 .ppk 文件作为私钥。在这次“升级”之前,它一直运行正常。
发生了什么事?我该如何解决?
更新:问题是 RSA 密钥不再受支持。您需要由更安全的算法生成的密钥,例如 ed25519。
答案1
在我们的案例中,问题在于我们使用了由 RSA 算法生成的密钥。该算法不再受支持。解决方法是使用由更安全的算法(例如 ed25519)生成的新密钥。(生成密钥对,将公钥添加到 EC2 实例上的 ~/.ssh/authorized_keys 文件[*],然后使用来自远程客户端的私钥。)
我确实这样做了,现在我可以连接了。
我想这在某处有记录,但是在哪里呢?(叹息)
[*] 进入 EC2 实例(传输公钥)的另一种方法是通过 AWS 管理控制台。