管理多个SSH KEY

[toc]

查看

ssh-add -l 
3072 SHA256:HpFoxdG1UO2U+gX3r45Z9SJrBjSZ/SlT3wH+BDCrQz0 youremail@example.com (RSA)
3072 SHA256:VlXQsANIE7eH/Gttk2vAsvQ6bMzZTvWSgMdu9U3ynog youremail@example.com(RSA)

生成不同名称的ssh密钥

# 其中gitlab,github, 和name 我主要用来区别是那个平台,自己可随意只要你能区分就行
ssh-keygen -t rsa -f ~/.ssh/id_rsa.gitlab.name -C "youremail@example.com"
ssh-keygen -t rsa -f ~/.ssh/id_rsa.github.name -C "youremail@example.com"

输入过程中可以不输入密码, 直接回车,懒人方式

会在 ~/.ssh/, 目录下生成两个文件, 一个是 id_rsa.gitlab.nameid_rsa.gitlab.name.pub 文件,

新建ssh配置文件

touch ~/.ssh/config

config的内容如下:

#github配置
# 别名 , 如果是你又多个github 账号, 需要配置多个sshkey 就用这个来区分的
# 多个github 账号 : Host username.github.com 

Host github.com
# 端口, 默认是22可以不写,如果自己搭建的服务器监听的是其他端口这个参数必须声明
Port 22
#  IP地址或者域名
Hostname github.com
# 下面可以直接写 `git` 当然你也可以写指定用户
user user@github.com
# 对应的私钥路径
IdentityFile ~/.ssh/id_rsa.github

#gitlab配置
# 别名 , 如果是你又多个github 账号, 需要配置多个sshkey 就用这个来区分的
# 多个github 账号 : Host username.github.com 
Host gitlab
# 端口, 默认是22可以不写,如果自己搭建的服务器监听的是其他端口这个参数必须声明
Port 22
# IP地址或者域名
Hostname gitlab.com
# 下面可以直接写 `git` 当然你也可以写指定用户
user user@gitlab.com
# 对应的私钥路径
IdentityFile ~/.ssh/id_rsa.gitlab

添加私钥

ssh-add ~/.ssh/id_rsa.gitlab
ssh-add ~/.ssh/id_rsa.github

配置公钥

# ~/.ssh/ 下面的.pub 文件全部都是公钥,需要上传到对应的平台, 流程略, 参考平台地址
cat ~/.ssh/xx.pub
将输出的结果复制

设置远程库的地址

git remote add origin git@github:test/test.git

测试


ssh -T git@github.com (域名)
ssh -T git@config文件中的别名 
ssh -T git@ip地址
# 终端输出
Hi Rosalindjuan! You've successfully authenticated, but GitHub does not provide shell access.
  • 如果终端有新添加的ssh-key 也需要在~/.ssh/config 配置

分别输入对应密钥的密码,测试成功。
记得在设置远程仓库地址的时候,修改对应的Host名称。建议把常用的git远程仓库设置为默认的密钥,生成默认密钥的命令如下:

只要Host不在config文件中,都是读取默认密钥。

ssh-keygen -t rsa -C "youremail@example.com"

删除

ssh-add -D

一个托管平台多个ssh key

配置

# 用户1
Host username1.github.com 
Hostname github.com
user git
IdentityFile ~/.ssh/id_rsa.username1.github

# 用户2
Host username2.github.com 
Hostname github.com
user git
IdentityFile ~/.ssh/id_rsa.username2.github

使用

注意下面的username1 和username2

用户1

# 举个 🌰
git clone git@username1.github.com:username/example.git
git remote set-url origin git@username1.github.com/username/example.git

用户2

# 举个 🌰
git clone git@username2.github.com:username/example.git
git remote set-url origin git@username2.github.com/username/example.git

测试

ssh-add -T git@username1.github.com
ssh-add -T git@username2.github.com
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容