本地ssh key鏈接多個git帳號

在開發過程當中,可能須要在本地同時鏈接到多個gitlab帳戶,可是一個用戶的ssh key只能鏈接到一個git帳戶,這就須要建立多個ssh key,分別鏈接到不一樣的帳戶。具體步驟以下:
1.生成ssh key
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
 
  
默認生成的key爲 ~/.ssh/id_rsa,生成的兩個key名稱須要不一樣,這裏名稱設爲id_rsa_inner和id_rsa_outer。
命令執行完後會在~/.ssh/目錄下生成id_rsa_xxx和id_rsa_xxx.pub文件。
 
2.在git中添加ssh key
以github爲例,點擊settings —> SSH keys and GPG keys —> New SSH key,將id_rsa_outer文件中的內容添加進來。
同理,在內部git中添加id_rsa_inner ssh key。
 
3.本地配置
在~/.ssh/目錄下建立config文件,內容以下:
Host github.com                                                                  
     HostName github.com                                                          
     PreferredAuthentications publickey                                           
     IdentityFile ~/.ssh/id_rsa_outer                                            
                                                                                 
Host git.xxx.com                                                              
     HostName git.xxx.com                                                    
     PreferredAuthentications publickey                                           
     IdentityFile ~/.ssh/id_rsa_inner
 
其中Host爲別名,HostName爲git的地址。即將本地的兩個ssh key與不一樣的git倉庫綁定起來。
 
4. 測試鏈接
ssh -T git@github.com
 
若是出現如下內容,則表示鏈接成功。
Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.
 
 
注:能夠使用 ssh -vT git@github.com 開啓Debug,查看具體的鏈接過程。
相關文章
相關標籤/搜索