SNMPv3报文

本文深入解析SNMPv3协议,重点介绍其在安全性上的增强,如USM和VACM机制。通过实例展示了SNMPv3报文格式中的关键字段,如RequestID、SecurityModel等,并详细阐述了SNMP实体识别、时间同步以及加密认证过程。同时,通过Wireshark抓包分析了SNMPv3数据交互的步骤,凸显了SNMPv3在网络安全性和数据保密性上的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

相应的数字表示(对象标识符OID,唯一标识一个MIB对象)为:

1.3.6.1.2.1.4.3

snmps树

                       图2 MIB树结构

当网络管理协议在报文中使用MIB变量时,每个变量名后还要加一个后缀,以作为该变量的一个实例。如ipInReceives的实例数字表示为:1.3.6.1.2.1.4.3.0.

需要注意的是,MIB中的管理对象的OID有些需要动态确定,如IP路由表,为了指明地址202.120.86.71的下一站路由(next hop),我们可以引用这样的实例:

iso.org.dod.internet.mgmt.mib.ip. ipRouteTable.ipRouteEntry.ipRouteNextHop.202.120.86.71, 相应的数字表示为:1.3.6.1.2.1.4.21.1.7.202.120.86.71

对于这种动态对象标识的实例,由于无法转换为预先指定的Readkey名称,与飞邻的产品架构冲突(需要动态生成可变Readkey),暂不考虑支持。

 

SNMPv3:在安全性方面进行了增强。采用USM(基于用户--用户名和用户组)和VACM(基于视图)的安全加密控制。

报文格式:

 整个消息可以所以认证机制,并对EnginID、ContextName、PDU消息体部分进行加密。

RequestID、MaxSize、Flags、SecurityModule、SecurityParameters构成SNMPv3的消息头

主要字段意思:

RequestID:请求报文的序列号
MaxSize:消息发送者能够容纳的消息最大字节数
Flags:消息标识位,占一个字节(8位)
SecurityModel:消息安全模型值;0~3.0表示任何模式,1表示SNMPv1安全模型,2表示SNMPv2安全模型
               3表示使用SNMPv3安全模型
ContextEngineID:唯一识别一个SNMP实体,对于接收消息,该字段确定消息该如何处理;
                 对于发送消息,该字段在发送一个消息请求时由应用提供。
ContextName:唯一标示在相关联上下文引擎范围内特定的上下文

SecurityParameter:安全参数包括以下字段。
    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:加密参数,加密运算时所用到的参数,比如DES CBC算法中形成初值IV所用到的取值。如果没有使用加密则为空。

encrypte:加密的。

摘录于:SNMP协议详解-3_程序员赵洋的博客-优快云博客_snmp详解

2、下面根据实际操作,用Wireshark抓取的报文来讲解SNMPv3协议的工作的过程:

说明:192.168.2.110是NMS的ip地址,192.168.2.1是Agent的ip地址

(1)由于SNMPv3进行数据交互的过程中要进行加密和认证,所以NMS首先要从Agent获取AuthoritativeEngineID(标识一个SNMP实体)、AuthoritativeEngineBoots和AuthoritativeEngineTime(同步NMS和Agent时间,保证消息接收的时效性,同时也是用来进行数据认证和加密的参数),如下图2:

                                                                                     图 2

(2)Agent回复NMS请求的参数,回复报文如下图3:

                                                                               图 3

(3)NMS继续向Agent获取AuthoritativeEngineBoots和AuthoritativeEngineTime参数,如下图4:

                                                                                  图 4

(4)Agent对NMS的请求进行响应,如下图5:

                                                                           图 5

(5)下面开始正常数据操作,如下图6:

                                                                              图 6

(6)Agent向NMS响应数据请求,如下图7,传输的数据都进行了加密,可见SNMPv3的安全性:

                                                                              图 7

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值