同个电脑多个ssh key的配置使用

来源:互联网 发布:tina仿真软件下载 编辑:程序博客网 时间:2024/04/29 19:48

原文转自:http://blog.csdn.net/u010344269/article/details/46884617

同个电脑多个ssh key的配置使用


引言:很多时候我们用代码管理服务器时的选择有很多,通常我们都会使用不止一个服务器账号的。比如我比较喜欢github的开源功能,但是它的私有项目是要钱的,所以我也用开源中国的gitoschina的服务器(因为它的private项目不要钱的哦!)


1、准备

用两个不同Git服务提账号来实现,分别为github和开源中国的gitoschina的。

2、生成ssh key

1. 生成ssh key的命令我想大家都应该懂:

ssh-keygen -t rsa -C "youremail@email.com"
  • 1
  • 1

当我们回车时,我想有的人是直接三个回车的吧,当然三个回车是没有问题的,但是我们要了解这三个回车是什么意思。 
第一个回车:

 Enter file in which to save the key </c/Users/JIYI/.ssh/id_rsa>
  • 1
  • 1

此处的回车代表将密钥默认存储在C盘/Users/用户名/.ssh的文件夹下 
第二个回车与第三个回车:

Enter passphrase<empty for no passphrase>:Enter same passphrase again:
  • 1
  • 2
  • 1
  • 2

这个是为了设置提交项目的密码,为了避免其他人用你的电脑修改你的项目时提交的,通常直接回车,就代表不需要密码,我也建议这样做,可以避免多次输入密码,省时省力。

2、那我们该具体怎么做呢?

因为有两个账号,如果生成密钥时都是三个回车则后执行的会替换先执行的。既然第一个回车的意思是保存地址,那我们就不能直接回车了,而是输入保存地址就可以了。 
步骤如下: 
1. 正常生成第一个密钥

ssh-keygen -t rsa -C "mygitoschina@qq.com"
  • 1
  • 1

连续三个回车,将oschina的密钥默认保存 
2. 生成第二个密钥 
先打开C盘/Users/用户名/.ssh目录,在里面新建github文件夹

ssh-keygen -t rsa -C "mygithub@gmail.com"
  • 1
  • 1

出现Enter file in which to save the key时输入

/c/Users/用户名/.ssh/github/id_rsa
  • 1
  • 1

也就是将密钥保存在github文件夹下 
生成第二个密钥 
这样生成密钥完成

3、创建config文件

1、创建文件并配置

C盘/Users/用户名/.ssh目录下新建config文件,该文件没有后缀名的,这是为了配置映射功能的,在里面填入下面代码:

#github的配置Host github.com    HostName github.com    IdentityFile ~/.ssh/github/id_rsa    User git
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

主要是HostNameIdentityFile要改,HostName是服务器域名,IdentityFile 就是密钥的地址了上面的就是刚刚我们新建github下的生成密钥,那个~符号代表当前目录,windows下默认就是C盘/Users/用户名,所以再加上后面的地址就是我们上面所写的C盘/Users/用户名/.ssh/github/id_rsa

2、当然这里面也可以写多个配置的:

#github配置Host github.com    HostName github.com    IdentityFile ~/.ssh/github/id_rsa    User git#gitoschina的配置Host git.oschina.net    HostName git.oschina.net    IdentityFile ~/.ssh/id_rsa    User git
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

4、测试

1、测试github的:

ssh -t git@github.com
  • 1
  • 1

返回成功信息:

Hi youname! You've successfully authenticated, but Github does not provide shell access.
  • 1
  • 1

github测试成功 
当然有的时候会问你是否授权连接,选y即可。

2、测试开源中国的gitoschina

ssh -T git@git.oschina.net
  • 1
  • 1

返回成功信息为:

Welcome to Git@OSC, yourname!
  • 1
  • 1

gitoschina成功 
这样在项目中就可以用多个git服务器的ssh了。


0 0
原创粉丝点击