有两台服务器:A和B
“A”运行 ssh-keygen,我们将私钥复制到“B”。两者具有相同的 id_rsa。
两台服务器都使用公共 ssh 密钥连接到服务器“C”。
问题:例如:服务器“A”可以解密服务器“B”与服务器“C”的 ssh 通信吗?
或者ssh具有完善的前向隐私,这使得ssh私钥的“泄露”不成问题?
答案1
看起来 PFS 是 SSH 中的一个功能,只要配置正确即可。所以我怀疑服务器 A 能否解密服务器 B 与服务器 C 的通信。但是,为了获得最大的安全性,最好为不同的客户端使用不同的密钥。如果您的密钥被泄露,请立即更改它,因为 PFS 对客户端身份验证没有帮助。
编辑: 还值得澄清的是,ssh-keygen
生成的密钥仅用于验证客户端(而不是实际加密会话),因此真正共享密钥只是允许客户端互相模仿。此外,PFS 与通信是否可以被解密无关(因为不同的客户端有不同的会话加密私钥,并且它们不知道服务器的私钥),它只是防止一个受感染的会话危及所有会话。
资料来源: https://utcc.utoronto.ca/~cks/space/blog/tech/SshForwardSecrecy
https://www.ietf.org/rfc/rfc4251.txt第 9.3.7 节指出 SSH 使用 DH 密钥交换,支持 PFS。
阅读本文以了解有关该过程如何运作的更多信息: 了解 SSH 加密和连接过程