下面我们就主要讲解SNMPv3的报文格式以及基于USM的认证和加密过程!

1、SNMPv3的消息格式

如下图1:

图 1

其中,整个SNMPv3消息可以使用认证机制,并对EngineID、ContextName、PDU消息体部分进行加密。RequestID、MaxSize、Flags、SecurityModel、SecurityParameters构成SNMPv3消息头。

报文中的主要字段定义如下:

RequestID:请求报文的序列号。

MaxSize:消息发送者所能够容纳的消息最大字节,同时也表明了发送者能够接收到的最大字节数。

Flags:消息标识位,占一个字节。

SecurityModel:消息的安全模型值,取值为0~3。0表示任何模型,1表示采用SNMPv1安全模型,2表示采用SNMPv2c安全模型,3表示采用SNMPv3安全模型。

ContextEngineID:唯一识别一个SNMP实体。对于接收消息,该字段确定消息该如何处理;对于发送消息,该字段在发送一个消息请求时由应用提供。

ContextName:唯一识别在相关联的上下文引擎范围内部特定的上下文。

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

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

参考

SNMP学习笔记之SNMPv3的报文格式以及基于USM的认证和加密过程的更多相关文章

  1. SNMP学习笔记之SNMPv3报文认证和加密

    下面主要的内容就是SNMPv3的加密和认证过程! USM的定义为实现以下功能: 鉴别 数据加密 密钥管理 时钟同步化 避免延时和重播攻击 1.UsmSecurityParameters(安全参数) 安 ...

  2. SNMP学习笔记之SNMPv3的配置和认证以及TroubleShooting

    0x00 增加snmp v3用户 增加用户的时候,必须要停止SNMP服务. # service snmpd stop # net-snmp-config --create-snmpv3-user -r ...

  3. Spring MVC 学习笔记11 —— 后端返回json格式数据

    Spring MVC 学习笔记11 -- 后端返回json格式数据 我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点: 1. JSON的全称是"JavaScript ...

  4. Apollo学习笔记(一):canbus模块与车辆底盘之间的CAN数据传输过程

    Apollo学习笔记(一):canbus模块与车辆底盘之间的CAN数据传输过程 博主现在从车载自组网信道分配和多跳路由转向了自动驾驶,没啥经验,想快些做出来个Demo还是得站在巨人的肩膀上才行,我选择 ...

  5. SNMP学习笔记之SNMP报文以及不同版本(SNMPv1、v2c、v3)的区别

    本篇文章将重点分析SNMP报文,并对不同版本(SNMPv1.v2c.v3)进行区别! 四.SNMP协议数据单元 在SNMP管理中,管理站(NMS)和代理(Agent)之间交换的管理信息构成了SNMP报 ...

  6. SNMP学习笔记之SNMP报文协议详解

    0x00 简介 简单网络管理协议(SNMP)是TCP/IP协议簇的一个应用层协议.在1988年被制定,并被Internet体系结构委员会(IAB)采纳作为一个短期的网络管理解决方案:由于SNMP的简单 ...

  7. SNMP学习笔记之SNMP4J介绍(Java)

    0x00 SNMP4J介绍 SNMP4J是一个用Java来实现SNMP(简单网络管理协议)协议的开源项目.它支持以命令行的形式进行管理与响应.SNMP4J是纯面向对象设计与SNMP++(用C++实现S ...

  8. XML学习笔记(二)-- DTD格式规范

    标签(空格分隔): 学习笔记 XML的一个主要目的是允许应用程序之间自由交换结构化的数据,因此要求XML文档具有一致的结构.业务逻辑和规则.可以定义一种模式来定义XML文档的结构,并借此验证XML文档 ...

  9. SNMP学习笔记之SNMP简单概述

    0x00 SNMP简单概述 0.1.什么是Snmp SNMP是英文"Simple Network Management Protocol"的缩写,中文意思是"简单网络管理 ...

随机推荐

  1. IntelliJ IDEA学习记录

    一.下载 地址:官网下载地址 二.安装 运行安装程序,一路下一步.注意选择安装路径. 三.基本概念 project:相当于donet中的解决方案(solution),eclipse中的工作空间(wor ...

  2. ionic 下拉选择框中默认显示传入的参数

    开发过程当中遇到一个有趣的问题,如果我在第一个页面需要把 item { "ownerId" : 1 } 传递给第二个页面,并挂在$scope下 $scope.item = $sta ...

  3. 得到scp命令的完整路径

    奇怪的crontab 遇上shell scp不执行了-CSDN论坛 https://bbs.csdn.net/topics/390593780

  4. 阿里云短信发送服务SDK-Python3

    本文提供阿里云的短信发送服务SDK,使用Python3实现. # -*- coding: utf-8 -*- # pip install requests import requests import ...

  5. 20144306《网络对抗》Web安全基础实践

    1  实验内容 SQL注入攻击 XSS攻击 CSRF攻击 2  实验过程记录 2.1WebGoat说明与安装 关于WebGoat WebGoat是OWASP组织研制出的用于进行web漏洞实验的应用平台 ...

  6. sql server 以10分钟分组 统计人数

    请问针对时间段从每天早上7点开始统计每十分钟人 解决思路: 我以前做过一个关于月份的,是说每3个月以分组,其实是一样的.不过可能啊,整体数据量大会有问题.如果你只是求一天的,那绝对没问题.[1]如果只 ...

  7. UITextField输入中文

    [self.rightTF addTarget:self action:@selector(rightTFValueChange:) forControlEvents:UIControlEventEd ...

  8. 自定义WordPress文件上传路径

    自WordPress 3.5版本开始,隐藏了后台媒体设置页面的“默认上传路径和文件的完整URL地址”选项,可以通过下面的代码将该选项调出来. 将下面的代码添加到当前主题functions.php文件中 ...

  9. POJ3009:Curling 2.0(dfs)

    http://poj.org/problem?id=3009 Description On Planet MM-21, after their Olympic games this year, cur ...

  10. POJ:3083 Children of the Candy Corn(bfs+dfs)

    http://poj.org/problem?id=3083 Description The cornfield maze is a popular Halloween treat. Visitors ...