当第一次通过SSH与关键字连接到一个新的数字海洋液滴VM运行FreeBSD (per 本教程)时,我们会收到一条关于“无法建立主机blah的真实性”的信息。我知道这意味着我的计算机没有存储的指纹与之进行比较。因此,我的SSH客户端无法知道另一端的SSH服务器是否合法。
到目前为止,我们有两个选择:
亚马逊为他们的EC2实例提供了这样一种机制,以学习新服务器的指纹,如在此讨论。
数字海洋“液滴”虚拟机实例有这样一种机制来学习服务器的指纹吗?
发布于 2020-05-23 04:40:51
我知道这是个老问题,但我今天遇到了同样的问题,OP的重点是豆腐反安全模型,所以这里是我用来避免MITM风险的地方。
通常,正如问题所暗示的那样,真的没有办法可以在不与服务器管理员交谈的情况下验证密钥。然而..。
...if您可以访问服务器,您可以通过在公钥或私钥上运行ssh-keygen -lf来显示SSH密钥的指纹.
...and幸运的是,目前DigitalOcean提供了一个基于web的控制台直接登录到一个小滴,从而允许您访问有关的服务器。要到达控制台:
现在,由于DigitalOcean控制台希望您以root用户身份登录,您将需要一个根密码。因此,如果像我一样,在最初设置液滴时选择使用更安全的SSH身份验证,您可以避免一些挫折,从选择“重置根密码”开始。一旦DigitalOcean向您发送了新的根密码,请按照以下步骤进行:
root,密码是您设置的(或者是DigitalOcean发送给您的重置代码)。提示:控制台确实接受复制粘贴,这对于密码重置代码很有用.此外,对于重置,您将立即被要求确认重置代码,并选择一个新的密码,因此要做好准备。cd到您的液滴操作系统存储系统级SSH密钥的地方(对我来说,在Ubuntu18.04上,它在/etc/ssh下;我使用了在这个答案中找到的方法)。for file in *; do ssh-keygen -lf $file; done; (我将它作为1条线,标点如图所示,它对我起作用;不知道它是否是惯用的bash-script。如果它遇到非密钥或密码保护的私钥文件,它会注意到事实,并通过它们无害。它是从这个有用的网站略作修改后被解除的)如果有人知道一个更容易的方法,例如通过DigitalOcean通信获取指纹信息或仪表板的一些隐藏部分,请随时发布另一个答案,我会很高兴地支持它。
https://serverfault.com/questions/941915
复制相似问题