文档章节

git 配置多个SSH-Key

stefanzhlg
 stefanzhlg
发布于 2015/11/12 15:15
字数 397
阅读 23374
收藏 213

     我们在日常工作中会遇到公司有个gitlab,还有些自己的一些项目放在github上。这样就导致我们要配置不同的ssh-key对应不同的环境。下面我们来看看具体的操作:

 

1,生成一个公司用的SSH-Key     

$ ssh-keygen -t rsa -C "youremail@yourcompany.com” -f ~/.ssh/id-rsa

 

在~/.ssh/目录会生成id-rsa和id-rsa.pub私钥和公钥。 我们将id-rsa.pub中的内容粘帖到公司gitlab服务器的SSH-key的配置中。

 

2,生成一个github用的SSH-Key

$ ssh-keygen -t rsa -C "youremail@your.com” -f ~/.ssh/github-rsa

在~/.ssh/目录会生成github-rsa和github-rsa.pub私钥和公钥。 我们将github-rsa.pub中的内容粘帖到github服务器的SSH-key的配置中。

 

3,添加私钥

$ ssh-add ~/.ssh/id_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 -l
# 可以通过 ssh-add -D 来清空私钥列表
$ ssh-add -D

 

 

4,修改配置文件

在 ~/.ssh 目录下新建一个config文件

touch config

添加内容:

# gitlab
Host gitlab.com
    HostName gitlab.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa
# github
Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github_rsa

5,目录结构

6,测试

$ ssh -T git@github.com

输出

Hi stefzhlg! You've successfully authenticated, but GitHub does not provide shell access.

就表示成功的连上github了.也可以试试链接公司的gitlab.

 

 

 

© 著作权归作者所有

stefanzhlg

stefanzhlg

粉丝 67
博文 110
码字总数 85559
作品 4
浦东
程序员
私信 提问
加载中

评论(16)

k
kyzgsky
一台本机配置了2个github账号,key也是生成了2对,可是总是默认读取第一个配置 求解。因为都是github上面的项目,所以 config 文件配置的hostname 都是 github.com 但是 host 一个配置的是git 另一个配置的是git1
h
hard_name
非常感谢,网上的好多教程没有添加私钥这步,结果怎么都找不到对应的私钥。总是出现Permission denied(public key)。利用$ ssh -v git@github.com 才发现找不到对应的私钥,所以匹配不上。
stefanzhlg
stefanzhlg 博主

引用来自“blessjq”的评论

3,添加私钥
这里的私钥是什么东西,因为按照您前两个步骤,已经生成了两对私钥和公钥,怎么到了这一步还需要再增加私钥?这个私钥和上面两步中生成的私钥有啥区别,是干嘛用的?id_rsa_github这个东西是啥,你也没说
不好意思,文中有些小问题(秘钥的名称没有统一:id_rsa_github应改成github_rsa),已修正。
私钥是用于解密服务器端传过来的加密串的。第三部的意义:参考https://segmentfault.com/q/1010000000835302
blessjq
blessjq
3,添加私钥
这里的私钥是什么东西,因为按照您前两个步骤,已经生成了两对私钥和公钥,怎么到了这一步还需要再增加私钥?这个私钥和上面两步中生成的私钥有啥区别,是干嘛用的?id_rsa_github这个东西是啥,你也没说
stefanzhlg
stefanzhlg 博主

引用来自“庄生dream”的评论

开源中国的码云的Host 和 HostName ,填什么?32

http://git.oschina.net/oschina/git-osc/wikis/%E5%B8%AE%E5%8A%A9#ssh-keys
庄生dream
庄生dream
开源中国的码云的Host 和 HostName ,填什么?32
单行道
单行道
大赞,用的上😄
雪梦科技
雪梦科技
很不错的教程,感谢。
西南茂
西南茂
就生成一对密钥不就够用了吗,把公钥放服务器,私钥在自己机器,git项目里面指定remote就可以啊
cisiqo
cisiqo
github上也有这个,我已经开始使用了 https://gist.github.com/jexchan/2351996
解决git本地多ssh key的问题

最近手上一个项目需要使用到一台服务器作为专用的部署服务器,在实施过程中遇到了一些问题,具体如下: 1. 服务器的ssh默认端口和项目git仓库的ssh端口不一致2. 部署需要使用项目提供的ssh k...

aaao
2016/03/21
0
0
GitHub账户设置多个SSH Keys

博客原文传送门:GitHub账户设置多个SSH Keys 针对不同的git代码库配置不同的的git name, email, 以及相应的ssh公私钥。满足同一台电脑或是同一个git 账户的不同用户提交。尤其适用于在公用电...

willheng
2017/11/30
0
0
Git - 生成ssh key步骤以及如何clone所有的远程分支

这里以配置github的ssh key为例: 1. 配置git用户名和邮箱 设置Git的user name和email: $ git config --global user.name "用户名" $ git config --global user.email "邮箱" 在config后加上......

君满楼001
2017/11/30
0
0
多账号配置SSH

博客地址 : 多账号配置SSH 简书地址 : 多账号配置SSH 快捷说明 熟练者忘记查询, 详细解析在下面模块 背景介绍 为什么要配置SSH 作为一个正常上班搬砖程序猿,Git 应该是目前主流的代码管理工...

__小___东邪___
2017/12/15
0
0
github管理多个key

1、在github上创建仓库(自己上网搜) 2、在本地创建ssh key 注意: 不要三个回车就过去了,要起一个名字。 不填路径直接起一个名字就是生成在当前目录下。 3、把生成的密匙test和test.pub剪...

Shawn1in
2016/11/26
37
0

没有更多内容

加载失败,请刷新页面

加载更多

设计模式之访问者模式

定义 Represent an operation to be performed on the elements of an object structure. Visitor lets you define a new operation without changing the classes of the elements on which......

陈年之后是青葱
昨天
11
0
PhotoShop 高级应用 : 分层云彩 - 简单闪电效果

1.创建黑白渐水平渐变图层 2.选择滤镜选项卡: 渲染--->分层云彩功能 3.将滤镜-云彩效果渲染后的图层进行反相操作 【此时出现闪电效果】 6.调整色阶,使得闪电效果更明显 7.创建剪贴蒙版:色...

东方墨天
昨天
12
0
三种实现Android主界面Tab的方式

三种实现Android主界面Tab的方式 https://www.cnblogs.com/caobotao/p/5103673.html

shzwork
昨天
13
0
java8-Optional类

背景 NPE问题,100%的Java程序员都碰到,并且曾经是心中的痛。 1965年英国TonyHoare引入了Null引用,后续的设计语言包括Java都保持了这种设计。 一个例子 业务模型 Person 有车一族, 有Car...

春天springcarter
昨天
13
0
py 登录github时token以及cookie的应用

import requestsfrom bs4 import BeautifulSoup## 获取tokenr1 = requests.get('https://github.com/login')s1 = BeautifulSoup(r1.text,'html.parser')token = s1.find(name='input',......

子枫Eric
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部