最近我們在代碼託管平臺上使用SSH的方式下拉代碼,通常是用一個ssh key來拉取所有託管平臺的代碼,如碼雲,GitHub、GitLab等,但是總用一個不是太好。會有安全風險,這就需要為每個託管平臺設置單獨的SSH-key
下面我們下簡單介紹一下如何創建多個SSH Key並且使用下拉代碼。
第一步、生成SSH-Key
Windows建議使用Git bash操作
Linux、mac用戶使用默認終端即可
- 生成第一個SSH-Key
<code>$ ssh-keygen -t rsa -C "你的郵箱” -f ~/.ssh/id_rsa_one/<code>
- 生成第二個SSH-Key
<code>$ ssh-keygen -t rsa -C ""你的郵箱”” -f ~/.ssh/id_rsa_two/<code>
創建完成之後 我們在.ssh的根目錄下可以看到文件
- WindowsSSH 目錄
<code>C:\\Users\\Administrator\\.ssh/<code>
- Linux、macSSH 目錄
<code>直接 cd ~/.ssh 即可進入/<code>
此時,.ssh目錄下應該有4個文件:id_rsa_one和idrsaone.pub,idrsatwo和id_rsa_two.pub
第二步、添加私鑰
在終端中執行
<code>ssh-add ~/.ssh/id_rsa_one
ssh-add ~/.ssh/id_rsa_two/<code>
如果執行ssh-add時提示 Could not open a connection to your authentication agent
可以先執行命令:
<code>ssh-agent bash/<code>
然後再重新運行ssh-add命令即可
添加成功會出現提示:
<code>Identity added 等字樣/<code>
第三步、查看私鑰列表是否存在
<code>ssh-add -l/<code>
當我們可以看到2條私鑰的時候就證明安裝成功了,別急還沒有完
第四步 修改配置文件config
若.ssh目錄(就是私鑰所在的文件夾)下無config文件,那麼創建
<code>touch config/<code>
<code>打開 config 文件 配置如下格式 這裡要注意 IdentityFile 後面對應的是 本地ssh key文件路徑/<code>
<code># gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_one
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_two/<code>
第五步 用ssh命令測試驗證
<code>ssh -T [email protected]
ssh -T [email protected]/<code>
驗證通過後即可愉快的clone代碼了
附:
清空私鑰列表
<code>$ ssh-add -D/<code>
http://1t.click/a83g
閱讀更多 我們都很努力著 的文章