Git多密钥配置

一、密钥生成

前往ssh存储路径

mac:cd  ~/.ssh  
win:cd C:\Users\用户名\.ssh
ssh-keygen -t rsa -C xx@xxxxx.com
Generating public/private ed25519 key pair.
Enter file in which to save the key (/Users/mac/.ssh/id_ed25519):  xxxx
Enter passphrase (empty for no passphrase): 
Enter same passphrase again:    

说明:一般git服务器登录页面后账号设置中 SSH Keys 管理都会说明如何添加导入
  • -t 指密钥的类型,gitee举例ed25519,github举例ed25519,coding举例rsa
  • -C 指注释 一般填写邮箱地址
  • Enter File 提示你输入要生成的密钥文件名
  • Enter passphrase 提示你要输入的密钥密码 (不输入默认确认默认为空,如果设置请记录后续会用到)
  • Enter same 提示确认输入密码

二、多个密钥管理

1、举例:创建分别为gitee、coding、github、bitbucket生成了四组密钥对

mac@Mac-Pro .ssh % ls
bitbucket   coding      config      gitee.pub   github.pub
bitbucket.pub   coding.pub  gitee       github

2、使用ssh-add 命令添加私钥

ssh-add ~/.ssh/gitee 
Identity added: /Users/mac/.ssh/gitee (xx@xxxxx.com)

ssh-add ~/.ssh/coding
Identity added: /Users/mac/.ssh/coding (xx@xxxxx.com)

ssh-add ~/.ssh/github
Identity added: /Users/mac/.ssh/github (xx@xxxxx.com)

ssh-add ~/.ssh/bitbucket
Identity added: /Users/mac/.ssh/bitbucket (xx@xxxxx.com)

说明: 如果在Enter passphrase 过程中设置了密码,此操作需要输入当时密码
添加成功会有对应提示:Identity added

3、检查已添加的私钥

ssh-add -l

mac@Mac-Pro .ssh % ssh-add -l
256 SHA256:a7qJ45YL+bLodKdOrxx2a28P9V2igRlPU  xx@xxxxx.com (ED25519)
3072 SHA256:KHunn5oxHSxxxxU8YkikEsyxxX/VpOY xx@xxxxx.com (RSA)
3072 SHA256:vu+3aiCKGDcTgRNyCxxxxxEbwQ6r15tQWRGg xx@xxxxx.com (RSA)
3072 SHA256:sMzqOy2nf3SHxxxxxxxx1gqmuCx9qSMLz0mk xx@xxxxx.com (RSA)

4、添加config文件

创建config文件

touch config

文件内容:

# gitee

Host gitee
HostName gitee.com
PreferredAuthentications publickey 
IdentityFile ~/.ssh/gitee
User yaod  

# github

Host github
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github
User yaod 

# coding

Host coding
HostName kitsudo-01.coding.net
PreferredAuthentications publickey 
IdentityFile ~/.ssh/coding
User yaod

# BitBucket

Host bucket
HostName 192.168.1.22
Port 7999
PreferredAuthentications publickey 
IdentityFile ~/.ssh/bucket
User yaod 

说明

- Host example                                  # 关键词 区分用 
- HostName example.com                        # 主机地址,如果是ip填写ip地址
- User root                                   # 用户名
- IdentityFile ~/.ssh/xxx                     # 认证文件,私钥
- PreferredAuthentications publickey          # 配置值为publickey,优先使用publickey身份验证
- Port 22                                      # 指定端口,如果ip加端口号,需要填写端口号

4、在相应服务端配置公钥

对应的xx.pub中copy公钥数据,粘贴到服务端Add key的位置。

5、连通测试 举例

ssh -T git@gitee.com             
The authenticity of host 'gitee.com (212.64.63.215)' can't be established.
ED25519 key fingerprint is SHA256:+ULzij2u99B9eWYFTw1Q4ErYG/aepHLbu96PAUCoV88.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'gitee.com' (ED25519) to the list of known hosts.
Hi xxx! You've successfully authenticated, but GITEE.COM does not provide shell access.


ssh -T git@e.coding.net          
CODING 提示: Hello xxx, You've connected to coding.net via SSH. This is a Personal Key.

有些服务可能会提示host主机不受信任,可添加信任列表解决,例如上面的212.64.63.215 gitee.com

sudo vim /etc/hosts 

212.64.63.215 gitee.com

带端口号的连通测试

ssh -p 7999  -T git@192.168.1.22

出现成功字样表明连通成功,可使用ssh地址操作远程仓库

三、参考文章

Git高级之配置多个SSH key
Mac下ssh登录测试报错“Could not resolve hostname xxx: nodename nor servname provided, or not known”的解决办法

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

推荐阅读更多精彩内容