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

SSH浅析

一、简介

SSH(Secure Shell) 是一种加密的网络协议,用于在不安全的网络(如 Internet)上安全地访问、管理和传输数据到远程计算机。主要用于替代传统的 Telnet、rlogin、rsh 等明文传输协议,避免敏感数据(如密码、命令)被窃听或篡改。SSH 有两个主要版本:

  • SSH-1(已不推荐使用)
    存在多项安全漏洞(如会话密钥回收攻击),早期实现中加密算法和认证机制较弱。
  • SSH-2(RFC 4250~4256 定义,IETF 标准)
    引入更强的加密算法(AES、ChaCha20 等)、更安全的密钥交换协议(Diffie–Hellman、ECDH)、多通道复用等,是目前的主流版本。

二、 层次划分

2.1 传输层(Transport Layer Protocol,RFC 4253)
  • 主要功能:提供加密、数据完整性校验、防止重放攻击,确保客户端与服务器之间的机密通信。
  • 核心过程
    1. 协商协议版本:客户端与服务器首先交换支持的 SSH 协议版本(如 SSH-2.0-OpenSSH_8.9)。
    2. 算法协商:双方交换支持的加密算法、MAC 算法、压缩算法列表(如 AES-256-GCM、HMAC-SHA2-256)。
    3. 密钥交换(Key Exchange):常用算法有 Diffie–Hellman(DH)、椭圆曲线 Diffie–Hellman(ECDH),生成会话密钥。
    4. 建立加密通道:所有后续数据都通过该通道加密传输。
2.2 身份验证层(User Authentication Protocol,RFC 4252)
  • 主要功能:验证客户端(用户)是否有权访问服务器。
  • 常用身份验证方法
    1. 密码认证(Password Authentication):用户输入密码,客户端加密后发送,服务器验证。
    2. 公钥认证(Public Key Authentication):客户端持有私钥,服务器保存公钥,利用数字签名验证身份(安全性高,推荐)。
    3. 主机认证(Host-based Authentication):基于客户端主机的公钥,适用于可信网络内部。
3. 连接层(Connection Protocol,RFC 4254)
  • 主要功能:在已加密且认证通过的 SSH 会话上复用多个逻辑通道。
  • 支持的通道类型
    1. 交互式 shell 会话(如 ssh user@host 进入终端)
    2. 远程命令执行ssh user@host command
    3. 端口转发
      • 本地转发(Local Forwarding):将本地端口映射到远程服务
      • 远程转发(Remote Forwarding):将远程端口映射到本地服务
      • 动态转发(Dynamic Forwarding):充当 SOCKS 代理
    4. 子系统(Subsystem):如 SFTP(安全文件传输)

三、工作原理

在这里插入图片描述

总结

SSH 提供的核心功能:

  • 安全的远程登录(Secure Remote Login)
  • 安全的文件传输(如 SFTP、SCP)
  • 端口转发(Port Forwarding / Tunneling)
  • 命令执行(Remote Command Execution)
  • 加密的应用数据通道

SSH 的优点:

  • 安全性高:采用强加密算法和完整性校验
  • 功能丰富:不仅支持远程登录,还可文件传输、端口转发、代理等
  • 可扩展性:支持自定义认证方式和加密算法
  • 跨平台:支持 Linux、macOS、Windows(如 OpenSSH、PuTTY)
http://www.dtcms.com/a/327535.html

相关文章:

  • 记录一次react渲染优化
  • 【AI生成+补充】高频 hql的面试问题 以及 具体sql
  • web服务器tomcat内部工作原理以及样例代码
  • GeoScene 空间大数据产品使用入门(4)空间分析
  • Docker-LNMP架构 创建多项目- 单个ngixn代理多个PHP容器服务
  • 正式出版!华东数交组编《数据资产化实践:路径、技术与平台构建》
  • 用 Apache Iceberg 与 Apache Spark 在 Google Cloud 打造高性能、可扩展的数据湖仓
  • 增加vscode 邮件菜单
  • 备战国赛算法讲解——马尔科夫链,2025国赛数学建模B题详细思路模型更新
  • 7 种最佳 DBAN 替代方案,彻底擦除硬盘数据
  • vue excel转json功能 xlsx
  • 【CV 目标检测】②——NMS(非极大值抑制)
  • springboot+JPA
  • 卓伊凡谈AI编程:历史、现状与未来展望-以前面向搜索引擎现在面向AI机器人-优雅草卓伊凡
  • 解释 Spring MVC 的工作原理
  • web应用服务器——Tomcat
  • C语言中关于普通变量和指针变量、结构体包含子结构体或包含结构体指针的一些思考
  • 车载5G加速,扩产+毛利率保卫战
  • 随身WIFI每个月需要交钱吗?流量卡还是随身WIFI哪个更好用?正规随身WIFI品牌有哪些?谁才是真性价比之王?
  • Linux下命名管道和共享内存
  • 云原生作业(nginx)
  • 云原生环境Prometheus企业级监控实战
  • 将黑客拒之物联网网络之外的竞赛
  • 2.Ansible基本使用
  • 9. React组件生命周期
  • 使用镜像网站 打开克隆 GitHub 网站仓库内容 git clone https://github.com/
  • 跟李沐动手学深度学习---学习笔记之基础篇
  • ForceVLA——将具备力感知的MoE整合进π0的动作专家中:从而融合视觉、语言、力反馈三者实现精密插拔
  • 【USRP】基于LabVIEW的BPSK、QPSK,文本,图片
  • n8n、Workflow实战