分享

snmpv3 总结

 kylin_1983 2014-05-15

一、      Agent设置

1)    创建用户(密码不可修改)

创建新用户用如下命令:

rouser [-s SECMODEL] USER [noauth|auth|priv [OID | -V VIEW [CONTEXT]]]

rwuser [-s SECMODEL] USER [noauth|auth|priv [OID | -V VIEW [CONTEXT]]]

 

只需在snmpd.conf中添加一句:

rwuser taicom priv

              这样就创建了一个名为”taicom”user

 

其中”rwuser”是用户权限,有两种:

              rwuser--具有读写权限的用户;

              rouser--具有读权限的用户。

             

priv是安全级别,一共有三种安全级别:

              noauth -- 不认证,不加密,最低的安全级别;

              auth -- 认证但不加密;

              priv -- 认证且加密,最高的安全级别。

 

              然后在用户下面设置认证和加密密码:

              createUser taicom MD5 123456789 DES 123456789

MD5为认证的协议,现支持两种:HMAC-SHA-96HMAC-MD5-96SHA要优于MD5

DES为加密协议,现支持两种:CBC-DESCFB-AES-128AES要优于DES

如果加密密码缺省,则默认加密密码同认证密码相同。

注意:加密和认证密码最少为8个字符!

这种方式创建的用户密码为明文,不可修改,用于调试。

 

通过snmpusm动态创建v3用户

 

V3的认证密码用MD5/SHA摘要算法加密,用snmpusm动态创建新用户,需要首先创建一个用户的模板,然后在根据模板创clone新用户,详细命令见man手册。usmUserTableOID 1.3.6.1.6.3.15.1.2.2)表定义了对snmpv3的用户的操作,snmpusm就是通过操作usmUserTable中的子叶实现。

       首先,在/usr/local/etc/snmp/snmpd.conf中创建一个用户模板,可以规定他的权限和加密方式,如:rwuser admin priv。然后,创建/var/net-snmp/snmpd.conf文件(已存在则先killsnmpd再删除snmpd.conf),在其中添加密码,如:createUser admin MD5 "administrator" DES administrator,然后保存退出。启动snmpd后明文密码变成摘要形式,可以对usmUserSecurityName节点walk来查看。这里也可以用net-snmp-config –create-snmpv3-user来实现。

       snmpusm创建新用户,找好用户模板,用命令:

 

snmpusm -v3 -u admin -n "" -l authPriv -a MD5 -A administrator -x DES -X administrator 192.168.8.69 create wow admin

 

这样,就创建了一个名为”wow”的新用户,加密方式和密码都和admin一样,然后修改密码。

snmpusm  [OPTIONS]  [-Ca]  [-Cx]  passwd   OLD-PASSPHRASE   NEW-PASSPHRASE [USER]

       用命令snmpusm -v3 -u admin -n "" -l authPriv -a MD5 -A administrator -x DES -X administrator 192.168.8.69 -Cx administrator 123456789 wow 修改加密密码为123456789.

-Ca 为修改认证密码

-Cx 为修改加密密码

密码修改完成后,在/usr/local/etc/snmp/snmpd.conf文件的最下面插入一行新用户的设置,rwuser wow priv,然后restart snmpd,新用户即生效。对已生效的用户修改密码即时生效。

 

2)  权限管理

在创建用户的同时,还能指定用户的视图权限。

首先,创建一个视图组,如:

80 #           incl/excl subtree                          mask

81 view all    included  .1                               80 

82 view info   include    . 1.3.6.1.4.1.833.29.1.1

这样,info组只能浏览1.3.6.1.4.1.833.29.1.1的子树,将视图组添加到用户后面,可以设置该用户的视图权限,如:

rwuser taicom priv –V info

同样可以用OID来限定视图权限,如:

rwuser taicom priv . 1.3.6.1.4.1.833.29.1.1

也可以用同样的方法设置CONTEXT来指定视图权限。

 

在设置好用户后,就可以用新用户来管理agent端了。

二、      Trap设置

1)  创建trap用户

Linux: 创建snmptrapd.conf配置文件并修改,添加如下内容:

1 createUser -e 0x8000000001020304 traptest SHA mypassword AES

2 authuser log traptest

命令作用同snmpd.conf一样,-e 0x8000000001020304engineID,snmpv3的新概念,在连接的时候会自动发现,每对manageragent都有唯一的engineID,用MIB-Browser连接后会有一个response,如:

Response:

User profile name: admin

Security user name: admin

Security engine ID: 80.00.1F.88.80.6E.F5.A9.C2.00.00.5F.31 (hex)

Context name: (zero-length)

Context engine ID: 80.00.1F.88.80.6E.F5.A9.C2.00.00.5F.31 (hex)

Authentication protocol: HMAC MD5

Privacy protocol: CBC DES

Security level: Authentication And Privacy

Security model: USM

1: sysUpTimeInstance (timeticks) 0 days 00h:41m:02s.29th (246229)

 

engineID是一个十六进制的字符串。

 

Windows: MIB-Browser创建trap用户,打开MIB Browser Perferences,如图:

snmpv3 <wbr>总结
点击Edit User编辑trap用户:

snmpv3 <wbr>总结

如同创建v3用户一样,配置好后保存。

 

1)      测试trap

Linux:

启动snmptrapd:

sudo /usr/local/sbin/snmptrapd -f -C -Le -c /usr/local/share/snmp/snmptrapd.conf

发送trap命令:

snmptrap -v 3 -n "" -a SHA -A mypassword -x AES -X mypassword -l authPriv -u traptest -e 0x8000000001020304 localhost 40 coldStart.0

 

显示:

snmpv3 <wbr>总结 发送成功.

Windows:

启动目标板上的snmpd,调用send_trap函数,查看trap版本:

snmpv3 <wbr>总结

发送成功。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多