SNMPv3协议电子教案

上传人:go****e 文档编号:137415149 上传时间:2020-07-08 格式:PPT 页数:58 大小:1.32MB
返回 下载 相关 举报
SNMPv3协议电子教案_第1页
第1页 / 共58页
SNMPv3协议电子教案_第2页
第2页 / 共58页
SNMPv3协议电子教案_第3页
第3页 / 共58页
SNMPv3协议电子教案_第4页
第4页 / 共58页
SNMPv3协议电子教案_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《SNMPv3协议电子教案》由会员分享,可在线阅读,更多相关《SNMPv3协议电子教案(58页珍藏版)》请在金锄头文库上搜索。

1、,SNMPv3协议介绍,目录,1 SNMPv3的基本概念 2 SNMPv3的体系结构 3 SNMPv3的安全模型 4 SNMPv3的访问控制模型,1 SNMPv3的基本概念,SNMPv3协议的主要特点,SNMP协议的第三个版本是SNMPv3,没定义新的网管操作、消息类型与PDU结构,它的改进主要表现在安全性方面 SNMPv3协议可看作一个安全规范,它定义一种标准化的SNMP框架结构,为两种SNMPv1与SNMPv2消息提供各种安全功能,SNMPv3系统的基本结构,SNMPv3系统采用客户机/服务器模式,SNMPv3的网管操作,普通操作:由SNMP管理器向代理发送,需要SNMP代理返回响应的网管

2、操作 通告操作:SNMP管理器向其它管理器发送,需要SNMP管理器返回响应的网管操作 告警操作:由SNMP代理主动向管理器发送,不需要SNMP管理器返回响应的网管操作,SNMPv3的安全机制,数据认证 防止SNMP消息在传输过程中被篡改,或SNMP消息来自伪造的SNMP实体 数据加密 防止SNMP消息在传输过程中被窃听,2 SNMPv3的体系结构,2.1 SNMPv3的框架结构,SNMPv3实体的主要类型 管理器(Manager):请求发送与响应接收 代理(Agent):请求接收与响应发送 代理服务器(Proxy):请求与响应转发,SNMPv3实体的框架结构,SNMPv3实体的组成部分,SNM

3、P实体由一个SNMP引擎与多个应用程序构成 SNMP引擎是SNMP实体的核心部分,负责提供各版本SNMP消息的处理功能,主要包括发送、接收、认证、加密与访问控制等 应用程序是SNMP实体的上层部分,负责提供高层对SNMP消息的发送与接收功能,SNMP引擎的组成部分,分配器模块(Dispatcher Model):负责SNMP消息的发送与接收 消息处理模块(Message Processor Model):负责SNMP消息的分析与处理 安全模块(Security Model):负责SNMP消息的认证与加密 访问控制模块(Access Control Model):负责MIB中对象的访问控制,应用

4、程序的主要类型(1),命令生成器(Command Generator):用于SNMP管理器,生成SNMPv1与SNMPv2普通请求,接收SNMPv1与SNMPv2响应 命令接收器(Command Receiver):用于SNMP代理,接收SNMPv1与SNMPv2普通请求,生成SNMPv1与SNMPv2响应,应用程序的主要类型(2),通告生成器(Inform Generator):用于SNMP管理器或SNMP代理,为代理生成SNMPv1与SNMPv2告警请求与SNMPv2通告请求,接收SNMPv2通告响应 通告接收器(Inform Receiver):用于SNMP管理器,接收SNMPv1与SN

5、MPv2告警请求与SNMPv2通告请求,生成SNMPv2通告响应 代理转发器(Proxy Forwarder):用于SNMP代理或代理服务器,转发接收的SNMP命令与响应,SNMPv3管理器的基本结构,SNMPv3代理的基本结构,2.2 SNMPv3的服务接口,应用程序与SNMP引擎的分配器模块之间,以及SNMP引擎中的不同模块之间,通过服务接口(Service Interfere)进行通信 服务接口由多个事先定义好的原语组成。每个原语包括固定的语法格式与数据元素,用于应用程序与不同模块之间实现某种功能,SNMPv3协议的主要原语(1),分配器模块的原语,SNMPv3协议的主要原语(2),消息

6、处理模块与访问控制模块的原语,SNMPv3协议的主要原语(3),安全模块的原语,2.3 SNMPv3的应用程序,命令生成器 命令接收器 通告生成器 通告接收器 代理转发器,命令生成器的工作流程,命令接收器的工作流程,2.4 SNMPv3的MIB结构,SNMPv3 MIB中新增加的组 snmpFrameworkMIB:定义框架结构的管理对象 snmpMDPMIB:定义消息处理模块的管理对象 snmpTargetMIB、snmpNotificationMIB与snmpProxyMIB:定义应用程序的管理对象 snmpUsmMIB:定义USM模型的管理对象 snmpVacmMIB:定义VACM模型的

7、管理对象,SNMPv3的自定义类型,SnmpSecurityModel:表示安全模型的整数 SnmpMessageProcessingModel:表示消息处理模型的整数 SnmpEngineID:表示SNMP引擎标识符的字符串 SnmpSecurityLevel:表示安全级别的字符串 SnmpAdminString:表示管理信息的字符串,snmpFrameworkMIB组的基本结构,3 SNMPv3的安全模型,3.1 USM的基本概念,SNMP消息的篡改与伪造,用户试图非法获得网络设备的配置信息,或非法对网络设备进行网管操作,这是SNMP面临的主要威胁 SNMP消息的窃听、延迟、重发与重排序,

8、用户试图获得SNMP消息的有用信息,或影响网络设备的正常使用,这是SNMP面临的次要威胁,SNMPv3在安全方面的改进,SNMPv1与SNMPv2采用基于团体的安全模型,无法解决上述的安全威胁 针对SNMPv1与SNMPv2在安全方面的不足,SNMPv3提出基于用户的安全模型(USM,User-based Security Model) RFC3414定义了SNMPv3的USM模型,USM安全模型的基本结构,SNMPv3消息的基本结构,SNMPv3消息分为4个部分:版本、全局头部、安全参数与PDU部分,SNMPv3消息的主要字段(1),SNMPv3消息的主要字段(2),SNMPv3的安全级别,

9、不认证与不加密(NoAuthNoPriv) 只认证但不加密(AuthNoPriv) 认证与加密(AuthNoPriv),3.2 USM的工作原理,数据认证服务:由认证模块实现,防止SNMP消息篡改或伪造, 数据加密服务:由加密模块实现,防止SNMP消息窃听或泄漏 数据时序服务:由时序模块实现,防止SNMP消息延迟、重发与重排序,数据认证的工作原理,USM模型支持的认证协议,HMAC-MD5-96:用MD5算法作为散列函数,将128位的认证密钥作为HMAC算法的输入,并从生成的128位输出中截取96位作为摘要 HMAC-SHA-96:用SHA-1算法作为散列函数,将160位的认证密钥作为HMAC

10、算法的输入,并从生成的160位输出中截取96位作为摘要,发送方的摘要计算过程,authKey后附加48个0 x00,生成extendedAuthKey 64个0 x36生成iPAD,将iPAD与extendedAuthKey异或,生成K1 64个0 x5C生成oPAD,将oPAD与extendedAuthKey异或,生成K2 wholeMsg后附加K1,计算第一个MD5摘要 第一个MD5摘要后附加K2,计算第二个MD5摘要 第二个MD5摘要前12字节生成摘要,并保存在msgAuthenticationParameters字段中,接收方的摘要计算过程,authKey后附加48个0 x00,生成e

11、xtendedAuthKey 64个0 x36生成iPAD,将iPAD与extendedAuthKey异或,生成K1 64个0 x5C生成oPAD,将oPAD与extendedAuthKey异或,生成K2 wholeMsg后附加K1,计算第一个MD5摘要 第一个MD5摘要后附加K2,计算第二个MD5摘要 第二个MD5摘要前12字节生成摘要,并与msgAuthenticationParameters字段值比较,认证密钥的生成过程,反复输入用户密码,必要时截取最后字符,直到生成一个长220的digest0 digest0用MD5或SHA-1生成digest1,MD5生成digest1为16字节,S

12、HA-1生成digest1为20字节 digest1后附加权威引擎标识符,再附加digest1生成digest2 对digest2用MD5或SHA-1生成digest3,MD5生成digest3为16字节,SHA-1生成digest3为20字节, 这就是认证密钥,认证密钥的更新方法,USM用usmUserTable中的keyChange对象,管理器SetRequest该对象后,代理自动更新密钥 发送方的处理过程:在随机数R后附加旧密钥,用MD5或SHA-1生成摘要,保存在T中;将T与新密钥异或生成delta;在R后附加delta,发送到接收方 接收方的处理过程:在R后面附加旧密钥,用MD5或S

13、HA-1生成摘要,保存在T中;将T与delta异或生成新密钥,数据加密的工作原理,发送方的数据加密过程,加密数据必须是8字节的整数倍,如果不符合条件必须进行填充 加密数据被分割成8字节的明文块 第一个明文块与初始化向量异或生成密文块,其它明文块与前一个密文块异或生成密文块,直至所有明文块处理完毕,接收方的数据解密过程,计算解密数据的长度,如果解密数据不是8字节整数倍,说明得到的解密数据出错 解密数据被分割成8字节的密文块 第一个密文块与初始化向量异或生成明文块,其它密文块与前一个明名文块异或生成明文块,直至所有密文块处理完毕,DES密钥的生成方法,DES用的加密与解密密钥称为DES密钥,它通过

14、初始计算出的私有密钥获得 私有密钥通过通信双方都知道的密码计算,在计算密钥时使用MD5算法生成长度为16字节的digest1 DES密钥取私有密钥的前8字节,由于DES规定的密钥长度为7字节,因此可将每字节的最后一位忽略,填充数据的生成方法,填充数据用于区分由相同的DES密钥加密的数据 填充数据由4字节的snmpEngineBoots与4字节的整数构成,该整数由发送方引擎启动时生成 填充数据保存在msgPrivacyParameters字段 由私有密钥后8字节与填充数据异或,生成初始化向量(IV),数据时效性的概念,USM提供对SNMP消息的数据时序服务,防止SNMP消息延迟或重发到其它实体

15、USM定义的时序性参数 msgAuthoritativeEngineID msgAuthoritativeEngineBoots msgAuthoritativeEngineTime,权威引擎与非权威引擎,对于普通请求、普通响应与告警请求,SNMP代理的引擎是权威引擎;对于通告请求,接收请求的SNMP管理器的引擎是权威引擎 非权威引擎要与权威引擎保持时间同步,尽量与权威引擎的snmpEngineTime保持一致 非权威引擎与权威引擎的snmpEngineTime值允许有一个最大误差,这个误差称为时间窗口(Time Window),数据时效性的判断方法(1),权威引擎的数据时效性 消息中的msg

16、AuthoritativeEngineBoots大于或小于本地的snmpEngineBoots,或消息中的msgAuthoritativeEngineTime与本地的snmpEngineTime相差超过正负150秒,则认为消息延迟或重发,数据时效性的判断方法(2),非权威引擎的数据时效性 消息中的msgAuthoritativeEngineBoots小于本地的snmpEngineBoots,或消息中的msgAuthoritativeEngineTime与本地的snmpEngineTime相差大于150秒,则认为该消息延迟或被重发,3.3 USM的MIB结构,snmpFrameworkAdmin组提供USM可用的协议,包括认证与加密协议,snmpUsmMIB组的基本结构,snmpUsmMIB组提供USM的相关信息,4 SNMPv3的访问控制模型,4.1 VACM的基本概念,访问控制模

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 其它小学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号