Mac下一台电脑管理多个SSH KEY(转)
一、关于ssh是什么?
http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html
二、需求:
一台电脑上(Mac os)管理多个ssh key,可以任意切换,达到多用户(账号)使用不同ssh提交代码。
以下利用gerrit和github账号来做例子。
1)生成ssh key
ssh-keygen -t rsa -C "youremail@yourcompany.com"
若一路回车(密码可以不写),这样只会在~/.ssh/ 目录下生成 id_rsa 和 id_rsa.pub 两个文件。为了区分,我们在第一个回车后设置路径:
Enter file in which to save the key (/root/.ssh/id_rsa):~/.ssh/文件名
由此我们分别为gerrit和github生成对应的公钥和私钥,完成后的目录:
id_rsa_gerrit id_rsa_gerrit.pub id_rsa_github id_rsa_github.pub
2)设置ssh key的代理
1、 首先查看代理
ssh-add -l
若提示
Could not open a connection to your authentication agent.
则系统代理里没有任何key,执行如下操作
exec ssh-agent bash
若系统已经有ssh-key 代理 ,可以删除
ssh-add -D
2、 添加私钥
ssh-add ~/.ssh/id_rsa_gerrit ssh-add ~/.ssh/id_rsa_github
3、添加公钥
在对应的gerrit和github的ssh管理页面,添加对应的公钥(.pub 文件内容),保存到代码管理服务器。
4、添加和编辑配置文件config
在 ~/.ssh 目录下新建一个config文件
touch ~/.ssh/config
添加内容
# gerrit Host gerrit.xxxx.com HostName gerrit.xxxx.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_gerrit user gerrit # github Host github.com HostName github.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_github user git
当然也可以利用nano命令来创建和编辑
nano ~/.ssh/config
如此,ssh就会根据登陆的不同域,来读取对应的私钥文件
5、测试
ssh -T git@github.com
若出现
Hi XXX! You've successfully authenticated, but GitHub does not provide shell access.
则表示成功。
若出现
permission denied (publickey)
请检查github的ssh管理里添加的公钥是否正确。
6、其他
提交代码到gerrit失败,报错为
remote: ERROR: In commit xxxxxxxxxxxxxxxxxxxxxxxx remote: ERROR: committer email address aaaaa@aaa.com remote: ERROR: does not match your user account. remote: ERROR: remote: ERROR: The following addresses are currently registered: remote: ERROR: bbbbbbb@bbbbbb.com remote: ERROR: remote: ERROR: To register an email address, please visit: remote: ERROR: http://xxxx/xxxx
此报错并非你之前设置管理多个ssh出现问题,而是因为你当前git用户信息和你提交代码的服务器注册的用户信息不一致,即服务器检查了你的用户信息,进行了拒绝。
解决方法如下:
1.编辑.gitconfig
打开~/.gitconfig文件 将原来的 name = aaaaa email = aaaaa@aaa.com 改成你当前的 name = bbbbb email = bbbbb@ bbb.com
2.更改提交
git commit --amend --author 'bbbbb <bbbbb@ bbb.com>'
当然你也可以这样重新提交
git reset HEAD^ git add -A git commit -m “xxxx”
转自:http://blog.csdn.net/wwmusic/article/details/51027458
==>如有问题,请联系我:easonjim#163.com,或者下方发表评论。<==
Mac下一台电脑管理多个SSH KEY(转)相关推荐
- 不同网络下 一台电脑连接另一台电脑的mysql数据库
不同网络下 一台电脑连接另一台电脑的mysql数据库 首先确保,两台电脑都已经有了基本配置好的可用的mysql数据库 确定一台电脑为服务端,再服务端数据库下,先授权可被其他电脑访问: 如果MySQL是 ...
- Linux和Mac下的微信电脑版electronic-wechat(非官方)
2016-10-15更新 添加了3.3–为微信电脑版增加桌面启动器(快捷方式) CSDN GitHub Linux和Mac下的微信电脑版electronic-wechat(非官方) AderXCodi ...
- 同一局域网下多台电脑共享文件夹
同一局域网下两台电脑共享文件 1.关闭用户A电脑的网络防火墙 2.用户B在cmd中ping用户A的ipv4地址,查看是否可以ping通 3.用户A设置需要共享的文件夹(右键文件夹->属性-> ...
- 解决 Win10 局域网下两台电脑无法ping通: 无法访问目标主机
解决 Win10 局域网下两台电脑无法ping通: 无法访问目标主机 解决 Win10 局域网下两台电脑无法ping通: 无法访问目标主机 问题描述 第一步:启用规则 第二步:修改高级共享设置 第三步 ...
- Linux和Mac下的微信电脑版electronic-wechat 非官方
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 2016 ...
- windows10下两台电脑连接局域网怎么设置?
windows10下两台电脑连接局域网怎么设置? 参考链接:https://www.sohu.com/a/433679217_120006554 1. 如图所示,点击网络图标,出现网络相关,然后点击& ...
- 局域网下两台电脑ping不通
参考:https://blog.csdn.net/sinat_38718975/article/details/79866557 1.在同一网段内 假设电脑A.B均在192.168.0.X的网段内,两 ...
- 同一局域网下两台电脑传文件
自己买了新电脑,由于有大量文件需要传输,故搜索使用了这个方法. 第一步: 在控制面板-->网络和共享中心-->高级共享设置,打开后按如下设置. 问题:在启用网络发现时,点击"保存 ...
- 你的下一台电脑,可能没有主机
如今这个年代,由于电脑的飞速发展,电脑陪着也在跟着迅速的变化,如果不能及时的更新电脑相关的配着以及相关的软件系统,很多需要高配置的软件游戏根本无法运行,但是更换电脑的配置甚至说更换一台高配置的电脑所需 ...
最新文章
- 2013-7-12学习笔记
- 面向自动驾驶领域的3D点云目标检测方法汇总!(单模态+多模态/数据+代码)
- [转]关于正则表达式 g,m 参数的总结,为了回答“正则表达式(/[^0-9]/g,'')中的/g是什么意思?”...
- python如何读取excel数据-使用Python读取电子表格中的数据
- c语言程序构造数据类型问题,C语言程序设计课程课件之第四章简单构造数据类型.ppt...
- PHPStorm IDE 快捷键
- OpenGL Deferred Shading延迟阴影实例
- 精选6种制作酷炫动图的方法,收藏!
- C/C++函数学习(6)容器分类
- 基于webview的选择滑动控件(PC和wap版)
- 《设计模式系列》---备忘录模式
- [转载]ASP.NET-----Repeater数据控件的用法总结
- PAIP.通过公共网络传递秘密信息.txt (包括语音和文字)
- vuex - 学习日记
- 翻译: Transfer learning 迁移学习指南
- android applock 源码,AppLock | F-Droid - Free and Open Source Android App Repository
- Mac 输入法候选词框消失的解决方法
- android actionBar searchview 默认展开,并且放大镜图标在编辑框内。
- 北京中医药 计算机基础,北京中医药大学远程教育学院计算机基础2008辅导资料.doc...
- 2019中国智能制造十大发展趋势
热门文章
- 剑指offer例题——二维数组中的查找
- ELK系统之logstash问题:retrying failed action with response code: 429
- 通过“四大行为”对WCF的扩展[原理篇]
- 从茶叶蛋到互联网思维
- ASP.NET MVC 5 入门指南汇总
- Group by优化
- [PAL编程规范]SAP HANA PAL逻辑回归预测分析Logistic Regression编程规范LOGISTICREGRESSION(模型)...
- isNotNull与isNotEmpty区别
- 三层交换机原理解析(转)
- 更改系统的默认安装路径