一、安装
需要安装下面三个软件包:
snmpd //snmp服务端软件
snmp //snmp客户端软件
snmp-mibs-downloader //用来下载更新本地mib库的软件
执行下面的命令安装这三个软件:
sudo apt-get install snmpd snmp snmp-mibs-downloader
需要注意的是,在安装snmp-mibs-downloader的过程中,程序会帮我们自动下载mib库,并保存在/usr/share/snmp/mibs目录中。如果发现没有些目录或文件的话,在安装完snmp-mibs-downloader后也可以手动执行下面的命令来下载mib库(会有很多输出信息):
sudo download-mibs
还有一个开源程序包,叫做“Net-SNMP”的,工具很全很专业,是一种开放源代码的 SNMP 协议实现。它支持 SNMP v1, SNMP v2c 与 SNMP v3,并可以使用 IPV4 及 IPV6 。也包含 SNMP Trap 的所有相关实现。Net-SNMP 包含了SNMP实用程序集和完整的SNMP开发库。Net-SNMP 可以通过snap直接网络安装:
sudo snap install net-snmp
二、配置
其实在安装完snmpd软件后,系统是为我们自动开启了这个服务的:
sudo service snmpd status
先来进行一些简单的测试,看看服务是否正常:
snmpwalk -v 2c -c public localhost 1.3.6.1.2.1.1.1
有信息返回,那么接下来就直接进行各种配置了。这里讨论和使用的都是SNMPv2
配置节点。修改/etc/snmp/snmpd.conf文件:
sudo nano /etc/snmp/snmpd.conf
找到:
view systemonly included .1.3.6.1.2.1.1 view systemonly included .1.3.6.1.2.1.25.1
注释掉上面两行,增加下面一行:
#view systemonly included .1.3.6.1.2.1.1 #view systemonly included .1.3.6.1.2.1.25.1 view systemonly included .1
这样的话,我们就可以获取更多的节点信息,因为如果不这样做,我们能够获取的信息仅仅是上面两个注释掉的节点所包含的信息。修改之后,重启snmp服务,再使用命令观察一下:
sudo service snmpd restart
sudo snmpwalk -v 2c -c public localhost .1.3.6.1.4.1.2021.4.3.0
没有问题!不过需要注意的是,这里.1.3.6.1.4.1.2021.4.3.0表示的是LInux主机交换空间(swap)总量的一个节点,而输出1942896 kB,就说明我们的主机上的交换空间总量大概就是2GB左右。
配置MIB库。虽然上面已经可以正常获取我们想要的信息,但是输出结果很不直观,这时我们配置一下MIB库就可以了,不过需要注意的是,这个配置是对客户端软件的配置(只不过现在我的这台机器既是服务器也是客户机)。修改/etc/snmp/snmp.conf配置文件,将下面这一行注释掉:
sudo nano /etc/snmp/snmp.conf
#mibs :
然后重启snmp服务,再通过命令观察:
sudo service snmpd restart
snmpwalk -v 2c -c public localhost .1.3.6.1.4.1.2021.4.3.0
配置社区名(共同体)。其实所谓社区名,把它理解为一个密码就行了,前面我们在使用snmpwalk命令获取主机的信息时,有一个“-c public”的参数,其实就是指定了这个社区名为“public”,这是默认的配置,当然在实际中,我们不可能使用默认的值,因此需要把它修改一下。修改配置文件“/etc/snmp/snmpd.conf”,将下面的两行:
sudo nano /etc/snmp/snmpd.conf
rocommunity public default -V systemonly rocommunity6 public default -V systemonly
修改为:
rocommunity osbear default -V systemonly rocommunity6 osbear default -V systemonly
那么这里就把社区名修改为osbear了,重启snmp服务。
sudo service snmpd restart
原文链接:https://blog.csdn.net/my_angle2016/article/details/124327128