管理多个ssh key

因为工作需要在电脑上生成和管理多个ssh key,而一般的教程帮助文档都是只有默认一个ssh key的方法。查了一些资料,完成了多个ssh key的管理,在此记录。
环境:mac osx10.10.3

生成SSH Key

生成ssh key的命令都是一样的

1
ssh-keygen -t rsa -C "youname@yourcompany.com"

但是在后面一步的提示输入文件名时要注意,不要用默认的,而是自己手动输入一个。比如github,则可以命名为id_rsa_github
201505120032

配置

服务端配置公钥过程略,
用cat命令查看刚才生成的秘钥pub,然后添加到服务器上即可。

1
cat ~/.ssh/id_rsa_github.pub

主要在于下面的私钥配置:
在~/.ssh目录下新建config文件

1
touch ~/.ssh/config

编辑config文件增加ssh key配置

1
2
3
4
5
6
7
8
9
# github
Host github.com
HostName github.com
IdentityFile ~/.ssh/id_rsa_github
# other ssh key
Host host
HostName host
IdentityFile ~/.ssh/<ssh-key-name>;

这样就完成了多个ssh key的配置,通过ssh访问不同的服务器会用不同的key去校验。