一臺電腦存放多個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

相關文章
相關標籤/搜索