最近我们在代码托管平台上使用 SSH 的方式下拉代码, 通常是用一个 SSH key 来拉取所有托管平台的代码, 如码云, GitHub,GitLab 等, 但是总用一个不是太好. 会有安全风险, 这就需要为每个托管平台设置单独的 SSH-key
下面我们下简单介绍一下如何创建多个 SSH Key 并且使用下拉代码.
第一步, 生成 SSH-Key
Windows 建议使用 Git bash 操作
Linux,Mac 用户使用默认终端即可
生成第一个 SSH-Key
$ SSH-keygen -t rsa -C "你的邮箱" -f ~/.SSH/id_rsa_one
生成第二个 SSH-Key
$ SSH-keygen -t rsa -C ""你的邮箱"" -f ~/.SSH/id_rsa_two
创建完成之后 我们在. SSH 的根目录下可以看到文件
WindowsSSH 目录
C:\Users\Administrator\.SSH
Linux,maCSSH 目录
直接 cd ~/.SSH 即可进入
此时,.SSH 目录下应该有 4 个文件: id_rsa_one 和 id_rsa_one.pub,id_rsa_two 和 id_rsa_two.pub
第二步, 添加私钥
在终端中执行
- SSH-add ~/.SSH/id_rsa_one
- SSH-add ~/.SSH/id_rsa_two
如果执行 SSH-add 时提示 Could not open a connection to your authentication agent
可以先执行命令:
SSH-agent bash
然后再重新运行 SSH-add 命令即可
添加成功会出现提示:
Identity added 等字样
第三步, 查看私钥列表是否存在
SSH-add -l
当我们可以看到 2 条私钥的时候就证明安装成功了, 别急还没有完
第四步 修改配置文件 config
若. SSH 目录 (就是私钥所在的文件夹) 下无 config 文件, 那么创建
touch config
打开 config 文件 配置如下格式 这里要注意 IdentityFile 后面对应的是 本地 SSH key 文件路径
- # gitee
- Host gitee.com
- HostName gitee.com
- PreferredAuthentications publickey
- IdentityFile ~/.SSH/id_rsa_one
- # GitHub
- Host GitHub.com
- HostName GitHub.com
- PreferredAuthentications publickey
- IdentityFile ~/.SSH/id_rsa_two
第五步 用 SSH 命令测试验证
- SSH -T Git@gitee.com
- SSH -T Git@GitHub.com
验证通过后即可愉快的 clone 代码了
附:
清空私钥列表
$ SSH-add -D
有问题请在下方留言或者加入星球 http://1t.click/a83g
来源: https://www.cnblogs.com/godfeer/p/12214301.html