在飞腾平台安装测试SNMP服务

一、安装SNMP

1.1、下载Net-SNMP的源代码

  选择一个SNMP版本,比如5.7.1,下载地址如下:https://sourceforge.net/projects/net-snmp/files/net-snmp/5.7.3/,如下图所示:

1.2、编译安装

1.  解压:tar -zxvf net-snmp-5.7.3.tar.gz,解压后生成一个net-snmp-5.7.3目录;

2.  进入指定目录:cd net-snmp-5.7.3;

3.  通过configure生成Makefile

执行:./configure --prefix=/usr/local/snmp --with-mib-modules='ucd-snmp/diskio ip-mib/ipv4InterfaceTable‘ --disable-shared

此处是一个大坑,坑了我不少 时间,这部分到时候单独拎出来写一篇文章

参见:https://blog.csdn.net/jiangganwu/article/details/87706052

4.  过程中一些问答选项直接回车,保持默认即可;

5.  编译:make && make install;

1.3、测试SNMP服务

1.3.1.  拷贝生成snmpd.conf

首先在在/usr/local/snmp目录下创建一个etc目录,找到SNMP源码目录(net-snmp-5.7.3)下EXAMPLE.conf文件,复制EXAMPLE.conf文件到到/usr/local/snmp/etc目录,并重命名为snmpd.conf,命令如下:

cp EXAMPLE.conf /usr/local/snmp/etc/snmpd.conf

1.3.2.  配置snmpd.conf

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

  • 配置允许网络访问

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

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

  • 选择v2c SNMP协议的版本

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

修改如下:

  •  设置访问权限

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

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

  •  保存snmpd.conf后退出

按下键盘左上角上的【Esc】键退出vi编辑器的编辑模式,然后输入命令":wq"保存文件并退出,如下图所示:

经过以上的4个步骤,针对SNMP的snmpd.conf文件的配置工作算是全部完成了。 

 1.3.3.  启动SNMP

由于我们刚才修改SNMP的snmpd.conf文件,所以在启动snmp服务之前,先使用命令"ps aux | grep snmp | awk '{print $2}' | xargs kill"关闭snmp的相关服务。

使用"netstat -an | grep 161"查看snmp的服务是否启动,如下图所示

启动snmp服务:"/usr/local/snmp/sbin/snmpd -c /usr/local/snmp/etc/snmpd.conf",如下图所示:

1.3.4. 测试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 127.0.0.1 sysName.0
    snmpget -v 2c -c public 192.168.1.229 sysName.0
    snmpget -v 2c -c public localhost .1.3.6.1.2.1.1.5.0
    snmpget -v 2c -c public 127.0.0.1 .1.3.6.1.2.1.1.5.0
    snmpget -v 2c -c public 192.168.1.229 .1.3.6.1.2.1.1.5.0

  如下图所示:

能够正常返回系统的名字就说明SNMP安装配置成功了。也可以使用命令"snmpget --version"查看当前的安装版本号来验证是否安装成功,如果安装成功,则显示当前的安装版本号。

 

1.3.5. 开启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端口是否对外开放,

将linux和PC机网线对练,配置linux下对应网卡IP地址为:192.168.1.229,配置PC机网卡ip为:192.168.1.144,首先通过ping测试网络连接是否正常,若正常则按下图所示进行SNMP访问测试: 

 二、卸载SNMP

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

  1、使用"netstat -an |grep 161"查看snmp服务是否启动

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

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

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

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

  如下图所示:

开始卸载SNMP,如下图所示:

snmp卸载完成,如下图所示:

删除/usr/local下的snmp目录以及snmp目录里面的所有文件,如下图所示:

 转自:https://www.cnblogs.com/xdp-gacl/p/4016524.html

猜你喜欢

转载自blog.csdn.net/jiangganwu/article/details/87698567