PuTTY 主机密钥警告中的指纹与 EC2 密钥指纹不匹配

PuTTY 主机密钥警告中的指纹与 EC2 密钥指纹不匹配

我重启了 AWS EC2 实例,现在当我尝试通过 SSH 或 FTP 连接时,我会收到 PuTTY 警告,提示存在潜在安全漏洞,并且主机密钥与注册表中缓存的密钥不匹配。EC2 实例的 IP 仍然相同,我在 AWS EC2 仪表板中查看了我的密钥对指纹(如果您单击分配给实例的密钥对,它将显示一个指纹),它与 PuTTY 警告消息中显示的指纹不匹配。此外,实例上托管的站点不可用,我收到连接被拒绝错误。

我完全停止并重新启动了 EC2 实例,现在它显示不同的 IP 地址,因此我关联了一个新的弹性 IP。

现在,当我连接时,我会收到正常消息,过去当我第一次连接到新实例时,我几乎总是忽略这条消息,但现在我非常担心接受主机密钥。

PuTTY 显示的指纹显示它是 ssh-ed25519 指纹。但是当我在 AWS 中查看指纹时,它却是 RSA 指纹。它们不匹配,但我不认为它们会匹配,因为它们是不同类型的。我应该采取什么步骤来确保自己没有搞砸?

我进入了 PuTTY 主机密钥设置并将 RSA 移至列表顶部,我认为这是朝着正确方向迈出的一步,因为现在 PuTTY 使用 RSA2 提示,但指纹仍然不匹配,大概是因为它是 RSA2 而 AWS 显示的是 RSA。我不知道该将哪个选项移至顶部。

我还尝试通过粘贴我希望它接受的指纹(从 AWS 中提取)来手动配置主机密钥,但它说主机密钥的格式不正确。我猜,尽管它说你可以指定指纹,但它一定不允许指纹,而需要主机密钥。

答案1

您正在查看您帐户的身份验证密钥指纹。

这不是 PuTTY 提示您输入的内容。PuTTY 会提示您输入服务器的密钥(又名主机密钥)。

使用 EC2 控制台打开基于 Web 的终端到您的服务器并ssh-keygen显示主机密钥指纹。例如:

sudo ssh-keygen -l -f /etc/ssh/ssh_host_ed25519_key

有关详细信息,请参阅我的指南安全连接到 Amazon EC2 服务器

相关内容