当前位置: 首页 > news >正文

SSH基础原理

SSH简介

SSH(Secure Shell,安全外壳协议)是一种用于在不安全网络上进行安全远程登录和实现其他安全网络服务的协议。
SSH 协议由三个组件构成:SSH传输层协议、SSH 用户认证协议、SSH连接协议
图片-component
详细介绍每个组件构成。

SSH传输层协议

SSH传输层协议是一个安全传输协议。SSH 传输层通常建立在 TCP/IP 连接上,但也可以在任何其他可靠的数据流上建立。
SSH 传输层协议协商了所有的密钥交换算法、公钥算法、对称加密算法、消息认证算法等。
图片-交互算法
密钥交换算法:用于产生会话密钥。常见算法是 DH
公钥算法:用于进行数字签名和用户认证。常见的算法是 RSA 和 DSS
对称加密算法:用于会话的加密。
消息认证算法:用于数据完整性认证。常见的算法是 sha1md5

SSH用户认证协议

SSH用户认证协议提供两种认证方法:
1.口令认证
2.公钥认证

口令认证:客户端通过用户名和密码登录到服务器,完成用户认证。
公钥认证:服务器通过公钥解密客户端的数字签名,完成用户认证。
图片-用户认证协议

SSH连接协议

SSH连接协议将加密的会话连接多路复用成若干个逻辑通道,它提供了交互式登录会话,远程执行命令,TCP/IP连接转发和X11连接转发等功能。所有通道都复用一个会话连接。
SSH连接协议在SSH传输层和SSH用户认证协议之上运行。

SSH连接协议

SSH工作原理

图片-ssh
在整个通讯过程中,为实现SSH的安全连接,服务器端与客户端要经历如下五个阶段:

  1. 版本协商阶段
  2. 算法协商阶段
  3. 密钥交换阶段
  4. 用户认证阶段
  5. 会话交互阶段

下面介绍每个阶段具体工作。
1、版本协商阶段
客户端和服务器交互SSH版本协商保温,确定V1或V2版本。
在这里插入图片描述
2、算法协商阶段
一般情况下,服务器端迁就客户端的密钥算法。
在这里插入图片描述
3、密钥交换阶段
根据密钥交换算法,双方动态地产生会话密钥用于后续会话加密。会话密钥无法被第三者截获,安全可靠。
图片-密钥交换阶段
其中,p、g是质数。计算 YcY_cYc 的公式(散列算法):
YC=gXcmodP{Y_C=g^{X_c} mod P}YC=gXcmodP

用户认证阶段——口令认证

客户端发送携带用户名和口令的认证请求,服务器与本地用户数据进行匹配认证。
口令认证

用户认证阶段——公钥认证

公钥认证的过程是客户端发送携带数字签名的认证请求,服务器通过公钥解密数字签名进行认证。客户端的私钥生成数字签名。
公钥认证
用户完成认证后,客户端向服务器发起建立通道请求,进行数据传输。进入到会话交互阶段。
在这里插入图片描述

http://www.dtcms.com/a/274911.html

相关文章:

  • 速盾:高防CDN和普通CDN的区别大吗?
  • 【unity编辑器开发与拓展EditorGUILayoyt和GUILayoyt】
  • phpstudy搭建pikachu
  • Java 的集合都有哪些,都有什么特点?
  • c#获取Datatable中某列最大或最小的行数据方法
  • 2025年亚太中文赛B题第一版本超详细解题思路
  • Claude Code 完全上手指南:从入门到精通的终极备忘录
  • 【MYSQL8】springboot项目,开启ssl证书安全连接
  • 深度学习篇---昇腾NPUCANN 工具包
  • 数字后端APR innovus sroute到底是如何选取宽度来铺power rail的?
  • 大模型遇上数据库:如何真正实现从“智能问数”到“精准问数”?Intalink给出答案
  • Rust基础-part3-函数
  • 如何在 PyCharm 批量调整代码缩进?PyCharm 调整代码格式化和代码缩进的快捷键有哪些?
  • Pandas:常见的转换函数(rename,set_index,reset_index)
  • 麦迪逊悬架cad【14张】+三维图+设计说明书
  • VLLM部署DeepSeek-LLM-7B-Chat 模型
  • 云网络产品
  • 简单记录一下Debug的折磨历程
  • 多项式环及Rq的含义
  • Solaris10 创建用户初始化家目录
  • 注意力机制十问
  • softmax回归的从零开始实现
  • Java 抽象类详解:从基础到实战,掌握面向对象设计的核心基石
  • 渗透测试之木马后门实验
  • 拥抱AI----AI时代下的SSM框架
  • 项目捷报 | 冠捷科技泰国工厂THA MES项目成功验收!TPV国际化布局再添里程碑!
  • 【中文核心期刊推荐】中国农业科技导报
  • php的原生类
  • 7.12 卷积 | 最小生成树 prim
  • 转转APP逆向