一台电脑配置多个ssh key连接不同的仓库时,需要配置ssh config,进行 key和host的绑定。
config文件的路径为:~/.ssh/config
Host git.bbdops.com
Hostname git.bbdops.com
IdentityFile ~/.ssh/id_rsa
PreferredAuthentications publickey
User panhui
Port 51668
Host github.com
Hostname github.com
IdentityFile ~/.ssh/id_rsa_github
PreferredAuthentications publickey
User git
如上的配置:一个git.bbdops.com,一个github.com。
Host
Host是可以随意起名的,但是需要注意的是,如果Host命名为github
而非github.com
,那么在测试key时需要ssh -T git@github
,而非git -T git@github.com
。Hostname
远程仓库实际的域名,或IP。IdentityFile
生成时命名的秘钥文件,我这里git.bbdops.com对应id_rsa
;github.com对应id_rsa_github
。Port
默认缺省是22
端口,像我们公司的gitlab端口更改过,就需要在这里特别指定一下,否则ssh会以22端口去连接而被server端拒绝。
关于ssh key配置更多详细内容可参考 https://blog.csdn.net/qq774232122/article/details/52138380