Linux下安装配置SNMP服务
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Linux下安装与配置snmp服务
一、安装snmp服务
1、检查系统是否已经安装snmp的rpm包
以下是安装snmp服务需要的rpm包:
libsensors3-2.10.6-55.el5.i386.rpm
lm_sensors-2.10.6-55.el5.i386.rpm
net-snmp-libs-5.3.2.2-5.el5.i386.rpm
net-snmp-5.3.2.2-5.el5.i386.rpm
net-snmp-utils-5.3.2.2-5.el5.i386.rpm
推荐到/下载这些rpm包,该网站比较全面,包含各种版本的包。
使用命令:$ rpm -qa|grep snmp
检查是否安装net-snmp-utils-5.3.2.2-5.el5,
net-snmp-libs-5.3.2.2-5.el5,net-snmp-5.3.2.2-5.el5三个rpm包
使用命令:$ rpm -qa|grep libsen
检查是否安装libsensors3-2.10.6-55.el5
使用命令:$ rpm -qa|grep lm
检查是否安装lm_sensors-2.10.6-55.el5
说明:
(1)这几个包的安装有一定顺序,在安装的时候,会有提示。比如安装
net-snmp-5.3.2.2-5.el5.i386.rpm时,会提示必须先安装
net-snmp-libs-5.3.2.2-5.el5.i386.rpm。
(2)net-snmp-utils-5.3.2.2-5.el5.i386.rpm并不是必须安装的包,但安装它会带来不少帮助,它提供了很多工具,例如可以使用snmptranslate命令查看oid,可以使用snmpget、snmpwalk命令等。
(3)net-snmp-libs-5.3.2.2-5.el5.i386.rpm、
net-snmp-5.3.2.2-5.el5.i386.rpm、
net-snmp-utils-5.3.2.2-5.el5.i386.rpm这三个包有一定的版本要求,必须版本一致,否则安装无法成功。我这里都使用的5.3.2.2-5.el5版本,也可以下载其他版本的rpm包,但注意版本要一致,在安装的时候也会提示,哪个版本的包是必须的,你可以根据提示下载需要的包。
2、安装以上的几个rpm包
若系统中没有安装以上包,则先安装。
使用命令:rpm –ivh 包名
安装完后,使用命令:$ rpm -qa|grep snmp,检查是否已经安装成功。
YUM 安装
1 yum install -y net-snmp net-snmp-utils
3、启动snmp服务
若安装成功,则可使用命令:
$ service snmpd start
提示:Starting snmpd: [ OK ],则启动snmp服务成功。
你可以将snmp服务设置为开机自启动,这样免去手动启动的麻烦。
使用命令:$ chkconfig snmpd on,将snmpd服务设为开机自启动。
然后使用命令:$ chkconfig --list | grep snmpd,查看是否已经设置成功。
4、验证snmp服务
(1)使用snmpwalk命令,查看本机localhost的主机名:
如上,获取到本机主机名为,则表示snmp服务已经可以正常使用。
(2)使用snmptranslate命令,检查snmp工具是否可以使用:
如上,查出了部分oid,则表示snmp工具可以正常使用。
(3)测试远端主机是否可以获取数据。
我这里登陆了另外一台Linux主机,该主机也按照上面的步骤安装好snmp服务及snmp工具。通过这台主机,获取远端主机的数据,这时需指定远端主机的IP 地址:
如上,可以看到通过远端主机获取到的主机名,与在本机获取到的主机名是一致的。
二、配置snmp服务
以上安装完成后,使用的是snmp的默认配置,通过这些默认配置,我们只能获取主机的部分信息。但一些其他的重要信息,无法获取。如主机的CPU使用情况,内存使用情况等。
如上,无法获取CPU的空闲率(注:1.3.6.1.4.1.2021.11.11.0是主机CPU空闲率的oid)。
这时候,若要获取主机的一些重要信息,则要修改snmp的默认配置。
配置方法:修改/etc/snmp/snmpd.conf文件
1、开启iptable策略、或者关掉防火墙
开启UDP 161端口的访问权限
完成snmpd的配置并且SNMP测试通过之后,要确保Linux的iptables防火墙对外开放了udp 161端口的访问权限,可以使用"iptables –L –n"查看当前iptables规则,如下图所示:
可以看到,目前iptables防火墙并没有对外开放udp 161端口的访问权限,也就是说,此时外面的计算机是无法访问Linux下的SNMP服务的,可以使用"iptables -I INPUT -p udp --dport 161 -j ACCEPT"命令添加UDP 161端口到iptables防火墙中,然后执行"iptables save"命令保存防火墙的更改,如下图所示:
我们可以在window系统下使用Snmputil.exe工具测试对Linux下的SNMP 访问,测试Linux的UDP 161端口是否对外开放,如下图所示:
"snmputil get 192.168.1.229 public .1.3.6.1.2.1.1.5.0"命令返回192.168.1.229这台Linux服务器的名字,可以看到,Linux服务器的名称已经正常返回输出到命令行窗口了。
2、修改团体名
在snmpd.conf文件中找到如下位置:
把public改为simware如下为更改后的内容
3、修改查看设备节点的权限
在该文件中,找到如下位置:
view:定义了可以查看哪些节点设备的信息。