一台电脑利用秘钥绑定多个ssh-key账号

image

因新环境利用内部邮箱创建git账账号管理项目,自己玩时有一个git账号。公司绑定gitLab,自己绑定了git.coding.net以及gitHub.com。从而两则在提交代码时发生了权限问题以及冲突。

本文在windows环境下配置Git多账号支持SSH-KEY。配置github.com、git.coding.net 、gitLab的SSH-KEY.

注意:因本已配置SSH-KEY,在此就不测试。发截图即可。

生成gitHub.com以及gitLab对应的私钥公钥(目录一般存在于C:\Users.ssh)

执行命令 ssh-keygen -t rsa -C email 创建github对应的sshkey,命名为id_rsa_github

image

gitHub.com与coding所用秘钥相同,id_rsa.pub属于gitLab,id_rsa_github属于gitHub,coding

image

把github对应的公钥和coding对应的公钥上传到服务器

分别在gitHub、coding、以及gitLab配置SSH-KEYS

在此举例gitHub如下:


image

在.ssh目录创建config文本文件并完成相关配置(最核心的地方)

每个账号单独配置一个Host,每个Host要取一个别名,每个Host主要配置HostName和IdentityFile、User属性即可

参数名 |描述
--|---|--
Host | 设想名称
HostName | 这个是真实的域名地址
IdentityFile | 这里是id_rsa的地址
PreferredAuthentications | 配置登录时用什么权限认证--可设为publickey,password publickey,keyboard-interactive等
User | 配置使用用户名

  # gitLab                                                                       
  Host [email protected]
  HostName [email protected]
  User chenwu
  IdentityFile ~/.ssh/id_rsa
  PreferredAuthentications publickey

  # 配置github.com
  Host github.com                 
  HostName github.com
  IdentityFile ~/.ssh/id_ras_gitHub
  PreferredAuthentications publickey
  User UpdateCw

  # 配置coding.net
  Host git.coding.net
  HostName git.coding.net
  IdentityFile ~/.ssh/id_ras_gitHub
  PreferredAuthentications publickey
  User UpdateMe

打开Git Bash客户端(管理员身份运行)执行测试命令测试是否配置成功(会自动在.ssh目录生成known_hosts文件把私钥配置进去)

image

学习心得

实践才是检验真理的源头

你可能感兴趣的:(一台电脑利用秘钥绑定多个ssh-key账号)