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

【嵌入式学习3】信息安全 - SSH协议

目录

1、对称加密技术

2、非对称加密技术

①加密模型:

②认证模型:代表算法RSA

③数字签名:

3、SSH协议

SSH协议层次:由三个层次组成

SSH加密机制

SSH工作原理

SSH协议应用场景

        本地端口转发:

        远程端口转发:

SSH协议特点

Ubantu中SSH安装

通过哪些软件连接到搭载ssh的云端/计算机中


1、对称加密技术

        适用于大量明文加密,易推导,加密解密使用相同密钥。代表算法AES(基于排列和置换算法)。

2、非对称加密技术

①加密模型:

加密密钥公开(任何人使用),解密密钥私密:确认接收者身份

A明文 → A加密(B公钥) → B解密(B私钥)→ B明文

②认证模型:代表算法RSA

加密密钥私密,解密密钥公开:确认发送者身份

A明文 → A加密(A私钥) → B解密(A公钥)→ B明文

③数字签名:

A信息 → 信息摘要Z(使用Hash函数生成)→ 加密信息摘要E(A私钥)→(将信息M,加密信息摘要E一同发送给B)→ (B:接收信息M后使用与A相同的Hash函数生成)信息摘要N → (使用A公钥解密信息摘要E)解密后记作信息摘要K → 对比信息摘要K和信息摘要N是否一致(验证发送者身份)

3、SSH协议

        一种网络协议,用于加密方式远程登录管理服务器。它是在应用层和传输层之间运行的安全协议,用于提供安全的远程登录、文件传输等功能。

SSH协议层次:由三个层次组成
  • 传输层协议:提供服务器和客户端之间加密通信
  • 用户认证协议:用于验证用户身份,支持多种认证方式:密码认证、公钥认证等
  • 连接协议:用于已经建立的加密通信通道上创建多个逻辑通道实现多种服务。

SSH加密机制
  1. 密钥交换与会话密钥生成:客户端和服务器通过密钥交换算法,协商出一个共享的会话密钥
  2. 对称加密通信:会话密钥生成后,客户端和服务器所有通信内容都通过对称加密算法进行加密。
  3. 数字签名验证身份:服务器用自己的私钥对某些数据进行签名,客户端使用服务器的公钥验证签名,确认服务器身份。同样,客户端也可以使用自己的私钥对数据进行签名,服务器验证客户端的签名。确保了通信双方的身份真实可靠,防止中间人攻击。

SSH工作原理
  1. 客户端通过SSH连接到服务器,发起一个连接请求到服务器的22端口。服务器收到请求后发送自己的公钥给客户端。
  2. 客户端收到服务器公钥后,生成会话密钥并使用服务器公钥对会话密钥进行加密,发送给服务器。服务器收到加密的会话密钥后,用自己的私钥解密得到会话密钥。
  3. 客户端和服务器使用该会话密钥来加密后续通信内容。同时,客户端根据配置认证方式(密码认证/公钥认证)向服务器发送认证信息,通过后客户端可以成功登录服务器开始执行远程命令、文件传输操作。

SSH协议应用场景
  • 远程登录:系统管理员可以通过SSH协议从本地计算机远程登录到服务器上,进行服务器的维护和管理操作
  • 文件传输:SSH协议支持安全的文件传输。SFTP(SSH File Transfer Protocol)和SCP(Secure Copy Protocol)两种文件传输方式。用户可以通过SFTP客户端软件(如FileZilla)在客户端和服务器之间传输文件,文件在传输过程中是加密的,防止数据泄露。SCP则是用于在服务器之间或客户端与服务器之间复制文件的命令行工具,它也利用SSH协议进行加密传输
  • 端口转发:本地端口转发和远程端口转发。
        本地端口转发:

           本地端口转发是指将本地计算机的某个端口转发到远程服务器的某个端口。例如,如果本地计算机不能直接访问某个外部网络服务(如一个被防火墙限制的数据库服务),但可以通过SSH连接到一个可以访问该服务的服务器,就可以通过SSH的本地端口转发功能,将本地计算机的某个端口(如本地的3306端口)转发到远程服务器的数据库服务端口(如远程服务器的3306端口),从而间接访问数据库服务。

        远程端口转发:

           远程端口转发则是将远程服务器的某个端口转发到本地计算机的某个端口。这在一些需要从外部网络访问本地网络资源的场景下很有用,比如从公司外部访问公司内部网络中的开发服务器。

SSH协议特点
  • 安全性高:加密技术保护通信内容
  • 兼容性好:广泛应用于各种操作系统
  • 功能丰富:除了远程登陆和文件传输功能外,还支持端口转发

Ubantu中SSH安装
  1. 安装ssh:sudo apt-get install ssh
  2. 启动协议:sudo /etc/init.d/ssh start
  3. 重启协议:sudo /etc/init.d/ssh restart

通过哪些软件连接到搭载ssh的云端/计算机中
  • putty
  • Xshell
  • MobaXterm

相关文章:

  • JAVA反序列化深入学习(六):CommonsCollections4
  • jQuery 入门到精通
  • Vue中使用antd-table组件时,树形表格展开配置不生效-defaultExpandedRowKeys-默认展开配置不生效
  • 经典算法 排列的字典序问题
  • 为什么需要 Node.js 的 URL 处理工具?
  • JavaScript 函数参数详解
  • 后端实现加解密工具类(记录)
  • MySQL增删改查(CRUD)操作详解与实战指南
  • Java EE(17)——网络原理——IP数据报结构IP协议解析(简述)
  • TabularDataset
  • 蓝桥杯备考----》完全背包模板
  • HarmonyOs学习 实验四:开发一个登录界面
  • Electron 系统托盘与屏幕捕捉深度解析:从基础到企业级实践
  • 【Linux】网络概念
  • STM32F103_LL库+寄存器学习笔记13 - 梳理外设CAN与如何发送CAN报文(串行发送)
  • [Vue2]侦听器watch(监视器)
  • Android JobScheduler调度任务面试题及参考答案
  • 01_现代C++特殊成员函数
  • Android 10上如何查看GPU占用率 安卓手机怎么看gpu频率
  • 介绍一下JVM内存结构面试回答(后续会继续补充)
  • 做网站和做系统有什么不同/培训心得简短200字
  • 北京最大做网站的公司/seo短期培训班
  • 最权威的网站推广设计/推广资源整合平台
  • 长春网站建设找源晟/百度推广登录网站
  • wordpress查看浏览量/佛山外贸seo
  • 国外的浏览器/河池网站seo