1. 生成本地密钥
生成github公私钥:
ssh-keygen -t rsa -C "email@gmail.com" -f ~/.ssh/id_rsa_github
生成公司gitlab公私钥:
ssh-keygen -t rsa -C "email@company.com" -f ~/.ssh/id_rsa_gitlab
如果提示ssh-keygen找不到:
ssh-keygen: command not found
先安装openssh-clients(CentOS):
yum -y install openssh-clients
生成结果如下图所示,以pub结尾的就是公钥文件:
2. 添加私钥
ssh-add ~/.ssh/id_rsa_github
ssh-add ~/.ssh/id_rsa_gitlab
如果系统提示:could not open a connection to your authentication agent
则需要执行一下命令:
ssh-agent bash
3. 添加配置文件
创建配置文件:
touch ~/.ssh/config
添加配置内容:
Host github
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_github
Host gitlab
HostName gitlab.com
User git
IdentityFile ~/.ssh/id_rsa_gitlab
4. 上传公钥
复制公钥,在Gitlab->Profile Settings->SSH-Keys上添加:
Windows:
clip < ~/.ssh/id_rsa_gitlab.pub
Mac:
pbcopy < ~/.ssh/id_rsa_gitlab.pub
GNU/Linux (requires xclip):
xclip -sel clip < ~/.ssh/id_rsa_gitlab.pub
5. 测试
ssh -T git@gitlab.com