`

SNMP v3中的VACM和USM是什么意思?分别有什么作用?

 
阅读更多

原文地址:http://blog.sina.com.cn/s/blog_557c193c0100r02h.html

USM (基于用户安全模型 RFC 2574)
VACM (基于视图访问控制模型 RFC2575)

USM负责鉴别、加密、解密SNMP报文,VACM负责管理MIB数据访问权限。

RFC 2574定义了USM。以前所有版本的SNMP协议都缺乏一个可靠的、一致支持的安全机
制。设计USM时,下述这些典型的安全问题必须得到解决:

1) 信息修改(数据完整性)

   确认数据在传输过程中没有被未授权的实体篡改。

2) 伪装(数据源验证)

   确认数据来自谁,来自哪里,防止未授权的实体伪装后要求对合法用户进行身份
   验证以窃取身份验证信息。

3) 信息泄漏(数据机密性)

   确保未授权的实体无法"有效"监听数据交换过程,交换的数据是经过加密的。

4) 消息流改变(消息时间序列化)

   确保数据按时按序到达,防止未授权的实体改变消息流的顺序

USM利用多用户的概念,要求每个用户均提供密钥进行身份验证、信息加密,最终使
得SNMPv3可以解决如上四种典型安全问题。它指定使用HMAC-MD5和HMAC-SHA进行身份
验证,指定使用CBC-DES进行信息加密。在提交RFC 2574(USM)时,这三种安全协议被
认为是(可接受的)安全的。同时,这个模型允许将来需要时使用新的验证、加密协议。

RFC 2575定义了VACM。VACM引入的概念相当复杂、混乱。SNMPv1和SNMPv2c采用community
string来划分MIB范围、确定访问权限等等。而VACM允许更加严谨的动态的访问控制
模型,易于管理员配置。

配置每个VACM表时应该特别小心。一点微小的错误配置可能导致一个巨大的安全漏洞,
比如潜在允许对敏感数据进行非法访问。应该先在一个测试用网络环境中测试你的配
置,确认无误后再应用到实际网络环境中去。

SNMPv3框架确保了安全子系统和访问控制子系统的模块化,虽然目前USM与VACM分别
被用做安全模块以及访问控制模块,但你可以实现自己的安全模块以及访问控制模块。
将来IETF可能会更新这些模块。无论如何,SNMPv3框架确保新旧模块之间可以平滑过
渡。

分享到:
评论

相关推荐

    SNMP V1 V2 V3版本的联系和区别 ..docx

    SNMP v3 在前面的版本上增加了安全能力和远程配置能力,SNMPv3 结构为消息安全和 VACM(View-based Access Control Model)引入了 USM(User-based Security Model)。这个结构支持同时使用不同的安全机制,接入控制...

    snmp v3 introduction

    在SNMP V3中,每个SNMP实体都有一个唯一的标识符——`snmpEngineID`。这个标识符对于确保SNMP实体之间的正确识别至关重要。 - **语法定义**:通过文本约定定义的`OCTET STRING (5..32)`。 - **作用**:`...

    SNMP相关RFC文档

    SNMP(简单网络管理协议)是网络管理领域中广泛使用的一种标准协议,它允许网络管理员监控和管理网络设备。在给定的“SNMP相关RFC文档”中,包含了一系列与SNMP规范相关的RFC(Request for Comments)文档。RFC是...

    通信与网络中的支持SNMP V3的代理平台的设计方案

    SNMP V3引入了安全子系统(USM)和访问控制子系统(VACM),确保了消息的安全性与访问控制。USM负责消息的认证和私密化,防止未经授权的访问和篡改;VACM则控制对特定OID的操作权限。 USM认证与私密化流程涉及以下...

    snmp v3介绍

    ### SNMP V3 介绍 简单网络管理协议(SNMP,Simple Network Management Protocol)是一种用于收集和组织网络管理信息,并在网络设备之间交换这些管理数据的标准协议。随着网络安全性的提高,SNMP版本也在不断进化,...

    基于SNMP4J的SNMP操作实现代码

    SNMPv3引入了安全模型和认证机制,如USM(User-based Security Model)和VACM(View-based Access Control Model)。SNMP4J支持这些特性,允许开发者定义用户、安全级别、加密和认证参数,以确保通信的安全性。 8....

    SNMPv3 USM 的一篇文章(中文翻译)

    USM负责SNMP包的认证、加密和解密,而VACM负责管理MIB数据的访问。 USM的规范定义在RFC 2574中。以前版本的SNMP有一个众所周知的弱点,即缺乏一个坚固的一致的安全方案。在设计USM时,这些典型的安全威胁必须被解决...

    snmp4j-2.3.0源码等

    对于SNMP v3,SNMP4J实现了USM、V1/2 Community-Based Security和Vacm Access Control Model。 5. **MIBs**: MIB(Management Information Base)是定义网络设备管理信息的结构化数据。SNMP4J使用MIB-2库来处理...

    snmp++v3.3.4

    在安全特性方面,SNMP++ v3.3.4支持多种安全模型和协议,如USM(用户安全模型)和VACM(视图访问控制机制)。USM提供了基于密码的安全认证和加密,而VACM则允许精细控制不同用户对网络资源的访问权限。这些特性使得...

    snmp开发入门基础

    SNMP(Simple Network Management Protocol,简单网络管理协议)是网络管理员用来监控和管理网络设备的常用工具。作为初学者,了解SNMP的基础知识是至...在实际操作中,不断实践和调试将有助于进一步提升你的SNMP技能。

    snmp的java实现

    2. SNMP4J:这是一个完全用Java编写的SNMP库,支持SNMPv1、v2c和v3,包括用户安全模型(USM)、视图访问控制机制(VACM)等功能。它还提供了事件监听器,便于处理SNMP请求和响应。 3. SNMP4J-Agent:这个库用于构建...

    nmi.rar_NMI java_nmi_snmp4j_snmp4j agent_snmp4j commerci

    SNMP4J是由Jens Schauder开发的,它完全实现了SNMPv1、v2c和v3,支持USM(用户安全模型)和VACM(视图访问控制机制)。SNMP4J-Agent是SNMP4J的一个子项目,提供了创建自定义SNMP代理的能力。 要使用SNMP4J-Agent,...

    SNMP协议基础,网络学习必备

    通过以上对SNMP协议基础及其在网络管理中的应用的详细介绍,我们可以看到SNMP作为一种成熟的网络管理协议,在确保网络设备的正常运行和维护网络稳定性方面发挥着重要作用。随着技术的进步,SNMP也在不断地发展和完善...

    SNMPv3介绍

    ### SNMPv3详细介绍 #### 一、概述 简单网络管理协议(SNMP)是一种广泛用于管理...尽管当前面临的挑战依然存在,但随着时间的推移和技术的进步,相信SNMPv3将会逐渐成为主流,并在更多的应用场景中发挥重要作用。

    snmp4j-1.9.2a.rar_snmp4j

    1. **SNMP版本支持**:Snmp4j支持SNMPv1、SNMPv2c和SNMPv3,这三个版本分别代表了SNMP协议的发展历程,从较不安全的v1到具有安全特性的v3。 2. **PDU操作**:Snmp4j提供了创建、发送和解析各种PDU类型的能力,包括...

    SNMP学习笔记

    SNMP有三个主要版本:V1、V2C和V3。 - **SNMP V1**:最初版本,采用了简单的团体名(Community Name)认证机制。团体名充当了简单的密码,只有当NMS配置的团体名与被管理设备上的团体名相匹配时,才能进行通信。 - ...

    Java-SNMPSnmpProgrammingGuideViaJava.rar_SNMP

    "Java SNMP学习文档下载"中的指南将详细介绍以上概念,并通过实例演示如何在Java环境中实现SNMP通信,是学习和掌握Java SNMP编程的宝贵参考资料。 通过深入学习和实践这份文档,你将能够利用Java有效地管理网络...

    SNMP4J source code

    7. **Message Processing Model**:SNMPv3引入了不同的消息处理模型,如USM(User-based Security Model)和VACM(View-based Access Control Model),SNMP4J实现了这些模型,以适应不同级别的安全需求。...

    snmpdemo,snmp协议demo

    1. **版本**:SNMP有多个版本,从v1到v3,安全性逐次增强,v1不支持认证和加密,v2c增加了认证,而v3提供了完整的安全模型,包括认证、加密和访问控制。 2. **OID(Object Identifier,对象标识符)**:每个管理...

Global site tag (gtag.js) - Google Analytics