




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SNMP 协议发展及协议发展及 v3 版本安全机制介绍版本安全机制介绍 一一 SNMP 协议协议 1 什么是什么是 SNMP 协议协议 SNMP Simple Network Management Protocol 简单网络管理协议是用 来管理网络上的节点 包括工作站 路由器 交换机 集线器和其他的外围设备 SNMP 在 OSI 模型中是一个应用层协议 使用 UDP 封装进行传输 网络管理者可 以使用 SNMP 进行检索 修改信息 寻找 诊断故障 管理网络性能 发现和解决 网络问题 规划网络的增长 它采用轮询和中断机制 提供最基本的功能集 SNMP 在 TCP IP 协议族中的地位如下图 SNMP UDP IP 链路层协议 硬件 2 SNMP 网络架构网络架构 SNMP 网络架构由三部分组成 NMS Agent 和 MIB NMS Agent 和 MIB 之间的关系如下图所示 N NM MS S S SN NM MP P A AG GE EN NT T M MI IB B 网网络络管管理理系系统统 被被管管对对象象 A AG GE EN NT T M MI IB B 被被管管对对象象 A AG GE EN NT T M MI IB B 被被管管对对象象 S SN NM MP P S SN NM MP P 2 1 NMS Network Management Station NMS 的角色是网络中的管理者 是一个利用 SNMP 协议对网络设备进行管理和 监视的系统 NMS 可以向 Agent 发出请求 查询或修改一个或多个具体的参数值 同时 NMS 可以接收 Agent 主动发送的 Trap 信息 以获知被管理设备当前的状态 2 2 Agent Agent 是网络设备中的一个应用模块 Agent 接收到 NMS 的请求信息后 完 成查询或修改操作 并把操作结果发送给 NMS 完成响应 同时 当设备发生故障 或者其他事件的时候 Agent 会主动发送 Trap 信息给 NMS 通知设备当前的状态 变化 2 3 MIB Management Information Basess 任何一个被管理的资源都可以表示成一个对象 MIB 是被管理对象的集合 它 定义了被管理对象的一系列属性 对象的名称 对象的访问权限和对象的数据类型等 每个 Agent 都有自己的 MIB MIB 也可以看作是 NMS 和 Agent 之间的一个接口 通过这个接口 NMS 可以对 Agent 中的每一个被管理对象进行读 写操作 从而达 到管理和监控设备的目的 MIB 是以树状结构进行存储的 树的节点表示被管理对象 它可以用从根开始 的一条路径唯一地识别 这条路径就称为 OID Object Identifier 如下图所示 管理对象 system 可以用一串数字 1 3 6 1 2 1 1 唯一标识 这串数字就是 system 的 OID 子树可以用该子树根节点的 OID 来标识 如以 private 为根节 点的子树的 OID 为 private 的 OID 1 3 6 1 4 3 SNMP 版本版本 SNMP 主要有 SNMPv1 SNMPV2c SNMPv3 几种常用的版本 3 1 SNMPv1 SNMPv1 是 SNMP 协议的最初版本 它的 MIB 比较简单 且存在较多安全缺 陷 所以网络管理功能比较受限 SNMPv1 采用团体名认证 团体名的作用类似于 密码 用来限制 NMS 对 Agent 的访问 如果 SNMP 报文携带的团体名没有得到 NMS Agent 的认可 该报文将被丢弃 3 2 SNMPv2c SNMPv2c 也采用团体名认证 在兼容 SNMPv1 的同时又扩充了 SNMPv1 的 功能 它提供了更多的操作类型 GetBulk 操作等 支持更多的数据类型 Counter32 等 提供了更丰富的错误代码 能够更细致地区分错误 3 3 SNMPv3 SNMPv3 主要在安全性方面进行了增强 它采用了 USM 和 VACM 技术 USM 提供了认证和加密功能 VACM 确定用户是否允许访问特定的 MIB 对象以及访问方 式 本文第二节主要介绍 USM 安全模型 3 3 1 USM 基于用户的安全模型 基于用户的安全模型 USM 引入了用户名和组的概念 可以设置认证和加密功能 认证用于验证报文 发送方的合法性 避免非法用户的访问 加密则是对 NMS 和 Agent 之间传输的报 文进行加密 以免被窃听 通过有无认证和有无加密等功能组合 可以为 NMS 和 Agent 之间的通信提供更高的安全性 3 3 2 VACM 基于视图的访问控制模型 基于视图的访问控制模型 VACM 技术定义了组 安全等级 上下文 MIB 视图 访问策略五个元素 这 些元素同时决定用户是否具有访问的权限 只有具有了访问权限的用户才能管理操作 对象 在同一个 SNMP 实体上可以定义不同的组 组与 MIB 视图绑定 组内又可以 定义多个用户 当使用某个用户名进行访问的时候 只能访问对应的 MIB 视图定义 的对象 4 SNMP 操作操作 SNMP 支持多种操作 主要为以下几种基本操作 Get 操作 NMS 使用该操作从 Agent 获取一个或多个参数值 GetNext 操作 NMS 使用该操作从 Agent 获取一个或多个参数的下一个 参数值 Set 操作 NMS 使用该操作设置 Agent 一个或多个参数值 Response 操作 Agent 返回一个或多个参数值 该操作是前面三种操 作的响应 Trap 操作 Agent 主动发出的操作 通知 NMS 有某些事情发生 执行前四种操作时设备使用 UDP 协议采用 161 端口发送报文 执行 Trap 操作 时设备使用 UDP 协议采用 162 端口发送报文 5 SNMP 报文报文 根据 SNMP 的不同版本和不同操作 报文格式也有所不同 5 1 SNMPv1 报文报文 SNMPv1 消息主要由版本号 团体名 协议数据单元几部分构成 其中 报文 中的主要字段定义如下 Version SNMP 版本 Community 团体名 用于 Agent 与 NMS 之间的认证 团体名有可读 和可写两种 如果是执行 Get GetNext 操作 则采用可读团体名进行认 证 如果是执行 Set 操作 则采用可写团体名进行认证 Request ID 用于匹配请求和响应 SNMP 给每个请求分配全局唯一的 ID Error status 用于表示在处理请求时出现的状况 包括 noError tooBig noSuchName badValue readOnly genErr Error index 差错索引 当出现异常情况时 提供变量绑定列表 Variable bindings 中导致异常的变量的信息 Variable bindings 变量绑定列表 由变量名和变量值对组成 enterprise Trap 源 生成 Trap 信息的设备 的类型 Agent addr Trap 源的地址 Generic trap 通用 Trap 类型 包括 coldStart warmStart linkDown linkUp authenticationFailure egpNeighborLoss enterpriseSpecific Specific trap 企业私有 Trap 信息 Time stamp 上次重新初始化网络实体和产生 Trap 之间所持续的时间 即 sysUpTime 对象的取值 5 2 SNMPv2 报文报文 与 SNMPv1 比较而言 SNMPv2c 新增了 GetBulk 操作报文 GetBulk 操作 所对应的基本操作类型是 GetNext 操作 通过对 Non repeaters 和 Max repetitions 参数的设定 高效率地从 Agent 获取大量管理对象数据 SNMPv2c 修 改了 Trap 报文格式 采用了 SNMPv1Get GetNext Set PDU 的格式 并将 sysUpTime 和 snmpTrapOID 作为 Variable bindings 中的变量来构造报文 5 3 SNMPv3 报文报文 S Se ec cu ur ri it ty y M Mo od de el l C Co on nt te ex xt t E En ng gi in ne eI ID D S Se ec cu ur ri it ty y P Pa ar ra am me et te er rs s C Co on nt te ex xt t N Na am me e S SN NM MP P P PD DU U V Ve er rs si io on nR Re eq qu ue es st tI ID DF Fl la ag gs sM Ma ax xS Si iz ze e SNMPv3 修改了消息的格式 但是 PDU 部分的格式同 SNMPv2c 是保持一致 的 其中 整个 SNMPv3 消息可以使用认证机制 并对 EngineID ContextName PDU 消息体部分进行加密 RequestID MaxSize Flags SecurityModel SecurityParameters 构成 SNMPv3 消息头 报文中的主要字段定义如下 MaxSize 消息发送者所能够容纳的消息最大字节 同时也表明了发送者能 够接收到的最大字节数 Flags 消息标识位 占一个字节 只有最低的三个比特位有效 比如 0 x0 表 示不认证不加密 0 x1 表示认证不加密 0 x3 表示认证加密 SecurityModel 消息的安全模型值 取值为 0 3 0 表示任何模型 1 表 示采用 SNMPv1 安全模型 2 表示采用 SNMPv2c 安全模型 3 表示采用 SNMPv3 安全模型 ContextEngineID 唯一识别一个 SNMP 实体 对于接收消息 该字段确 定消息该如何处理 对于发送消息 该字段在发送一个消息请求时由应用提 供 ContextName 唯一识别在相关联的上下文引擎范围内部特定的上下文 SecurityParameters 在下面第二节中详细介绍 二二 SNMPv3 协议的安全机制协议的安全机制 1 USM User based Security Model 网络管理面临的安全威胁有 消息篡改 伪装 消息流修改 延迟 重放 重定 向 泄密 拒绝服务和流量分析 其中前 4 种是 SNMP 需要防范的 SNMPv3 中 的安全子系统采用基于用户的安全模型 USM 为 SNMP 消息的传输提供如下服 务 来源认证 完整性鉴别 消息流篡改鉴别和数据保密 安全性服务包括认证和加密 分为三个安全层次 既无认证又无保密 NoAuthNoPriv 有认证但无保密 AuthNoPriv 有认证又有保密 AuthPriv 为了提供更强有力的安全保障 SNMPv3 的体系结构比以前版本更加复杂 下 图是使用 USM 模型的 SNMP 消息格式 相关的安全域含义如下 V Ve er rs si io on n R Re eq qu ue es st tI ID D M Ma ax xS Si iz ze e P Pr ri iv va ac cy yP Pa ar ra am me et te er rs s A Au ut th he en nt ti ic ca at ti io on nP Pa ar ra am me et te er rs s U Us se er rN Na am me e A Au ut th ho or ri it ta at ti iv ve eE En ng gi in ne eT Ti im me e A Au ut th ho or ri it ta at ti iv ve eE En ng gi in ne eB Bo oo ot ts s S SN NM MP P P PD DU U C Co on nt te ex xt t N Na am me e C Co on nt te ex xt t E En ng gi in ne eI ID D A Au ut th ho or ri it ta at ti iv ve eE En ng gi in ne eI ID D S Se ec cu ur ri it ty y M Mo od de el l F Fl la ag gs s USM 安 全 参 数 消 息 头 加密 的作 用域 SecurityParameters 包括以下主要字段 AuthoritativeEngineID 消息交换中权威 SNMP 的 snmpEngineID 用于 SNMP 实体的识别 认证和加密 该取值在 Trap Response Report 中是源端的 snmpEngineID 对 Get GetNext GetBulk Set 中是 目 的端的 snmpEngineID AuthoritativeEngineBoots 消息交换中权威 SNMP 的 snmpEngineBoots 表示从初次配置时开始 SNMP 引擎已经初始化或 重 新初始化的次数 AuthoritativeEngineTime 消息交换中权威 SNMP 的 snmpEngineTime 用于时间窗判断 UserName 用户名 消息代表其正在交换 NMS 和 Agent 配置的用户名 必须保持一致 AuthenticationParameters 认证参数 认证运算时所需的密钥 如果没 有使用认证则为空 PrivacyParameters 加密参数 加密运算时所用到的参数 如果没有使用 加密则为空 USMSecurityParametersSyntax DEFINITIONS IMPLICIT TAGS BEGIN UsmSecurityParameters SEQUENCE global User based security parameters msgAuthoritativeEngineID OCTET STRING msgAuthoritativeEngineBoots INTEGER 0 2147483647 msgAuthoritativeEngineTime INTEGER 0 2147483647 msgUserName OCTET STRING SIZE 0 32 authentication protocol specific parameters msgAuthenticationParameters OCTET STRING privacy protocol specific parameters msgPrivacyParameters OCTET STRING END USM 的用户概念就是每一个消息都是代表一个用户在 SNMP 实体之间传输的 消息中携带有该用户的用户名 SNMP 实体使用该用户的属性信息 对收发的消息 进行安全处理 通信双方的 SNMP 引擎为每个用户维护如下属性 userName securityName authProtocol 和 authKey 用户使用的鉴别协议和 密钥 privProtocol 和 privKey 用户使用的加 解密协议和密钥 为了防范消息被重放 延迟和重定向 USM 指定通信双方 SNMP 引擎之一为 权威引擎 authoritative snmpEngine 另一方为非权威引擎 如果 SNMP 消 息携带的为期望响应的 PDU 如 get set informRequest 那么接收方是权威 的 发送方是非权威的 如果 SNMP 消息携带的为不期望响应的 PDU 如 trap response 那么发送方是权威的 接收方是非权威的 简单讲 对于管理 站和代理之间的通信 管理站是非权威的 代理是权威的 2 安全算法介绍安全算法介绍 USM 使用消息鉴别码 MAC 对传输的消息进行来源认证和完整性鉴别 防止 用户假冒和消息篡改 保证消息来源可靠 数据完整 可用的鉴别协议有 HMAC MD5 96 HMAC SHA1 96 或其它 使用加密方法保证消息在传输中不被泄漏 可用的加密协议有 CBC DES CFB AES 或其它 使用松散时间同步和时间戳防止消息被延迟 重放 HMAC 是一种使用散列函数加密的消息验证机制 散列消息鉴别码 HMAC 通过捆绑一个可用于加密的散列函数 这种加密机制的强度取决于所用散列函数的特 性 目前常用的散列函数有 MD5 SHA 1 等 MD5 和 SHA 1 都是数据加密算法 算法的思想是接收一段明文 然后以一种 不可逆的方式将它转换成一段 通常更小 密文 也可以简单的理解为取一串输入码 称为预映射或信息 并把它们转化为长度较短 位数固定的输出序列即散列值 也称为信息摘要或信息认证代码 的过程 因为 MD5 和 SHA 1 均由 MD4 导出 彼此很相似 相应的 他们的强度和其他特性也是相似 但还有以下几点不同 对强行攻击的安全性 最显著和最重要的区别是 SHA 1 摘要比 MD5 摘要长 32 位 MD5 将任意长度的 字节串 映射为一个 128bit 的大整数 SHA 1 是映射为 160bit 的大整数 使用强行技术 产生任何一个报文使其摘要等于给定报摘要的难 度对 MD5 是 2 128 数量级的操作 而对 SHA 1 则是 2 160 数量级的操作 这 样 SHA 1 对强行攻击有更大的强度 但是在相同的硬件上 SHA 1 的运行速度比 MD5 慢 DES 算法为密码体制中的对称密码体制 又被成为美国数据加密标准 是 1972 年美国 IBM 公司研制的对称密码体制加密算法 明文按 64 位进行分组 密 钥长 64 位 密钥事实上是 56 位参与 DES 运算 第 8 16 24 32 40 48 56 64 位是校验位 使得每个密钥都有奇数个 1 分 组后的明文组和 56 位的密钥按位替代或交换的方法形成密文组的加密方法 AES 是美国国家标准技术研究所 NIST 旨在取代 DES 的 21 世纪的加密标准 AES 的基本要求是 采用对称分组密码体制 密钥长度的最少支持为 128 192 256 分组长度 128 位 算法应易于各种硬件和软件实现 3 USM 安全处理过程安全处理过程 在发送或接收消息时 消息处理子系统通过调用 USM 模块进行安全处理 处理 分为消息发送和消息接收两种情况 具体处理过程如下 对于生成的流出消息 请求 响应 调用者向 USM 提供参数 globalData 消息头部 securityEngi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 赡养协议书范文
- 暑假培优练:平抛运动(学生版)-2025高一物理暑假专项提升(人教版)
- 人教版八年级英语上册Unit4标准检测卷(含答案)
- 新解读《GB-T 18508-2014城镇土地估价规程》
- 图形的变换-2023学年九年级数学专项复习(沪教版)
- 重庆创业红娘培训课件
- 老年人肿瘤课件
- 《商务英语阅读3》课程简介与教学大纲
- 《大学英语2A》课程简介与教学大纲
- 醉翁亭记课件
- 《应用语文(第3版)》技工院校语文课程全套教学课件
- 《石油钻采设备》课件
- 老人居家治疗指南解读
- 瓦斯超限撤人流程及应急处置培训
- 创新园管理制度
- 小学一年级第一学期数学兴趣小组计划
- 第五届绵阳市职业技能大赛赛项技术文件-健康和社会照护
- 肾切除患者护理疑难病例
- 人力管理咨询合同范本
- 2025译林版高中英语高考复习必背全七册单词表(精校打印)
- 2025年变压器绝缘材料项目可行性研究报告
评论
0/150
提交评论