Linux下安装NET-SNMP使用监控宝监控系统状态

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux下安装NET-SNMP使用监控宝监控系统状态1、准备环境

2、编译和安装

首先我们需要下载Net-SNMP的源代码,官方地址:

/projects/net-snmp/files/net-snmp/

选择一个版本,比如5.7.2,下载的源代码包net-snmp-5.7.2.tar.gz,也可以直接下载我提供的连接:

接下来对下载的源代码包进行解压缩,

Shell

然后通过configure来生成编译规则,

Shell

注意,以上的

--with-mib-modules=ucd-snmp/diskio

选项,可以让服务器支持磁盘I/O监控。

回车出现下面问题,可以直接回车而不用回答,系统会采用默认信息,其中日志

文件默认安装在/var/log/snmpd.log.数据存贮目录默认存放在/var/net-snmp 下。

default version of-snmp-version(3): 3(在这里版本通常有三种形式:1,2c,3)System Contact Information (@@no.where)(配置该设备的联系信息): heaven (也可以是邮箱地址)

System Location (Unknown)(该系统设备的地理位置):BEIJING P.R China Location to write logfile (日志文件位置): /var/log/snmpd.log

Location to Write persistent(数据存储目录): /var/net-snmp

接下来,开始编译和安装:

Shell

到现在为止,我们已经有了可以运行的SNMP代理程序,它位于

/usr/local/snmp/sbin/snmpd,在启动它之前,我们还要进行一些必要的设置。

3、设置安全的验证方式

将SNMP代理程序暴露给网络上的所有主机是很危险的,为了防止其它主机访问你的SNMP代理程序,我们需要在SNMP代理程序上加入身份验证机制。SNMP支持不同的验证机制,这取决于不同的SNMP协议版本,监控宝目前支持v2c和v3两个版本,其中v2c版本的验证机制比较简单,它基于明文密码和授权IP来进行身份验证,而v3版本则通过用户名和密码的加密传输来实现身份验证,我们建议使用v3,当然,只要按照以下的介绍进行配置,不论是v2c版本还是v3版本,都可以保证一定的安全性,你可以根据情况来选择。

注意一点,SNMP协议版本和SNMP代理程序版本是两回事,刚才说的v2c和v3是指SNMP协议的版本,而Net-SNMP是用来实现SNMP协议的程序套件。

v2c

先来看如何配置v2c版本的SNMP代理,我们来创建snmpd的配置文件,默认情况下它是不存在的,我们来创建它,如下:

Shell

然后我们需要创建一个只读帐号,也就是read-only community,在snmpd.conf 中添加以下内容:

rocommunity jiankongbao 60.195.252.107

rocommunity jiankongbao 60.195.252.110

注意:添加用户时,请确保snmp服务没有运行,否则无法添加。

注意,这里的“rocommunity”表示这是一个只读的访问权限,监控宝只可以从你的服务器上获取信息,而不能对服务器进行任何设置。

紧接着的“jiankongbao”相当于密码,很多平台喜欢使用“public”这个默认字符串。这里的“jiankongbao”只是一个例子,你可以设置其它字符串作为密码。

最右边的“60.195.252.107,60.195.252.110”代表指定的监控点IP,这些IP 地址是监控宝专用的监控点,这意味着只有监控宝有权限来访问你的SNMP代理程序。

所以,以上这段配置中,只有“jiankongbao”是需要你进行修改的,同时在监控宝上添加服务器的时候,需要提供这个字符串。

v3

当然,我们建议您使用v3版本来进行身份验证。对于一些早期版本的Linux分发版,其内置的SNMP代理程序可能并不支持v3,所以我们建议您按照前边介绍的方法,编译和安装最新的Net-Snmp。

v3支持另一种验证方式,需要创建一个v3的帐号,我们同样修改以下配置文件(默认情况下它是不存在的,我们来创建它。):

Shell

然后添加一个只读帐号,

rouser jiankongbao auth

注意:添加用户时,请确保snmp服务没有运行,否则无法添加。

可以看到,在v3中,“rouser”用于表示只读帐号类型,随后的“jiankongbao”是指定的用户名,后边的“auth”指明需要验证。

接下来,需要先运行一下:

Shell

执行后会生成/var/net-snmp/snmpd.conf配置文件,再使用命令结束这个进程:

Shell

接着我们还要添加“jiankongbao”这个用户到配置文件中,这就是v3中的特殊机制,我们打开配置文件:

Shell

这个文件会在snmpd启动的时候被自动调用,我们需要在它里边添加创建用户的指令,

createUser jiankongbao MD5 mypassword

这行配置的意思是创建一个名为“jiankongbao”的用户,密码为“mypassword”,并且用MD5进行加密传输。这里要提醒的是:

密码至少要有8个字节

这是SNMP协议的规定,如果小于8个字节,通信将无法进行。

值得注意的是,一旦snmpd启动后,出于安全考虑,以上这行配置会被snmpd

自动删除,当然,snmpd会将这些配置以密文的形式记录在其它文件中,重新启动snmpd是不需要再次添加这些配置的,除非你希望创建新的用户。

以上配置中的用户名、密码和加密方式,在监控宝添加服务器的时候需要添加。

4、启动SNMP代理程序

经过配置后,现在可以启动snmpd,

Shell

如果要关闭,则可以直接kill这个进程,

Shell

5、将snmpd加入开机启动

进入源码目录,如/root/net-snmp-5.7.1目录,将启动配置文件范例复制到

/etc/init.d/目录:

Shell

相关文档
最新文档