MacOS终端:如何使用第二个ssh密钥?

时间:2013-06-17 07:40:52

标签: macos git ssh terminal

我正在使用MacOS,并希望使用第二个ssh-key进行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会有所帮助。但重新启动后,它不再工作了,我必须再次运行命令。

有没有比每次重启后运行此命令更好的解决方案?

1 个答案:

答案 0 :(得分:2)

使用多个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

serverKey1serverKey2~/.ssh/config文件中的条目,以便将正确的服务器,用户和身份文件(公钥和私钥)传递给ssh

如果这些私钥受密码保护,you would still need to add them

您可以在此atlassian帮助页面上看到更多内容:“Configure multiple SSH identities for GitBash, Mac OSX, & Linux”。