配置多个ssh公钥,解决Key is already in use

背景:我已经有一个ssh公钥和私钥了,绑定的是公司的码云 但是绑定github是不允许的

所以我需要在生成一个公钥和私钥

第一步执行下面的命令, 至于如果生成ssh公钥点击这里

 ssh-keygen -t rsa -C 'your_email@example.com' -f ~/.ssh/id_rsa_github

然后一路回车 这里注意id_srs_github 的名字不能和你原来私钥的名字相同

第二步进入到ssh目录下

cd ./ssh 

ls 

你会看到有2个公钥和私钥 名字不一样

第三步 通过ssh-add添加密钥至ssh-agent中

ssh-add ~/.ssh/id_rsa_github

ssh-add ~/.ssh/id_rsa

这里的id_rsa_github 是新生成的私钥 id_rsa是我原来的私钥

第四步添加config配置文件分别映射不同的GitHub和码云的账户下

进入~/.ssh目录,新建config文件(服务器的话执行nano config),并添加下面的内容

# 个人的GitHub公钥
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
#指定特定的ssh私钥文件

# 公司的's gitee.com
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
# 指定特定的ssh私钥文件

检查配置是否成功执行下面命令

ssh -T git@github.com

成功会打印出

Hi jansh! You've successfully authenticated, but GitHub does not provide shell access.
原文地址:https://www.cnblogs.com/yu-hailong/p/11458782.html