Git 生成SSH Key

本文介绍了在Linux系统中使用GitLab管理代码库时,如何通过GitGUI和Git命令生成SSH密钥,并详细说明了如何将这些密钥配置在SourceTree和GitLab上,以便实现客户端与服务器之间的安全连接。

背景:服务器是LINUX系统(centos7),使用GitLab管理git代码库。各个客户端通过sourcetree 工具,采用SSH获取、提交代码。使用SSH的方式需要公钥和私钥。下面介绍秘钥的生成方式和秘钥在sourcetree、gitlab上的配置。

===================================================================秘钥的生成方式========================================================

方法一、Git GUI生成 ssh key 方法

1.打开Git Gui, 选择【help】,点击【Show SSH KEY】

 

 

2.由于之前没有配置过SSH KEY,此时会显示没有任何SSH 公钥

 

 

3.点击右上角【Generate key】,此时会弹出一个界面,要求你输入passphrase

 

 

4.然后再次确认输入passpahrase .

5.此时就会生成一个SSH Key

 

 

6.如果以后需要查看SSH Key。此时可以在Git Gui界面上点击【help】-》【Show SSH KEY】,查看此次生成的SSH Key。

 

方法二、git命令添加 ssh key 方法 

1、打开Git Bash

 

  • $ ssh-keygen -t rsa -C “xxx.mail@xxx.com” 创建秘钥命令。

 ==============================================================秘钥在sourcetree和gitlab如何配置===============================================

2.设置 SourceTree 的 SSH客户端

  • 1.配置SourceTree 的 SSH 客户的为:OpenSSH 
    • 1.1.工具->选项 

       


       

    • 1.2.设置 OpenSSH,这时候,SSH 密钥这一栏自然会去选择当前用户下的 .ssh 目录下的 id_rsa 这个私钥: 

       

2.添加 ~/.ssh/id_rsa.pub 文件内容到 git 服务器里面去

  • 3.1.比如你的 git 代码库管理工具是 GitLab,那么你需要在 https://github.com/settings/keys (如果公司代码放在了自己的服务器上,那么地址会不同,以公司为准)里面添加 SSH key 。

     

  • 3.2.SourceTree 来下载 git 项目 
    • 3.2.1.复制你的 git 地址:git@XXXXX.git
    •  

    • 3.2.2.从 SourceTree 里面新建一个地址,这时候你发现你本地已经可以下载远程的 git 代码了 
    •  

4.解释:

1.ssh-keygen 是公钥私钥的非对称加密方式: 

  1.1.公钥:用于向外发布,任何人都能获取。

  1.2.私钥:要自己保存。

2.公钥私钥加解密的原理 

  2.1.客户端把自己的公钥存放到要链接的远程主机上

  • 2.2.客户端要链接远程主机的时候,远程主机会向客户的发送一条随机的字符串,客户的收到字符串之后使用自己的私钥对字符串加密然后发送到远程主机,远程主机根据自己存放的公钥对这个字符串进行解密,如果解密成功证明客户端是可信的。

转载于:https://www.cnblogs.com/qtiger/p/9284154.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值