linux系統配置snmp
最近公司需要在監控一下各項目地的服務器運行狀況,查找資料發現可以直接通過SNMP服務實現,於是打算測試一下在RedHat Linux系統中安裝和配置snmp服務
檢查系統是否安裝snmp服務
# rpm -qa|grep snmp
net-snmp-5.3.2.2-17.el5
net-snmp-perl-5.3.2.2-17.el5
net-snmp-devel-5.3.2.2-17.el5
net-snmp-libs-5.3.2.2-17.el5
net-snmp-utils-5.3.2.2-17.el5
net-snmp-libs-5.3.2.2-17.el5
net-snmp-devel-5.3.2.2-17.el5
SNMP服務安裝後會有以上安裝包
安裝SNMP服務
1.配置好本地yum服務,使用yum安裝
yum install -y net-snmp*
2.配置SNMP服務開機啓動
#chkconfig snmpd on
#chkconfig --list | grep snmpd
查看開機啓動設置是否成功 snmpd 0:關閉 1:關閉 2:啓用 3:啓用 4:啓用 5:啓用 6:關閉
驗證SNMP服務
1.使用snmpwalk獲取主機名
# snmpwalk -v 2c -c public localhost sysName.0
2.使用snmptranslate命令,檢查snmp工具是否可以使用
# snmptranslate -To | head
.1.3
.1.3.6
.1.3.6.1
.1.3.6.1.1
.1.3.6.1.2
.1.3.6.1.2.1
.1.3.6.1.2.1.1
.1.3.6.1.2.1.1.1
.1.3.6.1.2.1.1.2
.1.3.6.1.2.1.1.3
查出了部分oid,則表示snmp工具可以正常使用
配置SNMP服務
1.配置SNMP連接字符串 community string
# vi /etc/snmp/snmpd.conf
2.修改查看設備節點權限
在配置文件/etc/snmp/snmpd.conf中找到如下位置
# Third, create a view for us to let the group have rights to:
# Make at least snmpwalk -v 1 localhost -c public system fast again.
# name incl/excl subtree mask(optional)
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
view:定義了可以查看哪些節點設備的信息。 snmp默認配置只能查看.1.3.6.1.2.1.1和.1.3.6.1.2.1.25.1.1節點下的設備信息, 而主機CPU和內存等設備都不在這些節點下,所以無法獲取這些數據。 因此,可以修改這個配置,如下:
# Third, create a view for us to let the group have rights to:
# Make at least snmpwalk -v 1 localhost -c public system fast again.
# name incl/excl subtree mask(optional)
view systemview included .1
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
view systemview included .1
表示可以查看.1節點下的所有設備信息。
配置防火牆,開放snmp端口,默認161
這裏配置是將監控寶IP設爲可訪問,方便後續加入監控平臺192.168.1.1 設置爲本機 ip
#iptables -A INPUT -i eth0 -p udp -s 192.168.1.1 --dport 161 -j ACCEPT
# service iptables restart
啓動snmpd服務,在本地進行測試
# servcei snmpd start