为什么需要在 SSH 之后在远程主机上插入 RSA 密钥的密码?

为什么需要在 SSH 之后在远程主机上插入 RSA 密钥的密码?

来自主机我可以通过 SSH 访问其他各种主机(光盘)无需使用任何密码,因为我将公钥放入相应的authorized_keys 文件中(在主机C 和D 中)。

来自主机A我可以 SSH 主机(通过密码验证)。但是,一旦我登录到主机每次都需要验证我的密钥当我连接到 C 和 D 时(即使原则上不应该是这种情况)。

总而言之,如果我直接连接到主机 B(例如办公室),我不需要输入任何密码即可连接到 C 或 D。如果我连接到 A(例如家庭),然后从 AI 连接到 B,一旦我进入BI 需要密码才能连接到 D 或 C。我可以通过将密码添加到 ssh-agent(使用 ssh-add)来部分解决问题,但每次我在 BI 中打开新的 shell 时都需要再次执行此操作。

更新

感谢有用的评论,事实证明问题如下。当我直接连接到 B 时,有一个密钥环程序正在运行(在我的具体情况下,这是海马)。因此所有加密私钥的密码都可以自动使用。当我从 A 连接到 B 时,这种情况不会发生。由于一个神秘的原因,即使我从 A 到 B 启动远程会话(vnc / remmina),程序 seahorse 在 B 中也没有激活,因此我必须一遍又一遍地手动插入密码。

我安装了钥匙链问题已经解决了。

但是,我不确定是否值得加密仅用于与特定服务器的 SSH 连接的私钥。不加密私钥是否存在任何具体的安全风险?原则上,如果一个人能够访问私钥,他/她也能够使用存储在钥匙串中的密码......所以看来加密私钥可能没有太大的优势。

答案1

您通过使用keychain来存储 SSH 密钥的密码短语解决了部分问题。至于你的另一个问题:

但是,我不确定是否值得加密仅用于与特定服务器的 ssh 连接的私钥。不加密私钥是否存在任何具体的安全风险?原则上,如果一个人能够访问私钥,他/她也能够使用存储在钥匙串中的密码......所以看来加密私钥可能没有太大的优势

这并不是说您的私钥未加密,而是它们没有受到密码保护。因此,任何能够访问您的主目录目录的人.ssh都可以毫无问题地控制您的 SSH 密钥。

如果您愿意将这些密钥留在您可以完全控制的系统上,那么我认为将它们保留为无密码短语没有问题。我还建议您生成一组不同的密钥,您可以将其保留在诸如此类的辅助系统上,甚至可以为该服务器生成一组唯一的密钥,这样,如果您发现它已被泄露,您可以完全放弃它,而不会出现太大问题。

至于用于管理您的密钥,我认为如果您用于管理 SSH 密钥,那么keychain在 SSH 密钥上使用密码短语不会获得太多好处,除非它只会在您使用它们时存储它们。如果您不经常使用密钥,并且在完成后勤于清理,那么密码短语将是一个优势,但在我看来,它只是一个小密码。keychainkeychainkeychain

相关内容