1、使用SNMP服务前需要在服务器上安装SNMP:使用ROOT用户登陆在服务器,输入:yuminstall net-snmp net-snmp-devel net-snmp-libs net-snmp-utils php-snmp进行下载。
2、上面的程序首先会校验需要升级的文件和需要下载安装的文件,然后列来,告诉你有多大,会提示您是不是这些,需要继续不,输入Y,就开始下载了。
3、下载完成后,会自动解包安装,整个过程是自动的,无需要人工操作。安装完成没有错误会提示:Complete!
4、安装完SNMP服务后,就需要进行相关配置了,SNMP的配置文件在:yum安装snmpd的配置文件为 /etc/snmp/snmpd.conf
5、如果不会在命令模式下使用vi编辑器的话,建议把snmpd.conf配置文件下载到本地,然后用UE等文本编辑软件打开编辑更改。
如何在CentOS系统中安装配置SNMP服务
配置snmpd.conf文件需要更改五个地方(默认配置基础上):
1、配置snmp团体名(默认是public): com2secnotConfigUser default public 建议更改public为您使用的团体名称
2、将accessnotConfigGroup "" any noauth exact systemview none none更改为accessnotConfigGroup "" any noauth exact all none none
3、将如下两行前面的注释去掉
## incl/excl subtree maskview all included.1 80## -or just the mib2 tree-view mib2 included .iso.org.dod.internet.mgmt.mib-2fc
4、将下面一行前面的注释去掉
#access notConfigGroup "" anynoauth exact roview rwview noneaccess notConfigGroup "" any noauthexact mib2 none none
注意以前您在复制搜索时请使用中间的关键搜索,因为配置文件中字符间隔长,
6、配置文件修改完后,保存,上传到服务器中。
然后输入:service snmpd restart 重新启动snmp服务
最后还需要执行如下命令:chkconfig snmpd on 意思是把服务加到开机启动中,开机自动运行。
可以使用一个简单命令判断snmp服务是否已经成功启动:
netstat -ln | grep 161
现在还有人用红旗吗?很多都没支持了,以下介绍下在Linux下安装snmp:
下载源码:
选择一个SNMP版本,比如5.7.1,下载地址如下:http://sourceforge.net/projects/net-snmp/files/net-snmp/5.7.1/net-snmp-5.7.1.tar.gz
解压文件:tar xzvf net-snmp-5.7.1.tar.gz
进入文件夹进行配置安装:cd net-snmp-5.7.1
net-snmp-5.7.1目录下的configure是可执行文件,如果想指定程序包的安装路径,那么首先建立相应的文件夹来存放安装信息,可以写成./configure –-prefix=/指定的路径名。参数--prefix用来告诉系统安装信息存放的路径,如果没有指定路径,直接执行./configure,那么程序包都会安装在系统默认的目录下,通常为:/usr/local下
执行命令"./configure --prefix=/usr/local/snmp --with-mib-modules='ucd-snmp/diskio ip-mib/ipv4InterfaceTable'",注意,以上的--with-mib-modules=ucd-snmp/diskio选项,可以让服务器支持磁盘I/O监控
4.回车出现下面问题,可以直接回车而不用回答,系统会采用默认信息,其中日志文件默认安装在/var/log/snmpd.log.数据存贮目录默认存放在/var/net-snmp下
1)default version of-snmp-version(3):
2)System Contact Information (@@no.where)(配置该设备的联系信息):
3)System Location (Unknown)(该系统设备的地理位置):
4)Location to write logfile (日志文件位置):
5)Location to Write persistent(数据存储目录):
5.执行编译和安装:make && make install
6.配置snmpd.conf
使用"ls"命令查看/usr/local/snmp目录下是否存在etc目录,如果不存在etc目录,就创建一个
查看结果显示不存在etc目录,在/usr/local/snmp目录下创建一个etc目录,创建etc目录命令"mkdir /usr/local/snmp/etc"
6.找到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文件中的内容
8.找到【AGENT BEHAVIOUR】,允许网络访问
9.修改如下:添加"agentAddress udp:161"配置项
10. 找到【ACTIVE MONITORING】选择协议
11. 找到【ACCESS CONTROL】设置权限
12. 找到【rocommunity public default -V systemonly】,把 -V systemonly去掉,这是设置访问权限的,去掉后能访问全部
13.保存snmpd.conf后退出
14.启动:
由于我们刚才修改SNMP的snmpd.conf文件,所以在启动snmp服务之前,先使用命令"ps aux | grep snmp | grep -v grep |awk '{print $2}'| xargs kill"关闭snmp的相关服务
15.使用"netstat -an |grep 161"查看snmp的服务是否启动
16.启动snmp服务:"/usr/local/snmp/sbin/snmpd -c /usr/local/snmp/etc/snmpd.conf"
17.测试:
获取本机的系统名字,使用命令:"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"查看当前的安装版本号来验证是否安装成功,如果安装成功,则显示当前的安装版本号
18.完成snmpd的配置并且SNMP测试通过之后,要确保Linux的iptables防火墙对外开放了udp 161端口的访问权限,可以使用"iptables –L –n"查看当前iptables规则
19.用"iptables -I INPUT -p udp --dport 161 -j ACCEPT"命令添加UDP 161端口到iptables防火墙中,然后执行"iptables save"命令保存防火墙的更改
20.在window系统下使用Snmputil.exe工具测试对Linux下的SNMP访问,测试Linux的UDP 161端口是否对外开
21."snmputil get 192.168.1.229 public .1.3.6.1.2.1.1.5.0"命令返回192.168.1.229这台Linux服务器的名字,可以看到,Linux服务器的名称已经正常返回输出到命令行窗口了。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)