Janz Blog

Janz Blog

ssh配置不同key以便于访问不同帐号

16
2023-10-31

目标

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即可。