Redhat7安装配置NET-SNMP——方式2(tar包编译安装)

1.版本说明:

平台:x86
OS:Red Hat Enterprise Linux Server release 7.6 (Maipo)
gcc:4.8.5 (系统自带)
net-snmp:5.7.3

2.准备工作

2.1 确认gcc环境

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

# find / -name gcc
/usr/bin/gcc
/usr/lib/gcc
/usr/libexec/gcc

# /usr/bin/gcc -v
使用内建 specs。
COLLECT_GCC=/usr/bin/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
目标:x86_64-redhat-linux
配置为:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
线程模型:posix
gcc 版本 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)

2.2 net-snmp下载

下载地址:http://www.net-snmp.org/
点击download选择合适的版本下载到本地。

3.上传net-snmp并解压

# gunzip net-snmp-5.7.3.tar.gz 
# tar -xvf net-snmp-5.7.3.tar 
# cd net-snmp-5.7.3

4.编译安装net-snmp

# ./configure		#一路按回车,默认值确认

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

5.复制配置文件

# cp /tmp/net-snmp-5.7.3/python/netsnmp/tests/snmpd.conf /usr/local/share/snmp/snmpd.conf

6.修改配置文件

# vim /usr/local/share/snmp/snmpd.conf

将:
#       sec.name  source          community
com2sec local     localhost      public
com2sec mynetwork 192.168.1.0/24    public

改为:
#       sec.name  source          community
com2sec local     localhost      cmsnmp
com2sec mynetwork 192.168.56.0/24    cmsnmp

PS:
(1)cmsnmp为共同体名称,可以自行定义
(2)192.168.56.0/24 为snmp server的网段,也可以是server端的IP地址。
(3)通过编译方式安装,和用yum安装net-snmp,所对应的配置文件会有所区别,务必核对仔细。

7.启动net-snmp

# /usr/local/sbin/snmpd -v		#查看版本
NET-SNMP version:  5.7.3
Web:               http://www.net-snmp.org/
Email:             [email protected]

# /usr/local/sbin/snmpd -c /usr/local/share/snmp/snmpd.conf			#启动程序

8.本地测试

snmpget -v 1 -c cmsnmp localhost sysUpTime.0			#此处localhost也可以用本地IP代替
snmpwalk -v 2c -c cmsnmp -m ALL localhost .1.3 | more	#此处localhost也可以用本地IP代替

9.snmp server端测试

a)cmsnmp为共同体名称
b)10.168.1.129为client端IP地址

snmpwalk -v 2c -c cmsnmp 10.168.1.129 .1.3.6.1.2.1.25.2.2  			#取得系统总内存
snmpwalk -v 2c -c cmsnmp 10.168.1.129 hrSystemNumUsers  			#取得系统用户数
snmpwalk -v 2c -c cmsnmp 10.168.1.129 .1.3.6.1.2.1.4.20    			#取得IP信息
snmpwalk -v 2c -c cmsnmp 10.168.1.129 system   						#查看系统信息
snmpwalk -v 2c -c cmsnmp 10.168.1.129 ifDescr 						#获取网卡信息

如果执行,输出信息正常,表示配置没问题。
如果显示如下信息:

Timeout: No Response from 10.168.1.129

需要考虑是否是因为防火墙的设置导致。

10.防火墙设置

10.1 业务环境可以关闭防火墙

# systemctl stop firewalld			#关闭防火墙
# systemctl status firewalld		#查看防火墙状态

10.2 业务环境不可以关闭防火墙

如果业务环境不能关闭防火墙,那我们可以设置开放161端口,来允许snmp的server端的连接:

# systemctl start firewalld			#打开防火墙
# systemctl status firewalld		#查看防火墙状态
# firewall-cmd --zone=public --add-port=161/udp --permanent		
									#开放161端口															
									#--permanent的作用是使设置永久生效,不加的话机器重启之后失效
# firewall-cmd --reload				#配置修改后重新加载
# firewall-cmd --zone=public --query-port=161/udp		
									#确认配置是否生效:输出yes表示生效

猜你喜欢

转载自blog.csdn.net/m0_37862262/article/details/107244093