快讯资讯
手机优化
系统数码
网络通信人工智能
网站游戏
测评专题
智车

  SSH 是如何工作的?你学       OCP基金会:以开源开放应    

SSH 是如何工作的?你学会了吗?

时间:2026-09-20 07:59 来源:未知 人气:

在计算机网络中,需要登录远程计算机。从历史上看,这是通过 Telnet(始于 20 世纪 60 年代末)和 rlogin(始于 20 世纪 80 年代)实现的。然而,这些早期的程序并不安全。SSH(Secure Shell)是为解决这些缺陷而创建的协议。它在不安全的网络上建立安全连接。

SSH 采用客户端-服务器架构。客户端是指试图连接远程服务器的机器。SSH 对客户机和服务器进行身份验证。它规定了客户端和服务器如何就共享秘密达成一致,以便随后对数据包进行加密。最后,它还提供数据完整性保护。

SSH 有两个版本:SSH-1 和 SSH-2。SSH-2 由 IETF 标准化。SSH 已被广泛采用。现代操作系统都内置了 SSH 客户端。OpenSSH 是一种流行的开源实现方式。也有商业实施方案。

下面将逐步解释 SSH 的三个主要层:传输层、验证层和连接层。

01 传输层

传输层提供加密、完整性和数据保护,确保客户端和服务器之间的通信安全。

第 1步- 建立 TCP 连接

客户端启动与 SSH 服务器的 TCP 连接,通常是在 22 端口。

第 2 步 - 协议版本交换

客户端和服务器交换包含各自支持的 SSH 协议版本的标识字符串。

第 3 步 - 算法协商

客户端和服务器就加密、密钥交换、MAC(消息验证码)和压缩所使用的加密算法达成一致。

第 4 步 - 密钥交换

密钥交换算法(如 Diffie-Hellman)用于安全生成共享秘密。这一过程可确保双方在不直接传输的情况下获得相同的会话密钥。

第 5步- 会话密钥推导

会话密钥是从共享秘密和其他交换信息中推导出来的。这些密钥用于加密和解密通信。

第 6步- 密码初始化

双方使用导出的会话密钥初始化各自选择的加密和 MAC 算法。

第 7步- 数据完整性和加密

传输层为客户端和服务器之间的所有后续通信提供数据完整性检查和加密。

02 验证层

验证层验证客户端的身份,确保只有授权用户才能访问服务器。

第 1步- 服务请求

客户端请求 "ssh-userauth "服务。

第 2 步- 身份验证方法广告

服务器公布可用的身份验证方法(如密码、公钥、键盘交互)。

第 3 步 - 客户端身份验证

客户端尝试使用一种或多种可用方法进行身份验证。常见方法包括:

  • 密码验证:客户端向服务器发送密码,由服务器进行验证。
  • 公钥验证:客户端证明拥有与先前注册的公钥相对应的私钥。
  • 键盘交互式身份验证:服务器向客户端发送提示,客户端回复所需的信息(如 OTP、安全问题)。

第 4步- 身份验证成功/失败

更多文章

相关文章

网站导航 | 快讯 | 资讯 | 手机 | 优化 | 系统 | 数码 | 网络通信 | 人工智能

  • 游戏 | 测评 | 专题 | 智车

    合作伙伴:

  • 友情链接(欢迎业界知名网站交换链接)申请友情

    

    声明:本站资源皆来自网络,如有侵权问题,请联系管理员处理!

    Copyright ©2020-2028快知站 版权所有 All rights reserved.

    闽ICP备20010713号-1 闽公网安备 35020602001684号