配置多个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.