“修复”中间人

信息安全 验证 SSH 中间人 服务器
2021-08-25 13:27:27

我刚刚尝试通过 ssh 连接到服务器(通过 ssh 密钥进行身份验证),并获得了众所周知的消息WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!我是服务器管理员(但我并不是一个真正好的服务器管理员),并且不会更改此服务器上的任何内容。另一个同事可以访问此服务器(也可以通过 ssh 密钥进行身份验证)并且没有错误。另一台服务器可以连接到该服务器(通过 ssh 密钥进行身份验证)。

所以这只发生在我身上。我用 重新生成密钥ssh-keygen -R xxx.xxx.xxx.xxx,现在没有问题了。现在一切都“很好”,但我不知道是否存在安全问题。这样做,我解决了中间人的问题,还是我暴露了?如果是这样,我该怎么办?

换句话说,我的问题是:我应该恐慌吗?

另一个问题:问这种问题的地方合适吗?

PS:密钥类型曾经ssh-rsa是现在ecdsa-sha2-nistp256不知道为什么,还是ssh-rsa给同事的

1个回答

我用 ssh-keygen -R xxx.xxx.xxx.xxx

这不是一键再生!known_hosts这是从您的文件中删除密钥。如果存在中间人,攻击者现在可以通过您的服务器进行身份验证!

您应该从您的机器和您的同事那里检查服务器密钥,如果它为您提供相同的设置(从服务器获取所有公共 ssh 密钥的好工具是ssh-keyscan)。服务器有更多不同的密钥(和密钥类型)是正常的,但是在您删除文件之前不知道文件中的known_hosts内容,您就没有机会找出导致问题的原因。

如果您仍然拥有来自 的旧公钥known_hosts,在您删除它之前,请检查您的同事为该服务器存储了哪些密钥以及服务器上的实际密钥是什么(最好通过对服务器的物理访问,但也ssh-keyscan可以提供帮助)。如果它在某处有所不同,那么您应该进一步调查您的基础设施或您的机器和服务器,因为那样可能会出现一些真正的问题。