如何验证远程服务器 SSH 密钥是否已改变?

如何验证远程服务器 SSH 密钥是否已改变?

多年来,我一直通过 SSH 客户端(如 WinSCP、OpenSSH)连接到 Linux/Unix 服务器。最近,我收到一条关于 的警告POTENTIAL SECURITY BREACH,内容是

服务器的主机密钥与 WinSCP 缓存中的密钥不匹配。这意味着服务器管理员更改了主机密钥……或者您已连接到另一台假装是服务器的计算机。

除了联系服务器管理员之外,我还能验证真正的 ssh 密钥是什么吗?

我曾使用手机通过蜂窝数据通过 SSH 访问同一台服务器,报告的主机密钥与我在 WinSCP 上看到的新密钥相同。我对中间人攻击了解不多,也不知道当我的计算机受到攻击或出现其他问题时是否会发生 MITMA。但我认为,由于我使用不同的路由(以太网与蜂窝)和操作系统访问服务器并获得了相同的密钥,因此服务器密钥很可能确实发生了变化。

这是一个合理的假设吗?

谢谢。

答案1

这是一个合理的假设吗?

使用两种不同的路线消灭攻击者接近你的在路线上,这给了你一些线索,但不能确保某处没有攻击者靠近服务器

通常,此警告是因为密钥确实已更改,但您无法确定。最简单的方法是与服务器管理员核实。最好他通过其他受信任的渠道(https 页面、SSHFP DNS 记录)发布密钥的指纹。

相关内容