多个 ssh 可以 的管理

1)一台机器多个 SSH KEY 的管理

应用场景:我希望在一台电脑上用两个账户,分别跟公司的 gitlab 协作,以及跟个人的 github 协作

解决方案:

  1. 生成新的ssh key并命名为second

    ssh-keygen -t rsa -C "[email protected]" -f ~/.ssh/second

  2. 此时~/.ssh目录,会发现多了second公钥和私钥

    id_rsa id_rsa.pub known_hosts list.txt second second.pub

  3. 远程主机添加公钥

  4. ~/.ssh/目录下新建 config 文件,用于配置各个公私钥对应的主机

     # Default github user([email protected])  默认配置,一般可以省略
     Host github.com
     Hostname github.com
     User git
     Identityfile ~/.ssh/github
     # second user([email protected])  给一个新的 Host 称呼
     Host second.github.com  // 主机名字,不能重名
     HostName github.com   // 主机所在域名或IP
     User git  // 用户名称
     IdentityFile C:/Users/username/.ssh/id_rsa_second  // 私钥路径
    

    注意:

    • 每个邮箱能配置一个公私钥,邮箱是一个重要的身份识别标志
    • 几个主机的命名不能相同;
    • 私钥路径也可以写为 ~/.ssh/...;
    • 如有需要还可以添加Port:xxxx端口配置。
  5. 测试连接情况 $ ssh -T [email protected]

  6. 开始使用

    • 场景 1:使用新的公私钥进行克隆项目

      git clone git@second.github.com:username/repo.git

      注意此时要把原来的github.com配置成你定义的second.github.com

    • 场景 2:在此之前已经克隆项目,之后才添加新的公私钥,要为仓库设置使用新的公私钥进行 push 操作

      修改仓库的配置文件:.git/config

      [remote "origin"]
      url = [email protected]:itmyline/blog.git
      

2)一个 github 账户管理多个 ssh key

应用场景:我有两个电脑,分别有两个ssh key 希望向同一个平台协作

解决方案:

GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。

results matching ""

    No results matching ""