【Git】解决本地多个ssh key问题

xiaoxiao2021-02-28  111

解决本地多个ssh key问题

在设置github的时候,官方的说明文档要求备份当前的id_rsa,然后生成一份新的私钥用于github的登陆。如果真这样做,那么新的私钥是无法再继续登陆之前的机器的。

这个问题我们可以通过在~/.ssh目录下增加config文件来解决。

1. 第一步是配置git用户名和邮箱

git config user.name "用户名" git config user.email "邮箱"

2. 生成ssh key时同时指定保存的文件名

ssh-keygen -t rsa -f ~/.ssh/id_rsa.work -C "Key for Gitlab" ssh-keygen -t rsa -f ~/.ssh/id_rsa.sohu -C "Key for GitHub"

上面的id_rsa.sohu就是我们指定的文件名,这时~/.ssh目录下会多出id_rsa.sohu和id_rsa.sohu.pub两个文件,id_rsa.sohu.pub里保存的就是我们要使用的key。

3. 新增并配置config文件

添加config文件

如果config文件不存在,先添加;存在则直接修改

touch ~/.ssh/config

在config文件里添加如下内容(User表示你的用户名)

Host *.cloudscape.sohu.com IdentityFile ~/.ssh/id_rsa.sohu User lee Host github.com IdentityFile ~/.ssh/id_rsa.github User git

这样在登陆的时候,ssh会根据登陆不同的域来读取相应的私钥文件

4. 上传key到平台后台(省略)

5. 测试ssh key是否配置成功

ssh -T git@git.cloudscape.sohu.com

成功的话会显示:

Welcome to GitLab, username!

至此,本地便成功配置多个ssh key。日后如需添加,则安装上述配置生成key,并修改config文件即可。

转载请注明原文地址: https://www.6miu.com/read-30457.html

最新回复(0)