Linux 配置snmp v3版本
2021-11-30 本文已影响0人
Habit_1027
snmp : snmp agent,可以对外提供snmp访问
snmptrapd: snmp trap的接收端 ----- #server/proxy
一、 安装net-snmp等一系列依赖包 (server/proxy)
yum install -y net-snmp net-snmp-utils
二、配置snmpd (server/proxy)
2.1创建用户
需要先创建创建一个用户,比如wangwen ,密码为Habits1027,目前net-snmp 5.7 支持授权加密算法为MD5或SHA,鉴权加密算法为DES或AES
[root@localhost ~]# net-snmp-create-v3-user -h
unknown suboption to /usr/bin/net-snmp-create-v3-user: -h
Usage:
net-snmp-create-v3-user [-ro] [-A authpass] [-X privpass]
[-a MD5|SHA] [-x DES|AES] [username]
[root@localhost ~]# net-snmp-create-v3-user -a SHA -A Habits1027 -x AES -X Habits1027 wangwen
adding the following line to /var/lib/net-snmp/snmpd.conf:
createUser wangwen SHA "Habits1027" AES Habits1027
adding the following line to /etc/snmp/snmpd.conf:
rwuser wangwen
#从输出可以看到此命令在/var/lib/net-snmp/snmpd.conf中添加了
createUser wangwen SHA "Habits1027" AES Habits1027
#在/etc/snmp/snmpd.conf中添加了
rwuser wangwen
2.2、启动snmp服务并测试 (server/proxy)
[root@localhost ~]# systemctl start snmpd
[root@localhost ~]# snmpwalk -v 3 -u wangwen -l authPriv -a SHA -A Habits1027 -x AES -X Habits1027 39.98.121.152 sysName
SNMPv2-MIB::sysName.0 = STRING: localhost
#测试成功了
#参数详解
-v 表示版本信息
-l 表示设置安全级别,安全级别分为(noAuthNoPriv|authNoPriv|authPriv)
-a 设置授权算法,(MD5|SHA)
-A 设置授权字符串
-x 设置鉴权算法,(DES|AES)
-X 设置鉴权字符串
IP 地址填写配置了snmpd的节点地址
sysName 则为snmp的一种OID
三、配置snmptrapd
3.1、获取接收snmp trap的实例的engineID
[root@localhost ~]# snmpwalk -v 3 -u wangwen -l authPriv -a SHA -A Habits1027 -x AES -X Habits1027 39.98.121.152 engineID
SNMP-FRAMEWORK-MIB::snmpEngineID.0 = Hex-STRING: 80 00 1F 88 80 64 52 A1 14 71 74 A4 61 00 00 00
00
# 此节点的enginID即为0x80001F88806452A1147174A461000000
3.2编辑配置文件 /etc/snmp/snmptrapd.conf
# Example configuration file for snmptrapd
#
# No traps are handled by default, you must edit this file!
#
# authCommunity log,execute,net public
# traphandle SNMPv2-MIB::coldStart /usr/bin/bin/my_great_script cold
createUser -e 0x80001F88806452A1147174A461000000 wangwen SHA "Habits1027" AES "Habits1027"
authuser log,execute,net wangwen
~
#其中 createUser 此处为固定语法,-e后所加为enginID SHA为授权加密算法,AES为鉴权加密算法,各自后所跟为加密字符串
3.3、snmptrapd常用参数详解
-C : 表示不使用net-snmp默认路径下的配置文snmptrapd.conf;
-c : 指定snmptrapd.conf文件;
-d : 显示收到和发送的数据报,通过这个选项可以看到数据报文;
-f : 默认情况下,snmptrapd是在后台中运行的,加上这个选项,表示在前台运行;
-L : 指定日志记录在哪里,后面的o表示直接输出到屏幕上,如果是跟着f表示日志记录到指定的文件
以下用于SNMPv3的消息验证
-D:开启debug模式查看TOKEN
-u:设置用户标识