ssh keys

ssh keys

配置多个ssh key:

1.ssh-keygen -t rsa -C "youremail@email.com" -f ~/.ssh/second
生成新的ssh key并命名为second。或者ssh-keygen -t rsa -C "youremail@email.com" 在询问时定义名称。

这个命令直接通过-f参数指定了密钥和公钥的文件名,比如-f ~/.ssh/second,其生产的密钥为~/.ssh/second,公钥为~/.ssh/second.pub.

2.远程主机添加公钥

把公钥文件中的内容追加到~/.ssh/authorized_keys文件的末尾。

1
cat ~/.ssh/second.pub

注意追加前authorized_keys文件的末尾需要有个换行符。

3.配置本地config文件

1
2
3
4
5
6
7
8
9
10
# Default github user(first@mail.com) 默认配置,一般可以省略
Host github.com
Hostname github.com
User git
Identityfile ~/.ssh/github
# second user(second@mail.com) 给一个新的Host称呼
Host second.github.com // 主机名字,不能重名
HostName github.com // 主机所在域名或IP
User git // 用户名称
IdentityFile C:/Users/username/.ssh/id_rsa_second // 私钥路径

其中User后面的值为你访问的git ssh地址的@之前的部分,比如:git@github.com:dongritengfei/beego.git的@前面是git,所以User后面的值为git。Host就是你的git仓库的域名或者IP。

4.测试链接情况

1
ssh -T git@second.github.com

ssh -T 用户名@Host。返回welcome,说明是可以的。

参考

多个密钥管理

多个 SSH KEY 的管理

linux管理多个ssh公钥密钥

配置密钥

配置ssh密钥认证自动登录

cat -n id_rsa.pub >> authorized_keys。加个换行符比较好