一台电脑存放多个git帐户的多个rsa秘钥

如何在一个电脑上存储多个git帐户生成的多份rsa秘钥,实现多个帐户同时使用配置的状况?今天,不幸又再次遇到这个问题。php

问题描述

公司最近在开发一款开源产品,项目被托管在github上,可是公司内部一直使用的是gitlab,并且早就配了gitlab的rsa秘钥。以前的作法是从新生成一个github秘钥,覆盖掉以前的gitlab秘钥。每次切换过程就意味每次须要从新生成一份秘钥。只有两个帐户的状况还能勉强接受下,某一天再想搞个小号刷副本时,这酸爽真的无法形容。css

解决办法

今天总算想了一个办法,解决方式以下:
首先,使用终端ssh命令生成第一个默认的rsa秘钥。
ssh-keygen -t rsa -C "$your_email"
一直回车下去。生成结果如图所示:html


默认状况下,这个rsa秘钥是在你我的帐户的.ssh目录下面,存在一个id_rsa私钥文件和id_rsa.pub公钥文件。而后复制公钥文件中的字符串。

进入github帐户setting选项SSH and GPG keys,把复制的公钥字符串粘贴里面的key输入框中,保存退出便可。
经过终端ssh测试可知,出现以下提示内容,说明秘钥已经生成且添加成功。java


此时,咱们生成的id_rsa秘钥是默认的。接着以一样的方式建立第二个秘钥,再建立秘钥的过程当中会出现以下提示:

咱们须要从新命名一个文件和默认id_rsa秘钥文件区分开,生成以后发现.ssh目录下面存在两份秘钥,如图所示:node


而后咱们在.ssh目录下面新建config文件,文件内容以下:nginx


每份秘钥和对应的git网址对应。而后清空known_hosts文件内容。至此,大功告成。
咱们能够经过ssh命令验证结果。git

相关文章
相关标签/搜索