首页 > 技术文章 > Redhat6.5配置SNMP(tar包编译安装)

h117 2021-11-19 13:38 原文

Redhat6.5配置SNMP5.7.1tar包编译安装

一、安装与测试

1检查系统版本:

 

2确认gcc环境

通过net-snmp编译包安装,需要系统提前安装好gcc环境。

 

没有安装的看下面文章的步骤

https://www.cnblogs.com/chuncn/archive/2010/10/15/1851853.html

3下载安装包net-snmp-5.7.1.tar.gz

下载地http://sourceforge.net/projects/net-snmp/files/net-snmp/5.7.1/

上传压缩包或gunzip net-snmp-5.7.3.tar.gz

 

使用命令 tar xzvf net-snmp-5.7.1.tar.gz 对安装包进行解压,解压成功后得到一个net-snmp-5.7.1文件夹

 

4进入解压的net-snmp-5.7.1目录,cd net-snmp-5.7.1

执行命令./configure --prefix=/usr/local/snmp

(说明:net-snmp-5.7.1目录下的configure是可执行文件,如果想指定程序包的安装路径,那么首先建立相应的文件夹来存放安装信息,可以写成./configure –-prefix=/指定的路径名。参数--prefix用来告诉系统安装信息存放的路径,如果没有指定路径,直接执行./configure,那么程序包都会安装在系统默认的目录下,通常为:/usr/local)

回车出现下面问题,可以直接回车而不用回答,系统会采用默认信息,其中日志文件默认安装在/var/log/snmpd.log.数据存贮目录默认存放在/var/net-snmp

    1default version of-snmp-version(3):

    2System Contact Information (@@no.where)(配置该设备的联系信息):

    3System Location (Unknown)(该系统设备的地理位置):

    4Location to write logfile (日志文件位置):

    5Location to Write persistent(数据存储目录):

 

出现以下界面.configure执行完成

 

5编译和安装

执行"make && make install"命令

 

echo $? #如果返回值是0,就是执行成功;如果是返回值是0以外的值,就是失败。

 

6配置snmpd.conf

  使用"ls"命令查看/usr/local/snmp目录下是否存在etc目录,如果不存在etc目录,就创建一个,查看结果显示不存在etc目录,在/usr/local/snmp目录下创建一个etc目录,创建etc目录命令"mkdir /usr/local/snmp/etc",找到SNMP源码目录(net-snmp-5.7.1)EXAMPLE.conf文件,如下图所示:

 

复制EXAMPLE.conf文件到到/usr/local/snmp/etc目录,并重命名为snmpd.conf"cp EXAMPLE.conf /usr/local/snmp/etc/snmpd.conf

7使用vi编辑器打开snmpd.conf文件:"vi /usr/local/snmp/etc/snmpd.conf",编辑snmpd.conf文件中的内容

7.1、配置允许网络访问

  找到【AGENT BEHAVIOUR】,如下图所示:

  

 

  修改如下:添加"agentAddress udp:161"配置项,如下图所示: 

 

 

  7.2、选择v2c SNMP协议的版本(根据下载版本选择)

  找到【ACTIVE MONITORING】,如下图所示:

 

  修改如下:

 

  7.3、设置访问权限

  找到【ACCESS CONTROL】如下图所示:

 

 

  找到【rocommunity public default -V systemonly】,把 -V systemonly去掉,这是设置访问权限的,去掉后能访问全部,rocommunity改成rwcommunity,rocommunity是只读,rwcommunity是读写。如下图所示:

 

保存snmpd.conf后退出,基本完成

8启动snmp服务

8.1、执行如下命令启动snmp服务:

/usr/local/snmp/sbin/snmpd -c /usr/local/snmp/etc/snmpd.conf

 

8.2、测试SNMP

获取本机的系统名字,使用命令:"snmpget -v 2c -c public localhost sysName.0"或者"snmpget -v 2c -c public 本机的ip地址 sysName.0"或者"snmpget -v 2c -c public 本机的ip地址 .1.3.6.1.2.1.1.5.0"进行测试

执行以下的几个命令都可以获取到本机的系统名字:

snmpget -v 2c -c public localhost sysName.0

snmpget -v 2c -c public snmp服务本机ip sysName.0

、卸载snmp

如果安装后想卸载SNMP,可以执行"make uninstall"命令,卸载步骤如下:

1、使用"ps -ef|grep snmp"查看snmp服务是否启动

2、如果已经启动就使用命令"ps aux | grep snmp | grep -v grep |awk '{print $2}'| xargs kill"关闭snmp的相关服务

3、find / -name "snmp.conf" 将找到的snmp.conf文件删除

4、find / -name "snmpd.conf" 将找到的snmp.conf文件删除

5、进入SNMP源码目录(net-snmp-5.7.1)

6、执行"make uninstall"命令卸载SNMP

7、删除/usr/local下的snmp目录以及snmp目录里面的所有文件,usr/local/snmpSNMP的安装路径 

8、whereis snmp 将查出来的目录删掉(rm -rf 目录)

9、find / -name snmp 将查出来的目录(下图红框选中的)删除,类似/proc/1/net/snmp不用删除,也没有删除的权限

 

推荐阅读