SSH
基本概念
- SSH 全称 Secure SHell。安全外壳协议(安全的 shell),是一个计算机网络协议(默认端口号为 22)。通过 ssh协议可以在客户端安全(提供身份认证、信息加密)的远程连接 Linux服务器或其他设备。
Xshell、MobaXterm、OpenSSH软件都提供了基于 SSH协议的远程连接。
其中,OpenSSH 主要用于类 Unix 系统,在很多 Linux 系统中,OpenSSH 是默认安装和使用的 SSH 实现。
就当前阶段,SSH协议主要用于远程操作异地主机、安全网络连接。
在 Linux 中使用 SSH
Git、GitHub 和 SSH
之前我们已经学过如何使用 Git,以及如何使用 Git 将本机文件同步到 GitHub 。
自然,我们应当记得,当我们想要将 GitHub 远程仓库和本地仓库关联的时候,GitHub 端要求提供 SSH密钥。
以下具体解释:
首先,当你使用 Git 把本地的代码(你电脑上的文件)推送到 GitHub 上时,你需要一种方式来“连接”你的电脑和 GitHub 服务器。这个连接可以通过两种主要方式进行:
- 使用 HTTPS:每次推送代码时,你都需要输入 GitHub 的用户名和密码。
- 使用 SSH:你可以设置一个 SSH 密钥,这样以后推送代码时就不需要每次都输入用户名和密码了。
使用 SSH 密钥来连接 Git 和 GitHub
SSH 在这里的作用就是帮助你安全、方便地连接到 GitHub,进行代码的推送和拉取。
具体步骤:
- 生成 SSH 密钥对:在本地电脑上生成一对 SSH 密钥:一个公钥(public key)和一个私钥(private key)。公钥是可以公开的,而私钥则要保密。
- 把公钥添加到 GitHub:把生成的公钥上传到你的 GitHub 账号里。这样,GitHub 就知道这把钥匙是属于你的。
- 使用 SSH 进行连接:之后,当你在本地使用 Git 推送代码到 GitHub 时,GitHub 会用你的公钥来验证你的身份。如果匹配成功,就允许你上传代码,而不需要再输入用户名和密码。