security - 对不同组使用 ssh key 对的最佳实践?

标签 security ssh public-key

我正在与学校以外的一家公司合作,他们需要我的公共(public) ssh key 。

我已经生成了用于 github 的公共(public) ssh key 。我前段时间设置了这个,如果我打开 id_rsa.pub 文件,我看到里面嵌入了我的学校电子邮件地址。

现在我想知道在与您合作的每家公司重复使用这个 key 是否是典型的做法,或者您是否为每家公司生成一个新 key 。我想我有几个考虑:

  • 如果我对每家公司使用相同的公钥,并且我的私钥被泄露,我需要给每家公司一个新的公钥。
  • 我的学校电子邮件地址出现在我当前的公钥中。我不确定为什么会这样,但我认为您的电子邮件与 key 没有任何关系(或者是吗?)。
  • 如果我确实为与我合作的每家公司生成了不同的 key 对,我不确定在与不同公司合作时我会如何在它们之间切换(比如通过 github)。

  • 我的理解在这里有点薄弱,任何澄清都会非常有帮助。

    谢谢

    最佳答案

    您的问题已在 security.stackexchange.com 上提出(并且得到了很好的回答!):https://security.stackexchange.com/questions/10203/reusing-private-public-keys

    总而言之,是的,您可以为多个帐户重复使用您的公钥,但您首先考虑的是有点偏低;如果您的私钥被泄露,您的所有帐户都将受到威胁 .如果各个帐户对安全性有不同的期望,您可能需要考虑使用不同的 key 对。

    与您的 key 关联的电子邮件地址用于识别目的。它与 key 有关,因为它在 key 中,但它不影响 key 的功能。

    如果您确实生成了不同的 key 对,您可以通过 ~/.ssh/config 将不同的 key 绑定(bind)到不同的主机。操作说明应该很容易找到。

    关于security - 对不同组使用 ssh key 对的最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24563677/

    相关文章:

    php - 服务器和 SSL API 安全

    c++ - Win32 中任何易于使用的散列函数来散列 ASCII 字符串?

    git - 部署 heroku 代码时权限被拒绝(公钥)。致命的 : The remote end hung up unexpectedly

    security - 如何在 Azure 门户中配置 session 超时?

    php - 此脚本的安全性

    php - 从远程服务器从phpstorm中的键盘快捷方式运行脚本

    python |英雄库 |如何通过ssh访问包

    mysql - 在继续脚本之前等待 SSH 隧道

    python+加密: Encrypting session key using public key

    linux - Amazon Linux AMI ec2 实例权限被拒绝(公钥)