【问题标题】:SSH - do I have multiple keys for different purposes or one key that represents my system?SSH - 我是否有多个用于不同目的的密钥或一个代表我的系统的密钥?
【发布时间】:2015-05-17 03:27:24
【问题描述】:

Ubuntu 14.04

我对此不太确定,如果我查看 ~/.ssh/ 的内容,其中有一些文件,我正要设置一个用于 BitBucket 的密钥。

我不确定我是否应该拥有多个用于不同目的的密钥,或者我是否应该拥有一个用于很多事情来识别我的密钥。

干杯

【问题讨论】:

  • 另外请注意,如果您经常通过系统 ssh,“ssh -A”允许集中保存密钥。
  • ~/.ssh 中的 ssh 密钥代表您个人,而不是您的系统。

标签: linux git ssh bitbucket ssh-keys


【解决方案1】:

无论如何,您首先需要创建一对私有和公共 ssh 密钥。可以通过在终端执行ssh-keygen命令来完成。

简而言之,第三方服务器和服务(如 BitBucket)使用公钥 (id_rsa.pub) 来识别您的身份。所以你需要向他们提供这些信息。例如,将公钥添加到 BitBucket 帐户设置。

多个服务器和服务可以使用相同的私钥/公钥对来同时识别您的身份,因此通常您不需要创建多个密钥对。

【讨论】:

  • “您需要的第一件事是创建一对私有和公共 ssh 密钥”我已经在 ~/.ssh 中拥有 id_rsaid_rsa.pub,因为我已经在我的树莓派中使用了 ssh pi 之前,我很困惑是否需要为 bitbucket 制作另一个,或者也为它们制作相同的 id_rsa.pub。听起来(从您的帖子中)好像我可以重复使用此密钥,对吗?谢谢
  • 你肯定可以重复使用它
  • 另外,如果您有任何进一步的顾虑 - 您应该检查您想要的软件(它是关于 git,正如我从您的问题中理解的那样)使用相同的 ssh-keys 对。只需指定您对 BitBucket 的公钥,然后尝试执行一些 git clone/push/pull 命令并查看授权是否正常工作。
  • 感谢@Andrey,是的,我已经添加了密钥,但是当我尝试在 mo 上推送东西时,仍然会提示我输入密码,呵呵。
  • @user3130747:是提示您输入帐户密码还是密钥密码?如果是后者,您需要使用ssh-agent 来保存您的私钥(本地),这样您就可以在不输入密码或密码的情况下登录。
【解决方案2】:

我每个工作站使用一个密钥。在每个工作站上,我生成一个新的公钥/私钥对,然后将其添加到我需要通过 SSH 与之交互的所有机器的授权密钥文件(或 GitHub/Bitbucket 帐户)中。

这样,如果我的机器丢失、被盗或我需要更换硬盘驱动器,我可以通过从所有服务中删除它的公钥来取消对那台机器的授权,而无需轮换我的密钥在所有机器上。

我从未找到在给定工作站上为每个服务创建单独密钥对的充分理由;这只会增加管理开销,而没有太多切实的好处。如果您非常注重隐私,并且不希望单独的服务来关联您的密钥,您可能会这样做,但如果您有这种隐私意识,您应该已经通过 Tor 访问所有内容,并且可能为每个帐户设置完全独立的帐户以避免泄漏任何信息。

【讨论】:

  • 感谢@Brian,听起来不错。不过,我设法把自己搞糊涂了,我不确定是否必须为每项服务制作一个新服务或重复使用相同的服务
猜你喜欢
  • 2020-12-14
  • 2017-09-25
  • 1970-01-01
  • 1970-01-01
  • 2014-02-04
  • 2012-01-25
  • 1970-01-01
  • 1970-01-01
  • 2018-06-19
相关资源
最近更新 更多