Git高级之配置多个SSH key

最近咱们在代码托管平台上使用SSH的方式下拉代码,一般是用一个ssh key来拉取全部托管平台的代码,如码云,GitHub、GitLab等,可是总用一个不是太好。会有安全风险,这就须要为每一个托管平台设置单独的SSH-keypython

下面咱们下简单介绍一下如何建立多个SSH Key而且使用下拉代码。git

第一步、生成SSH-Key

Windows建议使用Git bash操做github

Linux、mac用户使用默认终端便可安全

  1. 生成第一个SSH-Key
$ ssh-keygen -t rsa -C "你的邮箱” -f ~/.ssh/id_rsa_one
  1. 生成第二个SSH-Key
$ ssh-keygen -t rsa -C ""你的邮箱”” -f ~/.ssh/id_rsa_two

建立完成以后 咱们在.ssh的根目录下能够看到文件bash

  • WindowsSSH 目录
C:\Users\Administrator\.ssh
  • Linux、macSSH 目录
直接 cd ~/.ssh 便可进入

此时,.ssh目录下应该有4个文件:id_rsa_one和id_rsa_one.pub,id_rsa_two和id_rsa_two.pubssh

第二步、添加私钥

在终端中执行测试

ssh-add ~/.ssh/id_rsa_one 
ssh-add ~/.ssh/id_rsa_two

若是执行ssh-add时提示 Could not open a connection to your authentication agentcode

能够先执行命令:get

ssh-agent bash

而后再从新运行ssh-add命令便可it

添加成功会出现提示:

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

有问题请在下方留言或者加入星球

相关文章
相关标签/搜索