首页 > 技术文章 > 华为交换机配置SNMPV3

Ant-Hanks 2020-11-27 20:50 原文

RFC 2271定义的SNMPv3体系结构,体现了模块化的设计思想,可以简单地实现功能的增加和修改。其特点
适应性强:适用于多种操作环境,既可以管理最简单的网络,实现基本的管理功能,又能够提供强大的网络管理功能,满足复杂网络的管理需求。
扩充性好:可以根据需要增加模块。
安全性好:具有多种安全处理模块。
SNMPv3主要有三个模块:信息处理和控制模块、本地处理模块和用户安全模块。
(1)信息处理和控制模块
信息处理和控制模块(Message Processing And Control Model)在RFC 2272中定义,它负责信息的产生和分析,并判断信息在传输过程中是否要经过代理服务器等。在信息产生过程中,该模块接收来自调度器(Dispatcher)的PDU,然后由用户安全模块在信息头中加入安全参数。在分析接收的信息时,先由用户安全模块处理信息头中的安全参数,然后将解包后的PDU送给调度器处理。
(2)本地处理模块
本地处理模块(Local Processing Model)的功能主要是进行访问控制,处理打包的数据和中断。访问控制是指通过设置代理的有关信息使不同的管理站的管理进程在访问代理时具有不同的权限,它在PDU这一级完成。常用的控制策略有两种:限定管理站可以向代理发出的命令或确定管理站可以访问代理的MIB的具体部分。访问控制的策略必须预先设定。SNMPv3通过使用带有不同参数的原语使用来灵活地确定访问控制方式。
(3)用户安全模块
与SNMPv1和SNMPv2相比,SNMPv3增加了三个新的安全机制:身份验证,加密和访问控制。其中,本地处理模块完成访问控制功能,而用户安全模块(User Security Model)则提供身份验证和数据保密服务。身份验证是指代理(管理站)接到信息时首先必须确认信息是否来自有权的管理站(代理)并且信息在传输过程中未被改变的过程。实现这个功能要求管理站和代理必须共享同一密钥。管理站使用密钥计算验证码(它是信息的函数),然后将其加入信息中,而代理则使用同一密钥从接收的信息中提取出验证码,从而得到信息。加密的过程与身份验证类似,也需要管理站和代理共享同一密钥来实现信息的加密和解密。
下面简要介绍身份验证和加密的数学工具。SNMPv3使用私钥(privKey)和验证密钥(authKey)来实现这两种功能。
身份验证:RFC2104中定义了HMAC,这是一种使用安全哈希函数和密钥来产生信息验证码的有效工具,在互联网中得到了广泛的应用。SNMP使用的HMAC可以分为两种:HMAC-MD5-96和HMAC-SHA-96。前者的哈希函数是MD5,使用128位authKey作为输入。后者的哈希函数是SHA-1,使用160位authKey作为输入。
加密:采用数据加密标准(DES)的密码组链接(CBC)码,使用128位的privKey 作为输入。

snmp v3安全级别有三种,分别为noAuthNoPriv(不认证也不加密)、authNoPriv(认证但是不加密)、authPriv(既认证又加密)
[huawei-5720]snmp-agent group v3 Group_Name ?
  authentication       Specify a security level of AuthNoPriv for this group name
  noauthentication  Specify a security level of NoAuthNoPriv for this group  name
  privacy                   Specify a security level of AuthPriv for this group name

华为5720交换机配置示例,未做ACL限制:

[huawei-5720]dis current-configuration | in snmp
snmp-agent                           ###默认生成
snmp-agent local-engineid 800007DB03F8758842A7F0     ###默认生成
snmp-agent sys-info version v3
snmp-agent group v3 Group_Name privacy read-view isoview write-view isoview notify-view isoview
snmp-agent mib-view included isoview iso
snmp-agent usm-user v3 huawei
snmp-agent usm-user v3 huawei group Group_Name
snmp-agent usm-user v3 huawei authentication-mode sha cipher %^%#'VhxYQ-WG;)-OrRN8ob2l1MVE8ji-<=!a0L_uox:%^%#
snmp-agent usm-user v3 huawei privacy-mode aes128 cipher %^%#[XC{~='PXE3(X"-G@>u%@tG-V3*>H5^A+U$1deG8

信息读取测试

[root@test ~]# snmpwalk -v 3 -u huawei -a sha -A huawei@123 -x aes128 -X huawei@123 -l authPriv 192.168.0.1  1.3.6.1.2.1.1.5
SNMPv2-MIB::sysName.0 = STRING: huawei-5720
[root@test ~]# snmpwalk -v 3 -u huawei -a sha -A huawei@123 -x aes128 -X huawei@123 -l authPriv 192.168.0.1 SNMPv2-MIB::sysDescr.0
SNMPv2-MIB::sysDescr.0 = STRING: S5720-28X-PWR-SI-AC 
Huawei Versatile Routing Platform Software 
 VRP (R) software,Version 5.170 (S5720 V200R019C10SPC500) 
 Copyright (C) 2007 Huawei Technologies Co., Ltd.
---------------------------------------------------------
-u : 用户名
-a : 验证协议
-A : 验证密码
-x : 隐私协议
-X : 隐私秘钥
-l : SNMPv3安全级别

推荐阅读