如何在我的 centos 服务器上设置多个 id_rsa.pub?

如何在我的 centos 服务器上设置多个 id_rsa.pub?

我有一台装有 CentOS 6.6 版(最终版)的旧服务器,git 版本为 git 版本 1.7.1

我需要拉取不同的 Github 项目。通过一个通用的身份验证系统,多个人可以共享对服务器的访问权限。

考虑到上述环境无法改变或升级。

我有以下问题。我已经成功连接到 git repo 并通过定义 Deploykey 来处理它,这是我实际定义的唯一键:

  /home/dev-user/.ssh/id_rsa.pub

现在我尝试添加相同的部署密钥来管理不同的 github 存储库。但是 github 给出了错误,密钥已被使用。

所以我正在考虑创建多个 id_rsa_reponame.pub ssh 密钥来将我的 github repo(主要)拉到该服务器。

在这种情况下,这可以被视为最佳实践吗? ID 是...如何创建不同的命名公钥以用作 github repo 上的部署密钥?

欢迎采用任何其他方法解决此问题。

谢谢

更新

我已经在另一台开发机器上测试了以下内容。在这台机器上,我已经有一个

 /home/username/id_rsa.pub

已定义为 GitHub repo 上的部署密钥并正常工作。

然后我发出命令:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

当出现提示时,我给密钥赋予了不同的名称,例如:

 /home/username/id_rsa_mytest.pub

然后我复制了该文件的内容并将其设置为另一个 repo 的部署密钥。

我尝试 git 克隆:

  git clone [email protected]:githubAccount/myrepo.it

但得到:

fatal: Could not read from remote repository.

Please make sure you have the correct access rights

我相信本地机器不会自动尝试使用我的所有公钥通过 ssh 连接到 github。

我怎样才能实现这个目标?

答案1

我找到了我所寻找的解决方案;感谢以下资源:

https://medium.com/@dustinfarris/managing-multiple-github-deploy-keys-on-a-single-server-f81f8f23e473

这篇文章中有一点不太直接/清晰。这句话是:

 Host github-repo2

在配置文件中

  ~/.ssh/config

就像是随后发出命令时使用的自定义名称:

 git clone github-repo2:yourgithubuser/repo2

其实“主机”这个术语并不是那么友好,无法让你理解他在配置中的作用。(它是使用特定标识文件作为用户名@主机名的引用)

相关内容