使用场景:
通常,我们只会生成一个SSH Key,名字叫id_rsa,然后提交到多个不同的网站(如:GitHub、CodeArts或Gitee)。
但是也存在另一种需要,我们在同一个网站上,注册了两个用户名,通常网站不会允许我们为这两个用户名,配置同一个SSH Key,这时候就会有些麻烦。
操作步骤:
1.终端执行:ssh-keygen -t rsa -C "email"
你会看到如下信息:
Generating public/private rsa key pair.
Enter file in which to save the key (~/.ssh/id_rsa):<不要直接回车,填写自己定义的名字,最后在.ssh文件夹中会生成你自定义名称的文件>
Enter passphrase(empty for on passphrase):<不要直接回车,填写自己定义的密码>
备注:执行两次该操作,即是生成了 2 个 SSH Key
2.将 *.pub 文件中的内容复制粘题到对应的服务网站上,例如阿里云、华为云等
打开.ssh文件夹,需执行终端命令:open ~/.ssh
id_rsa 为密钥,id_rsa.pub为公钥
3.创建 ~/.ssh/config 文件,执行命令:
cd ~/.ssh
touch ~/.ssh/config
cat config
再将以下内容拷贝到该文件中,并对应修改内容:
Host a1
HostName codeup.aliyun.com
IdentityFile ~/.ssh/a1
PreferredAuthentications publickey
User 用户名,一般为邮箱
Host a2
HostName codeup.aliyun.com
IdentityFile ~/.ssh/a2
PreferredAuthentications publickey
User 用户名,一般为邮箱
备注:
HostName:是填写真实的服务地址
Host:是填写别名,后面会用上。
IdentityFile:填写的是证书的所在位置,你也可以把证书保存在任何地方。
4.克隆 git 项目
原本需要执行该命令克隆项目:
git clone git@codeup.aliyun.com/xxx.git
现在需要执行如下命令克隆项目:
git clone git@a1/xxx.git
账号不同或者服务地址不同需自行替换~
ED25519 和 RSA 创建 SSH Key 相关内容请看:
配置 SSH 密钥
网友评论