如何恢复已删除的 .ssh/known_host 条目?

如何恢复已删除的 .ssh/known_host 条目?

我创建了一个 droplet(基本上是一个服务器)来托管 DigitalOcean 上的一个网站。我使用计算机上的 openssh 连接到它,它运行良好。然后我决定删除 ~/.ssh/known_hosts 文件中 3 个条目中的第 3 个(我不确定为什么这样做)。

现在,当我尝试使用它连接到 droplet 时,ssh username@ipaddress它返回一个错误:username@ipaddress Permission denied (publickey)。有没有办法获取 known_hosts 文件的历史记录?也许我需要将我的公钥复制粘贴到某处?

结论:删除服务器并重新开始

答案1

现在,当我尝试使用 ssh username@ipaddress 连接到 droplet 时,它会返回错误:username@ipaddress 权限被拒绝(公钥)。有没有办法获取 known_hosts 文件的历史记录?也许我需要将我的公钥复制粘贴到某处?

known_hosts记录公众的历史服务器您的客户端已看到的密钥。它用于防止中间人攻击,因为这会导致远程公钥被更改。

因此,它用于向客户端验证服务器身份,而不是相反。如果您连接到未知主机,系统将提示您是否要信任该密钥。

known_hosts当您尝试使用密钥对进行连接时,删除行并不是导致权限被拒绝的原因。运行ssh -vvv user@host以获取有关连接被拒绝的原因的更多信息。

相关内容