ssh管理多个私钥

来源:互联网 发布:手机机顶盒遥控器软件 编辑:程序博客网 时间:2024/06/07 05:36

我的上一篇博文中有一个ssh管理多个私钥的方法,因为感觉比较重要,所以我单独写成一篇文章方便以后查阅。

之前我在连接云服务器的时候,收到git的私钥的影响,一直连接不上,走了许多弯路,上网找了好多资料,在这里整理了一个行之有效的方法。

首先说说环境,这里是基于linux(ubuntu)的多个私钥管理方法。我们假设我们现在有一台云服务器,需要用ssh连接云服务器。同时我们还要连接github的服务器,也需要用ssh来加密。现在在~/.ssh文件夹中有两个私钥文件,分别服务器的私钥文件:cloud_rsa。git的私钥文件github_rsa。

首先我们要用以下命令注册这两个私钥:  

$ ssh-add ~/.ssh/cloud_rsa $ ssh-add ~/.ssh/github_rsa

如果执行ssh-add时提示”Could not open a connection to your authentication agent”,可以用以下命令:

$ ssh-agent bash

再执行ssh-add命令

#查询私钥列表$ ssh-add -l#清空私钥列表$ ssh-add -D

现在你就可以在~/.ssh目录下新建一个config文件,添加如下内容:

#云服务器Host         cloudHostName     填入云服务器ipPort         22PreferredAuthentications publickeyIdentityFile ~/.ssh/cloud_rsa# githubHost         github.comHostName     github.comPreferredAuthentications publickeyIdentityFile ~/.ssh/github_rsa

注意本地的~/.ssh文件权限不能过于暴露,如果报错,可以使用: 

$ sudo chmod 750 -R ~/.ssh

现在你可以通过,以下命令测试了:如果有欢迎字样则可以连上git

$ ssh -T git@github.com

也可以通过下面的命令直接连接上云服务器

$ ssh cloud
0 0