Git22_使用SSH协议传输数据6
一、Git支持的传输协议
由于Git的远程仓库并不在我们本地,当我们在使用远程仓库的时候(例如克隆、拉取、推送)就会涉及到数据的网络传输,Git支持多种数据传输协议
- 本地协议(Local)
- HTTPS 协议
- SSH(Secure Shell)协议
- Git 协议
我们前面的操作都是基于HTTPS协议进行的,本章节我们会学习如何使用SSH协议
二、 什么是SSH协议
SSH 为 Secure Shell(安全外壳协议)的缩写,由 IETF 的网络小组(Network Working Group)所制定。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
由于本地Git仓库和远程仓库之间的传输是通过SSH加密的,所以必须要让远程仓库服务器认证你的SSH key,在此之前,必须要生成SSH key。
使用ssh协议通信时,推荐使用基于密钥的验证方式。你必须为自己创建一对密匙(公钥和私钥),并把公匙放在需要访问的服务器上,私钥放在客户端(自己电脑)。
三、配置SSH协议
不使用公钥和私钥,直接克隆
可以使用Git提供的命令行工具Git Bash生成公钥和私钥,具体操作过程如下:
1、使用命令ssh-keygen –t rsa生成公钥和私钥,执行完成后在window本地用户.ssh目录C:\Users\用户名\.ssh下面生成如下名称的公钥和私钥
ssh-keygen –t rsa
2、复制公钥文件内容至码云服务器
这时候重新进行克隆就成功了,因为本地私钥和远程仓库的公钥进行校验,校验通过了