




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章会话安全SSH 杨礼珍 作业 P 179 思考题1 4 9 5 1SSH的历史及现状 SSH的提出SSH SecureShell 安全Shell 是基于TCP的应用层协议 能对数据进行加密处理 为保障远程登录及交互式会话安全而提出 1995年 TatuYlonen首次设计并实现了SSH 该版本称为SSH1 之后TatuYlonen创立了SSH通信安全公司 htt 提供企业级的SSH安全方案和产品 1998年 SSH通信公司推出SSH2 2005年 SSH通信公司推出SSHG3 2006年1月 SSH2正式成为IETF标准 文档为RFC4250 4256 2008年2月 SecSh工作组公布两个草案 描述了SSH如何使用ECC和UMAC 5 2SSH的功能及组成 SSH为应用层协议 基于TCP 使用端口22 SSH所提供服务 机密性 完整性保护 身份认证功能 必选的服务器认证 可选的客户端认证 SSH所包含内容 算法 包括加密 认证和压缩算法 协商 密钥交换 服务器身份认证 用户身份认证以及应用层数据封装处理等 5 2SSH的功能及组成 SSH协议组成 传输层协议 协商和数据处理 位于SSH协议套件的最底层 位于SSH协议套件的最底层 为SSH其它协议和高层应用提供安全保护 包含了服务器身份认证 用户认证协议 规定了服务器认证客户端用户身份的流程和报文内容 连接协议 将安全通道多路分解为多个逻辑通道 以便多个高层应用共享SSH提供的安全服务 SSH的组成协议关系图 5 3SSH数据类型 SSH规定了7中数据类型来描述协议消息格式单字节整数布尔值32比特整数64比特整数字符串大整数列表 5 4SSH方法及算法描述 SSH用字符串描述算法 并给出了可用算法的标准字符串表示 如 3des cbc 表示使用CBC模式的3DES算法 blowfish cbc 表示使用CBC模式的blowfish算法 如果同时使用两个算法 则用 列表 数据类型表示出来 SSH规定了厂商实现中自定义名字的统一格式 5 5SSH传输协议 协议流程 5 2SSH传输协议 1 版本协商 协定最终使用的SSH版本 2 密钥交换 包括算法协商 D H交换和计算密钥 D H交换报文中包含了服务器认证信息 SSH支持两种认证方法 显式方法 报文包含数字签名 客户端必须获取服务器公钥 SSH也称为热键hotkey 隐式方法 报文包含利用预共享密钥计算的MAC 5 2SSH传输协议 2 1 算法协商 通信双方交互SSH MSG KEXINIT消息进行算法协商 SSH MSG KEXINIT消息格式见p 153图5 3 它包含以下内容Cookie 为随机数 用来和其它参数共同生成密钥和会话ID 以防止重放攻击 密钥交换算法列表 服务器热键算法列表 客户端和服务器加密算法列表 客户端和服务器MAC算法列表 客户端和服务器压缩算法列表 客户端和服务器语言列表 标志 5 2SSH传输协议 2 2 D H交换SSH MSG KEXDH INIT和SSH MSG KEXDH REPLY消息格式见p 155图5 4 SSH MSG KEXDH REPLY消息完成以下功能 密钥交换 双方交换D H公开值服务器身份认证 对散列值H的签名握手消息完整性 散列值H的输入包含了 客户端和服务器的版本信息 SSH MSG KEXINIT消息 包含了Cookie字段 热键 双方的D H公开值以及共享密钥 散列值H同时用于计算会话ID 可用来防止重放攻击 5 2SSH传输协议 2 3 计算密钥 SSH使用4个密钥 通信双方用来加密和认证的密钥 Ecs Esc Mcs Msc 以及分组加密中使用的IV IVcs IVsc 计算方法如下 IVcs HASH K H A 会话ID IVsc HASH K H B 会话ID Ecs HASH K H C 会话ID Esc HASH K H D 会话ID Mcs HASH K H E 会话ID Esc HASH K H F 会话ID 其中K为双方的共享密钥 由双方的D H公开值计算得到 H为消息完整性中计算的散列值 5 2SSH传输协议 2 4 密钥再交换 通信双方都可以发起密钥再交换协商 与首次协商过程相同 2 5 密钥交换完成后 通信双方交互SSH MSG NEWKEYS消息以通告对等端随后的通信流使用新的算法和密钥保护 5 2SSH传输协议 3 服务请求 响应 客户端发送 SSH MSG SERVICE REQUEST消息 其中包含了所请求的服务名称 服务器发送 如果同意提供客户端提出服务 则返回SSH MSG SERVICE ACCEPT否则返回SSH MSG DISCONNECTSSH定义了两种服务 ssh userauth 用户认证 和ssh connection 连接请求 5 2SSH传输协议 2 报文格式Mac MAC Mcs 或Msc 序号 未加密的报文 MAC 消息验证码算法未加密的报文 除mac以外的所有报文数据加密算法应用于除mac外的其他部分 压缩算法应用于数据部分 注 如未协商压缩算法则数据不需要压缩 如未协商加密算法则不需要填充和加密 如未协商MAC算法则不需要计算mac 序号不包含在SSH报文中 SSH传输协议报文格式另一图示 5 6SSH身份认证协议 客户利用传输层协议向服务器提出用户身份认证服务请求 若服务器接受请求 则双方开始执行SSH身份认证协议 身份认证协议在传输层协议提供的安全通道上运行 即身份认证协议的消息封装在传输层报文的数据区中 一次身份认证失败 客户端可再次提出认证请求 但重试的时间间隔和次数是有限制的 5 6 1身份认证过程 身份认证过程主要由三种消息完成 客户端所发出的认证请求 格式见p 159图5 7SSH MSG USERAUTH REQUEST服务器应答 格式见p 160图5 8服务器接受认证的应答 SSH MSG USERAUTH SUCCESS服务器拒绝认证的应答 SSH MSG USERAUTH FAILURE 5 6 1身份认证过程 SSH支持4种用户身份认证方法 publickey 公钥认证 客户端向服务器提供签名password 口令认证 客户端向服务器提供口令hostbased 基于主机的认证 由用户宿主机代理用户完成身份认证 用于主机有多个客户的情形 none 不使用认证 用于客户端身份不敏感和查询服务器支持的认证方法的情形下 5 6 2公钥认证方法 第一轮交互用以通告签名算法和证书SSH MSG USERAUTH REQUEST消息 认证方法 名字段被设置为 publickey 与认证方法相关的字段 的格式见P 161图5 10 包含了标志 设置为FLASE 签名算法名 证书 第二轮进行身份认证SSH MSG USERAUTH REQUEST消息 认证方法 名字段被设置为 publickey 与认证方法相关的字段 的格式见P 161图5 11 包含了标志 设置为TRUE 签名算法名 公钥和签名 5 6 2公钥认证方法 5 6 3口令认证方法 认证过程 客户端发送的请求消息包含 password 认证方法 标志字段设置为FALSE 口令字符串 服务器的响应可能为 成功失败若口令过期 发送SSH MSG USERAUTH PASSWD CHANGEREQ客户端再次发出请求消息 其中标志字段设置为TRUE 包含原口令和新口令服务器响应 5 6 4基于主机认证方法 使用数字签名验证身份流程与公钥认证相似和公钥认证的方法的不同之处 用客户端主机的私钥 公钥认证使用用户的私钥 进行签名 服务器用客户端主机的公钥 公钥认证使用用户的公钥 验证签名 前提 主机已通过用户身份验证 客户端主机充当用户身份认证代理 使用场合 主机有多个客户 5 6 4基于主机认证方法 认证过程 客户端的请求消息包含 认证方法名 字段设置为hostbased 签名算法 证书 用户端主机的FQDN 用户名 签名 具体格式见P 1625 12 服务器根据以下内容验证客户端身份 证书是否合法给出的用户是否允许在这台主机登录签名是否正确客户端主机的合格域名FQDN是否与报文的源地址一致 服务器给出成功或者失败的应答 5 7SSH连接协议 连接协议如何运行 在传输层提供的安全通道上进行客户端通过SSH传输层协议发出连接协议服务请求后 即可开始连接协议流程 隧道 传输层协议建立的安全通道称为 隧道 通道 所有的终端会话和被转发的连接称为 通道 隧道和通道的关系 一个隧道可以包含多条隧道 即SSH的安全通道可以同时为多个不同的应用提供安全服务 SSH连接协议规定了四种通道类型 session 运行远程程序 x11 X视窗系统 远程服务器运行 在本地显示 forwarded tcpip 远程端口转发 和direct tcpip 本地端口转发 5 7 1基本通道操作 所有通道操作都包含以下过程建立通道数据传输关闭通道不同通道存在细节差异下图是基本通道操作流程 SSH连接协议基本通道操作 5 7 2交互式会话通道操作 如利用通道交互式会话操作 SSH MSG CHANNEL OPEN中指定通道类型为 session 通道建立后 发送SSH MSG CHANNEL REQUEST消息进行各种交互式操作 该消息格式见p 171图5 20 如该消息的标志为 TRUE 时需要对方应答 对方应返回以下消息之一 SSH MSG CHANNEL SUCCESSSSH MSG CHANNEL FAILUE 5 7 2交互式会话通道操作 SSH MSG CHANNEL REQUEST消息格式中的 请求类型 有以下11种 伪终端请求 X11请求发送环境变量启动shell启动可执行命令启动子系统窗口更改数据流控制信号退出状态退出信号 5 7 3转发TCP IP连接通道操作1 TCP IP端口转发原理 用于保护SMTP IMAP等应用安全 5 7 3转发TCP IP连接通道操作2 TCP IP端口转发流程 如何使用TCP IP端口转发功能 若SSH客户端向服务器转发连接 不必提出请求若SSH客户端需要服务器将到达其某个端口的连接转发到本地 则必须使用 全局 请求消息SSH MSG GLOBAL REQUEST明确提出请求 格式见p 175图5 22 以通告对方接受的IP地址和端口号 同时使用该消息取消端口转发功能 5 8SSH应用 SSH的两类应用 安全的交互式会话或远程执行命令 SSH连接协议已有详细定义 典型应用有 SSH文件传输协议SFTP 基于SSH2 是SSH的子系统 启动过程 使用SSH MSG CHANNE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国红外线额温量测器项目投资可行性研究报告
- 2025年中国等长杠杆市场调查研究报告
- 2025年中国离心喷雾造粒干燥机市场现状分析及前景预测报告
- 2025年中国矿硅水泥项目投资可行性研究报告
- 2025年中国电子起升接触器项目投资可行性研究报告
- 2025年中国甲氧基乙酸酐市场调查研究报告
- 2025年中国环氧自流平地坪漆项目投资可行性研究报告
- 2025年中国法院信息管理系统市场调查研究报告
- 阳城公务员考试题目及答案
- 监理师考试试题及答案
- 中国典籍英译概述课件
- 【MOOC】航空发动机结构分析与设计-南京航空航天大学 中国大学慕课MOOC答案
- 红旅赛道未来规划
- 第七届江苏技能状元大赛无人机应用技术项目技术文件
- 带电作业施工方案
- 宏定义与跨平台开发
- 大学生防艾健康教育学习通超星期末考试答案章节答案2024年
- 腰椎病护理措施
- 甲状腺的科普宣教课件
- 手术室环境清洁与消毒课件
- 机器设备抵押借款合同模版
评论
0/150
提交评论