git ssh免密密钥使用方式

在将更改推送到GitLab服务器之前,您需要一个安全的通信通道来共享信息。
SSH协议提供了这种安全性,并允许您向GitLab远程服务器进行身份验证,而无需每次都提供用户名或密码。

1、创建SSH密钥对:

生成新的ED25519 SSH密钥对:

ssh-keygen -t ed25519 -C "email@example.com"

或者,生成新的RSA SSH密钥对:

ssh-keygen -o -t rsa -b 4096 -C "email@example.com"

-C 如果您有多个标记并想知道是哪个标记,则该标志会在键中添加注释。它是可选的。

2、保存SSH密钥

系统将提示您输入文件路径用以保存SSH密钥对。如果以前没有生成过SSH密钥对,建议使用默认路径 ,这样SSH客户端无需额外配置即可自动使用SSH密钥对。
确定路径后,将提示您输入SSH密钥对的保护密码。可选,可以通过按Enter两次跳过。
添加或更改SSH密钥对的密码的命令如下,

ssh-keygen -p -o -f <keyname>

3、将SSH密钥添加到您的GitLab帐户

头像 -> 设置 -> SSH密钥。
将公共密钥(以ssh-ed25519(或ssh-rsa)开头并以电子邮件结尾)粘贴到“ 密钥”字段中。

4、 测试所有设置是否正确

要测试是否正确添加了SSH密钥,请在终端中运行以下命令(替换gitlab.com为GitLab的实例域):

// 将gitlab.com 替换为你自己的主机域名即可
ssh -T git@gitlab.com 

示例:


success.png

注意:
首次通过SSH连接到GitLab时,将要求您验证所连接的GitLab主机的真实性。例如,连接到GitLab.com时,请回答yes将GitLab.com添加到受信任主机列表中:(添加到known_hosts列表)

The authenticity of host 'gitlab.com (35.231.145.151)' can't be established.
ECDSA key fingerprint is SHA256:HbW3g8zUjNSksFbqTiUWPWg2Bq1x8xdGUrliXFzSnUw.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'gitlab.com' (ECDSA) to the list of known hosts.
knownhosts.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容