您所在的位置:首页 >>帮助中心 >>服务器常见问题

Linux系统安装配置SNMP服务


文章来源:qianxinet 发布者:Jonny发布时间:2015/9/9 10:36:41【打印此页】 【关闭

一、使用yum安装snmp服务

  [root@localhost ~]# yum install -y net-snmp net-snmp-utils 

1.检查SNMP服务是否安装以及安装的文件包

  [root@localhost ~]# rpm -qa |grep snmp                   

  net-snmp-libs-5.5-50.el6_6.1.x86_64

  net-snmp-5.5-50.el6_6.1.x86_64

  net-snmp-utils-5.5-50.el6_6.1.x86_64

2.启动SNMP服务

  [root@localhost ~]# service snmpd start

  Starting snmpd:                      [  OK  ]

3.将SNMP服务设置为开机启动

  [root@localhost ~]# chkconfig snmpd on

4.检查SNMP服务设置开机启动是否成功(以下为成功事例)

  [root@localhost ~]# chkconfig --list | grep snmpd

  snmpd     0:off   1:off   2:on    3:on    4:on    5:on    6:off

5.使用snmpwalk命令查看本机localhost的主机名

  [root@localhost ~]# snmpwalk -v 2c -c public localhost sysName.0

  SNMPv2-MIB::sysName.0 = STRING: localhost.localdomain

  如上,获取到本机主机名为localhost.localdomain,则表示snmp服务可以正常使用。

6.使用snmptranslate命令检查snmp工具是否可以使用

  [root@localhost ~]# snmptranslate -To | head

  .1.3

  .1.3.6

  .1.3.6.1

  .1.3.6.1.1

  .1.3.6.1.2

  .1.3.6.1.2.1

  .1.3.6.1.2.1.1

  .1.3.6.1.2.1.1.1

  .1.3.6.1.2.1.1.2

  .1.3.6.1.2.1.1.3

  如上,查出了部分oid,则表示snmp工具可以正常使用。

二、配置SNMP服务

   以上安装完成后,使用的是SNMP的默认配置,通过这些默认配置,我们只能获取到主机的部分信息。但是有一些其他重要的信息无法获取得到。如主机的CPU使用情况,内存的使用情况,分区的使用情况等等。按照如下方式修改/etc/snmp/snmpd.conf文件

1.修改默认的community string

  com2sec notConfigUser  default       public

  将public修改为你自定义的团体名称;将default改为监控机的IP地址,不改则表示所以机器允许监控本机。

2.修改为红色文字部分

  # Finally, grant the group read-only access to the systemview view.

  # group          context sec.model sec.level prefix read   write  notif

  access  notConfigGroup ""  any     noauth    exact  all none none

3.把下面的#号去掉

   #view mib2   included  .iso.org.dod.internet.mgmt.mib-2 fc

   #view all included .1           80

4.修改查看设备节点的权限

   在snmpd.conf中找到如下位置

   # Third, create a view for us to let the group have rights to:

   # Make at least  snmpwalk -v 1 localhost -c public system fast again.  

   # name incl/excl subtree  mask(optional)

   view    systemview    included   .1.3.6.1.2.1.1

   view    systemview    included   .1.3.6.1.2.1.25.1.1

   view定义了可以查看哪些节点的设备信息,snmp默认配置只能查看.1.3.6.1.2.1.1和.1.3.6.1.2.1.25.1.1节点的设备信息,而CPU和内存等设备都不在这些节点下,所以无法获取这些数据。因此,可以修改这个配置,加一行命令如下:

   # Third, create a view for us to let the group have rights to:

   # Make at least  snmpwalk -v 1 localhost -c public system fast again.

   #       name           incl/excl     subtree         mask(optional)

   view    systemview    included   .1 (表示可以查看.1节点下的所有设备的信息)

   view    systemview    included   .1.3.6.1.2.1.1

   view    systemview    included   .1.3.6.1.2.1.25.1.1

5.修改Process checks的配置

   找到一下位置

   将#proc mountd,#proc ntalkd 4,#proc sendmail 10 1前面的#去掉。

6.修改# Executables/scripts配置,找到如下图位置

   将#exec echotest /bin/echo hello world前面的#号去掉。

7.修改disk checks配置,找到如下位置

   将#disk / 10000前面的#去掉。

8.修改load average checks配置,找到如下位置:

   将#load 12 14 14前面的#去掉。

9.保存snmpd.conf文件修改的配置,并重启snmp服务是修改生效

   [root@localhost snmp]# service snmpd restart

   Stopping snmpd:                      [  OK  ]

   Starting snmpd:                      [  OK  ]

三、SNMP使用端口在防火墙里面的设置

   1.可以关闭防火墙

     [root@localhost snmp]# service iptables stop

   2.将SNMP使用的UDP 161端口在防火墙里面放行,

    可以编辑[root@localhost snmp]# vi /etc/sysconfig/iptables-config文件来修改防火墙规则。