MAC多秘钥配置

137 阅读1分钟

背景:

工作中有时候需要添加两个以上的ssh-key。或者一个是公司的仓库,一个是Github。等这种场景就需要在本地配置两个不同的ssh-key并添加到代理中了。
默认配置第一个的ssh-key会在mac的 ~/.ssh 路径下生成 id_rsa_pubid_rsa两个文件。
如下图:

配置第二个的时候对于生成公钥和私钥的文件名就需要自定义了,否则就会覆盖上面的这两个默认文件名

配置

配置本地自定义key的名字

默认

cd 到本地.ssh目录下

cd ~/.ssh

生成一个ssh-key (后面填写的是你自己的邮箱账号)

ssh-keygen -t rsa -C "xxx@xxx.com" 

指定文件

ssh-keygen -t rsa -C '你的邮箱' -f ~/.ssh/tiger_id_rsa

输入自定义key的文件名,我这里加的是id_rsa_github,这个名字可以自定义

设置密码

根据提示输入密码,这里输入的密码是需要记住的,每次通过ssh方式拉代码都需要输入该密码,可以和gitlab的密码一样,也可以直接两次回车,不输入密码。我这里习惯直接回车,跳过这个输密码的阶段

成功生成ssh-key文件

生成并配置ssh的config文件

# gitlab
Host gitlab.com
HostName gitlab.com
User **
IdentityFile ~/.ssh/id_rsa

# github
Host github.com # 如公司内网对应的自定义github域名
HostName github.com
User ** # 仓库上的用户名,就是你每个仓库前面的前缀
IdentityFile ~/.ssh/id_rsa_github #指定的rsa文件路径

打印并复制公钥并添加到git网站

cat id_rsa_github.pub

验证

ssh -T git@github.com //执行成功打印  
// Hi XXX! You've successfully authenticated, but GITEE.COM does not provide shell access. 
// Welcome to GutHub, @XXXXX!