EC2 ssh-add 身份不 "stick"

EC2 ssh-add identity doesn't "stick"

我正在尝试将我的 Atlassian BitBucket 与 AWS EC2 连接起来。 我遵循了所有正确的步骤并且它正在工作。让我陷入困境的一件事是使用 eval ssh-agent -s 启动 ssh-agent,然后使用 ssh-add mybitbucket.pub 添加身份。

但是,问题是身份不会持续存在。这意味着如果重新登录,为了执行任何 git 操作,我必须再次执行 eval ssh-agent -s 和 ssh-add mybitbucket.pub。

[root@ip-10-0-1-112 主题]# ssh-add -l 代理人没有身份。

有任何推荐的解决方法吗?

到目前为止采取的步骤:

  1. 登录EC2
  2. 须藤苏 -
  3. ssh-keygen -t rsa
  4. 评估ssh-agent -s
  5. ssh-add mybitbucket.pub
  6. 在 BitBucket 的网络界面中复制密钥。

谢谢!

如果您只在 ssh 到实例时需要密钥,您可以设置 ssh-agent 转发。这意味着当您连接到指定的主机时,允许远程服务器使用本地 ssh-agent 中的密钥来连接到诸如 bitbucket 帐户之类的东西。

因此,您可以将 public 密钥添加到 BitBucket 帐户,这样您就可以通过 ssh 访问 BitBucket,因为您的本地计算机有您的私钥。然后,通过启用 ssh-agent 转发,当您 ssh 到 EC2 实例时,您允许该实例使用您的私钥访问 BitBucket,而无需将您的私钥存储在实例上。

这里有一篇关于如何设置的文章:

https://developer.github.com/guides/using-ssh-agent-forwarding/

简而言之,将以下内容添加到您的~/.ssh/config

Host example.com
  ForwardAgent yes

其中 example.com 是您的 AWS 实例的 public IP,或分配给它的 EIP 等