搞定 github 密钥配置

133 阅读1分钟

配置步骤

1、检查本地是否有配置文件

cd ~/.ssh
ls
本地是否有 id_rsa 和 id_rsa.pub 的文件,如果有说明密钥已生成,跳到第三步

2、生成密钥

执行命令后会生成 id_rsa 和 id_rsa.pub,分别代表私钥 和 公钥,

ssh-keygen -T rsa -C "xxx@xxx.com"
这里的xxx可以没有明确的含义

3、获取公钥

cd ~/.ssh
cat id_rsa.pub

如图所示:

image.png

4、在github上添加公钥

在 github 的 settings 中的 SSH and GPG 模块中添加公钥

5、验证是否添加成功

ssh -T git@github.com

成功信息如下:

image.png

密钥鉴权原理

密钥是成对存在的,通常称为私钥 id_rsa 和 公钥 id_rsa.pub
私钥保存在本地,公钥保存在远端git服务器

当用户通过SSH协议将git命令发送到远程仓库时,Git服务器会返回一个随机值

本地Git会使用私钥对随机值进行加密,然后将加密后的值发送回Git服务器

Git服务器使用之前存储的用户公钥来解密加密的随机值。如果解密成功,Git服务器就验证了用户的身份,并允许用户访问仓库

通过这个过程,Git服务器可以通过用户生成的公钥来验证用户的身份,保证只有授权用户可以访问和操作远程仓库