2

我正在使用 MacOS 并希望使用第二个 ssh 密钥进行 SSH/Git 登录。
我在 ~/.ssh/ 中有两个密钥对

id_rsa
id_rsa.pub
id_rsa.gitlab
id_rsa.gitlab.pub

id_rsa 和 id_rsa.pub 是较旧的密钥。这把钥匙工作正常。但是在需要第二个密钥的地方,我无法登录。它尝试第一个键并失败。

运行此命令ssh-add /Users/kevin/.ssh/id_rsa.gitlab会有所帮助。但是重新启动后,它不再起作用,我必须再次运行该命令。

每次重新启动后运行此命令是否有更好的解决方案?

4

1 回答 1

3

使用多个 ssh 密钥的方法是使用 ~/.ssh/config

Host serverKey1
   Hostname server1 # or ip address of server1
   User serverUser
   IdentityFile ~/.ssh/id_rsa

Host serverKey2
   Hostname server1 # or ip address of server1
   User serverUser
   IdentityFile ~/.ssh/id_rsa.gitlab 

然后,您需要为您的 ssh url 使用 scp 语法:

git clone serverKey1:/my/repo
git clone serverKey2:/my/repo

serverKey1并且serverKey2是您~/.ssh/config文件中的条目,以便将正确的服务器、用户和标识文件(公钥和私钥)传递给 ssh

如果这些私钥受密码保护,您仍然需要添加它们

您可以在此 atlassian 帮助页面查看更多信息:“为 GitBash、Mac OSX 和 Linux 配置多个 SSH 身份”。

于 2013-06-17T07:45:26.210 回答