服务器安装部署SNMP服务及测试记录
应用场景
测试环境:deepin20.4
概述
简单网络管理协议(SNMP) 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。主要用在局域网中对设备进行管理,应用最为广泛的是对路由器交换机等网络设备的管理,当然不仅限于网络设备。
SNMP分为管理端和代理端(agent),管理端的默认端口为UDP 162,主要用来接收Agent的消息如TRAP告警消息;Agent端使用UDP 161端口接收管理端下发的消息如SET/GET指令等。
SNMP协议目前在用的有3个版本,分别是V1,V2C,V3,主要差异在安全性、消息封装格式、GET效率等方面。
环境
测试环境:deepin20.4
操作步骤
首先查看服务器是否已经安装snmp服务安装包使用命令查看,可以看到目前服务器是没有安装的:
1,此时需要通过apt安装snmp相关软件包:
snmpd:snmp服务端软件
snmp:snmp客户端软件
snmp-mibs-downloader:用来下载更新本地mib库的软件
这里直接apt install snmp snmpd snmp-mibs-downloader -y
:
此时可以看到snmp相关组件包已经全部安装成功了
dpkg -l | grep snmp
:
现在可以查看snmp服务状态,161端口已被监听:
service snmpd status
netstat -ntulp | grep snmp
简单测试一下snmp连通性,获取本机信息
snmpwalk -v 2c -c public localhost .1.3.6.1.2.1.1
(-v 是指定snmp版本号;
-c 是指定团体属性;
.1.3.6.1.2.1.1 是指mibs里面的iso节点,每个节点代表不同的系统信息;)
需要修改/etc/snmp/snmpd.conf 及 /etc/snmp/snmp.conf配置文件,先进行配置文件备份:
cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.bak
cp /etc/snmp/snmp.conf /etc/snmp/snmp.conf.bak
2,配置节点(snmpd.conf):
将第45,46行注释掉后,向下添加一行
view systemonly included .1
这样以来可以获取到的节点信息不局限于.1.3.6.1.2.1.*,能够看到更多的信息:
3,配置mib库(snmp.conf):
将mibs注释掉
4,配置共同体(snmpd.conf):
这里我们不修改,默认为public,可以理解为它就是密码,可根据实际情况进行修改
5,允许远程访问(snmpd.conf):
默认情况下,snmp只对本地开启,远程主机无法访问,我们只需要将15行注释掉,17行注释删掉就可以了
经远程主机可以进行snmp信息获取