本文以監(jiān)控綠盟設(shè)備為例。
1.登錄被監(jiān)控的設(shè)備的管理系統(tǒng)藐鹤,配置snmptrap地址指向zabbix服務(wù)器或代理服務(wù)器蹭沛。
snmptrap地址也叫陷阱。
2.配置或關(guān)閉防火墻送淆,并驗(yàn)證是否能在zabbix服務(wù)器或代理服務(wù)器上收到設(shè)備的trap信息税产。
2.1 舊版防火墻開放UDP的162端口的命令如下:
vi /etc/sysconfig/iptables
編輯防火墻的配置文件。
-A INPUT -p udp -m udp --dport 162 -j ACCEPT
添加一行代碼坊夫。
/etc/init.d/iptables restart
重啟防火墻砖第,使配置生效撤卢。
2.2 新版防火墻開放UDP的162端口命令如下:
firewall-cmd --permanent --add-port=162/udp
firewall-cmd --reload
firewall-cmd??--list-ports
命令解析:
firewall-cmd --permanent --add-port=162/udp? ?永久開放UDP協(xié)議的162端口
firewall-cmd --reload? ?? ?? ???更新防火墻規(guī)則
firewall-cmd --list-ports? ?? ? 查看所有開放的端口
2.3 開放防火墻后环凿,驗(yàn)證是否能在zabbix服務(wù)器或代理服務(wù)器上收到設(shè)備的trap信息,命令如下:
ip add
查看設(shè)備的網(wǎng)卡名稱
tcpdump -i ens160 src 192.166.16.8
查看ens160 網(wǎng)卡收到的IP為192.166.16.8的設(shè)備的數(shù)據(jù)包
效果如下圖:
沒有tcpdump命令的話放吩,可以使用命令yum -y install tcpdump 進(jìn)行安裝智听。
3.配置zabbix_trap_receiver.pl腳本
在zabbix 服務(wù)器或者代理服務(wù)器上,復(fù)制源碼目錄中的Perl腳本到 /usr/bin目錄下并賦予執(zhí)行權(quán)限
然后安裝net-snmp渡紫,命令如下:
cp??`find / -name zabbix_trap_receiver.pl`??/usr/bin
chmod a+x /usr/bin/zabbix_trap_receiver.pl
yum -y??install? ?net-snmp*
效果如下圖:
注意到推,此處可能遇到的問(wèn)題:如果最后snmptrapd啟動(dòng)失敗,提示缺少/usr/share/snmp/snmp_perl_trapd.pl文件惕澎,原因是net-snmp相關(guān)的安裝包安裝太少莉测,建議更換yum安裝源。
4.找到snmptrapd的配置文件并修改唧喉,命令如下:
vi??/etc/snmp/snmptrapd.conf
添加代碼
disableAuthorization??yes
perl do "/usr/bin/zabbix_trap_receiver.pl"
disableAuthorization yes 表示不認(rèn)證捣卤,接收所有團(tuán)體名(community)的 trap信息
authCommunity execute public??表示只接收?qǐng)F(tuán)體名(community)為 public 的 trap信息,可以寫多行
修改完成后重啟snmptrapd服務(wù)八孝,命令如下:
service snmptrapd restart
或
systemctl restart snmptrapd
注意一段時(shí)間后觀察snmptrapd狀態(tài)是否正常董朝,時(shí)間久的話可以看到收到了設(shè)備發(fā)出的trap包也可以主動(dòng)發(fā)送測(cè)試trap信息:
snmptrap -v 1 -c public 127.0.0.1 '.1.3.6.1.6.3.1.1.5.3' '0.0.0.0' 6 33 '55' .1.3.6.1.6.3.1.1.5.3 s "teststring000"
查看snmptrapd狀態(tài),命令如下:
service snmptrapd status
或
systemctl status snmptrapd
5.在zabbix服務(wù)器上修改zabbix_server.conf文件的以下兩處:
StartSNMPTrapper=1
SNMPTrapperFile=/tmp/zabbix_traps.tmp?
(注:最后一行的路徑必須跟 /usr/bin/zabbix_trap_receiver.pl腳本中設(shè)置的路徑相同)
修改完成后重啟zabbix_server服務(wù)干跛,命令如下:
service??zabbix_server??restart
或
systemctl??restart??zabbix_server
6.在zabbix服務(wù)器上配置監(jiān)控主機(jī)子姜,添加監(jiān)控項(xiàng)。效果如圖所示:
監(jiān)控項(xiàng):
名稱:snmptrap.fallback
類型:SNMP trap
鍵值:snmptrap.fallback
信息類型:日志
日志時(shí)間格式:hh:mm:sszyyyy/MM/dd解析:
鍵值配置為snmptrap.fallback楼入,可以接收所有未配置成SNMPtrap監(jiān)控項(xiàng)的設(shè)備發(fā)出的trap信息哥捕。
7.查看監(jiān)控主機(jī)的最新數(shù)據(jù)牧抽,驗(yàn)證實(shí)驗(yàn)結(jié)果。
在最新數(shù)據(jù)里選擇被監(jiān)控的主機(jī)遥赚,點(diǎn)擊snmptrap.fallback的歷史記錄幻碱。
效果如下圖,在此處可以看到被監(jiān)控設(shè)備發(fā)出的trap信息逗余,但是從OID上不能明顯看出對(duì)應(yīng)的信息茁肠,因此需要為net-snmp添加mib文件。
到此步驟御蒲,已基本完成SNMP trap監(jiān)控類型的配置衣赶,后面的為進(jìn)階配置,主要是為了解決不能直觀地看出對(duì)應(yīng)信息的問(wèn)題厚满。
8.在zabbix服務(wù)器或代理服務(wù)器上添加mib文件府瞄。
net-snmp-config --default-mibdirs? ?命令可以看到mib文件位置,效果如下:
[root@mgmtmonitorweb02 ~]# net-snmp-config --default-mibdirs
/root/.snmp/mibs:/usr/share/snmp/mibs
[root@mgmtmonitorweb02 ~]#
cd /usr/share/snmp/mibs? ? 打開存儲(chǔ)mib文件的目錄
ls? ?? ?? ?? ???可以看到自帶的mib文件碘箍,此處WAFV6-MIB.txt是我找廠商售后索取的mib文件
效果如下圖:
9.在zabbix服務(wù)器或代理服務(wù)器上應(yīng)用mib文件遵馆。
vi /etc/snmp/snmp.conf? ?? ?? ?修改此配置文件
mibs +ALL? ?? ?? ?? ?? ?? ?? ?在文件中添加此行,意思是應(yīng)用mib文件目錄下的所有mib文件
效果如下圖:
解析:
mibs +后面可以填寫mib文件的名字丰榴,如mibs +WAFV6-MIB货邓,需要注意的是“+”號(hào)后直接加文件名,不可出現(xiàn)空格四濒,否則會(huì)有錯(cuò)誤换况。
修改完成后重啟snmptrapd服務(wù),命令如下:
service snmptrapd restart
或
systemctl restart snmptrapd
重啟注意后觀察snmptrapd狀態(tài)是否正常盗蟆,時(shí)間久的話可以看到收到了設(shè)備發(fā)出的trap包戈二。命令如下:
service snmptrapd status
或
systemctl status snmptrapd
此時(shí)可以看到,OID的名字已經(jīng)發(fā)生改變喳资。效果如下圖:
10.在zabbix服務(wù)上驗(yàn)證最新數(shù)據(jù)是否發(fā)生改變觉吭。效果如下圖:
此時(shí)可以看到OID不再是數(shù)字,而是比較容易識(shí)別的英文名字仆邓,此名字可在mib文件中修改鲜滩,但不能以中文命名。
11.如果需要分類trap信息宏赘,可以如下圖配置監(jiān)控項(xiàng)绒北。
注意:此時(shí)鍵值snmptrap[]的[]內(nèi)不再是填寫數(shù)字OID,而是監(jiān)控項(xiàng)snmptrap.fallback獲取到的mib文件里定義的名字察署,
如:snmptrap[WAFV6-MIB::alert-level]
原文地址