目標#
3 個帳號對應 3 個 key,同時使用。
- Github-senlief - senlief.github
- Github-janzbff - janzbff.github
- Gitlab-moqi - moqi.gitlab
生成需要 3 個密鑰對#
$ ssh-keygen -t ecdsa -f ~/.ssh/senlief.github
$ ssh-keygen -t ecdsa -f ~/.ssh/janzbff.github
$ ssh-keygen -t ecdsa -f ~/.ssh/moqi.gitlab
在對應網站和帳號設置 3 個公共密鑰#
$ cat ~/.ssh/senlief.github.pub
$ cat ~/.ssh/janzbff.github.pub
$ cat ~/.ssh/moqi.gitlab.pub
設置 config
文件#
# 編輯config文件沒有就新建一個
$ vim ~/.ssh/config
示例如下#
# senlief.github
Host senlief.github
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/senlief.github
# janzbff.github
Host janzbff.github
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/janzbff.github
# moqi.gitlab
Host moqi.gitlab
HostName gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/moqi.github
測試#
# 用Host代替Hostname
$ ssh -T git@senlief.github
$ ssh -T git@janzbff.github
$ ssh -T git@moqi.gitlab
Enjoy!#
clone
只需要把 git 地址中的 Hostname 替換為 Host 即可。