简单网络管理协议(SNMP) 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。
SNMP(简单网络管理协议)是基于UDP端口161,为管理站使用UDP端口162。
Linux 详细配置 Net-SNMPv3 与获取SNMP数据
CentOS Fedora
yum -y install net-snmp net-snmp-devel net-snmp-libs net-snmp-utils
或者
yum install -y net-snmp*
配置文件 /etc/snmp/snmpd.conf ,清空( vi编辑器键入dGi )所有内容后填入以下内容
Net-SNMPv2的配置信息
#192.99.12.76为数据收集服务器ip,yonghumima为snmp密码(community)
com2sec yonghuming 192.99.12.76 yonghumima
group yonghuzu v2c yonghuming
access yonghuzu "" any noauth prefix all none none
view all included .1 80
启动服务
chkconfig --add snmpd;chkconfig snmpd on;
-------
Ubuntu Debian
apt-get install snmp snmpd
配置文件 /etc/snmp/snmpd.conf
配置 Net-SNMPv3,创建用户密码
service snmpd stop #先停止snmp的运行
我们这里创建一个一个snmpv3用户,位只读,使用MD5加密传输,用户名为yonghuming,密码为yonghumima。
#net-snmp-config --create-snmpv3-user -ro -A yonghumima -a MD5 yonghuming
(The supplied password length is too short.)
adding the following line to /var/lib/net-snmp/snmpd.conf:
createUser yonghuming MD5 "yonghumima" DES
adding the following line to /etc/snmp/snmpd.conf:
rouser yonghuming
service snmpd restart
cat /var/lib/net-snmp/snmpd.conf #账户密码存放文件
...
usmUser 1 3 0x80001f8880549a357563fd815700000000 "yonghuming" "yonghuming" NULL .1.3.6.1.6.3.10.1.1.2 0x6454631b1ce32f299000d5170b431cba .1.3.6.1.6.3.10.1.2.2 0x6454631b1ce32f299000d5170b431cba ""
...
检测 Net-SNMPv3账户密码
#snmpwalk -v 3 -u yonghuming -a MD5 -A "yonghumima" -l authNoPriv 127.0.0.1 sysDescr
设计防火墙,允许数据通过
iptables -I INPUT -p udp --dport 161 -j ACCEPT
service iptables save;service iptables restart
删除或者修改默认密码
sed -i 's@^com2sec notConfigUser default public@com2sec notConfigUser default@' /etc/snmp/snmpd.conf #删除密码
重启服务
service snmpd restart
获取snmp数据
#snmpwalk -v 3 -u yonghuming -a MD5 -A "yonghumima" -l authNoPriv 122.9.44.224 sysDescr
SNMPv2-MIB::sysDescr.0 = STRING: Linux 3.10.0-327.22.2.el7.x86_64 #1 SMP Thu Jun 23 17:05:11 UTC 2016 x86_64
#snmpwalk -v 3 -u yonghuming -a MD5 -A "yonghumima" -l authNoPriv 122.9.44.224 .1 #获取所有数据
当cacti设备状态一直是不可用的时候,可以Create Graphs for this Host