📜  SSH(安全外壳)密钥简介

📅  最后修改于: 2022-05-13 01:57:02.537000             🧑  作者: Mango

SSH(安全外壳)密钥简介

SSH(Secure Shell)是在 SSH 协议中使用的访问凭证。换句话说,它是一种加密网络协议,用于通过网络传输加密数据。它允许您连接到一个服务器或多个服务器,而无需记住或输入要从一个系统远程登录到另一个系统的每个系统的密码。
它总是以密钥对形式出现:

  1. 公钥——每个人都可以看到,无需保护。 (用于加密函数)
  2. 私钥 -留在计算机中,必须受到保护。 (用于解密函数)

密钥对可以是以下类型:

  1. 用户密钥 -如果公钥和私钥保留在用户手中。
  2. 主机密钥 –如果公钥和私钥在远程系统上。
  3. 会话密钥——在要传输大量数据时使用。

SSH 是如何工作的?
它使用非对称密码来执行加密和解密。有很多加密方法:

rsa, dsa, ed25519 etc. 

一般程序是:-

  • 来自本地计算机(系统)的公钥被传递到要访问的服务器。
  • 然后服务器识别公钥是否已注册。
  • 如果是这样,服务器然后创建一个新的密钥并使用通过本地计算机发送给它的公钥对其进行加密。
  • 此加密代码被发送到本地计算机。
  • 该数据由系统的私钥解锁并发送到服务器。
  • 服务器收到此数据后验证本地计算机。
  • SSH 创建一个路由,所有加密数据都通过它传输,没有安全问题。

SSH 是基于密钥的身份验证,不易受到暴力攻击。
它比登录ID和密码(中间可能被盗)更方便和安全。如果服务器遭到入侵,则不会泄露有效凭据。

生成 SSH 密钥对:

Open your command prompt
type : ssh-keygen
Press enter
It will ask you for a location. Press Enter for default location.
If its already there, press 'y' to overwrite.
You may enter passphrase as you like, press enter. 

下面给出了在最新版本的 Windows 10 中生成 SSH 密钥对的示例:

在 Windows、Linux 和 Mac 上生成 SSH 密钥:

OMAC OsX and Linux : terminal (build in)
OWindows :- PuTTY