git配置多个SSH-Key

  1. 生成ssh-key1
    ssh-keygen -t rsa -C 'xxxxx@company.com' -f ~/.ssh/gitee_id_rsa
    ~/.ssh/gitee_id_rsa.pub 即为公钥,添加进 gitee or github 即可

  2. 生成ssh-key2
    ssh-keygen -t rsa -C 'xxxxx@qq.com' -f ~/.ssh/github_id_rsa
    ~/.ssh/github_id_rsa.pub 即为公钥,添加进 gitee or github 即可

  3. 可以使用 ssh agent 添加密钥后进行测试,系统默认只读取id_rsa,为了让 ssh 识别新的密钥,使用 ssh-agent 手动添加私钥
    添加方法:

# 查看系统ssh-key代理
ssh-add -l
# Could not open a connection to your authentication agent.

# 如果发现上面的提示,说明系统代理里没有任何key,执行如下操作
exec ssh-agent bash

# 如果系统已经有ssh-key代理 ,执行下面的命令可以删除
ssh-agent -D

# 添加密钥到ssh-agent
ssh-add ~/.ssh/gitee_id_rsa
ssh-add ~/.ssh/github_id_rsa

如果 有 报错Could not open a connection to your authentication agent
先执行
eval ssh-agent``
再执行
ssh-add ~/.ssh/rsa
成功
ssh-add -l

注明: ssh-agent 代理的局限,仅限当前窗口有效,打开新的窗口则ssh连接失效

  1. 配置config文件
    4.1 编辑config文件
    在 .ssh 目录下创建一个 config 文本文件,每个账号配置一个Host节点,主要配置项说明:
Host         # 主机别名
HostName     # 服务器真实地址
IdentityFile # 私钥文件路径
PreferredAuthentications # 认证方式
User         # 用户名

config 文件内容:

# ~/.ssh/config 配置多个git的ssh-key

# 第二个SSH Key
Host gitee.com
HostName gitee.com
IdentityFile /c/Users/luox3/.ssh/gitee_id_rsa
PreferredAuthentications publickey

  1. 终端测试SSH Key
    通过终端测试SSH Key是否生效,分别输入以下命令:

ssh -T git@gitee.com

posted @ 2022-04-12 20:35  zoomingxu  阅读(194)  评论(0)    收藏  举报