配置使用snmptrap


參考文章:http://www.ibm.com/developerworks/cn/linux/l-cn-snmp/

SNMP簡單網絡管理協議,其中其支持的一個命令snmptrap命令,用於模擬向管理機發送trap消息。

 

vi /etc/snmp/snmptrapd.conf
添加
traphandle default /usr/local/zabbix/bin/snmptrap.sh   #處理腳本
authCommunity execute public

啟動陷阱方法:

snmptrapd -C -c /etc/snmp/snmptrapd.conf -Lf /var/log/net-snmptrap.log

上面命令中的選項表示:

  • -C : 表示不使用net-snmp默認路徑下的配置文件snmptrapd.conf;
  • -c : 指定snmptrapd.conf文件;
  • -d : 顯示收到和發送的數據報,通過這個選項可以看到數據報文;
  • -f  : 默認情況下,snmptrapd是在后台中運行的,加上這個選項,表示在前台運行;
  • -L : 指定日志記錄在哪里,后面的o表示直接輸出到屏幕上,如果是跟着f表示日志記錄到指定的文件中;

可通過snmptrapd -h查看命令幫助了解該命令的使用。

 

 

例如:
  snmptrap -v1 -c public 192.168.12.1 .1.3.6.1.4.1.1 192.168.12.12 6 10 100
 命令  版本   -c 共同體  管理機  Enterprise-OID  snmp代理地址   陷阱類型 oid   時間
1.3.6.1.9.9.44.1.2.1 i 12 1.3.4.1.2.3.1 s aaa
 被發送參數的OID          數據類型 值 被發送參數OID 。。。。。
 
 
 i  整形 u  無符號型    c  COUNTER32    s  字符串   x  16進制字符串   d  10進制字符串  n  空對象 o  對象ID  t  計時器  a  IP地址 b  比特

Generic Type包括7種, 分別是:

0  coldStart  1  warmStart  2  linkDown  3  linkUp  4  authenticationFailure          5  egpNeighborLoss        6  enterpriseSpecific
 
具體例子:
snmptrap -v1 -c public 192.168.12.1 .1.3.6.1.4.1.1 192.168.12.12 2 3 1000 1.3.6.1.9.9.44.1.2.1 i 12 1.3.4.1.2.3.1 s zzz
輸出結果:
2010-06-28 15:45:12 bogon [192.168.2.125] (via UDP: [192.168.12.12]->[192.168.12.1]:-32761 TRAP, SNMP v1, community public
               SNMPv2-SMI::enterprises.1 Link Down Trap (3) Uptime: 0:00:10.00
              SNMPv2-SMI::internet.9.9.44.1.2.1 = INTEGER: 12 SNMPv2-SMI::org.4.1.2.3.1 = STRING: "zzz"
 
檢測:192.168.12.1為我的管理地址

snmptrap -v1 -c public 192.168.12.1 .1.3.6.1.4.1.1 38.1.55.63 2 3 1000 1.3.6.1.9.9.44.1.2.1 i 12 1.3.4.1.2.3.1 s zzz
snmptrap -v1 -c public 192.168.12.1 .1.3.6.1.4.1.1 38.1.55.63 2 3 1000 1.3.4.1.2.3.1 s "test v1"
snmptrap -v 2c -c public 192.168.12.1 "" 1.3.6.1.4.1.2345 SNMPv2-MIB::sysLocation.0 s "test v2"
snmptrap -v3 -l authNoPriv -a MD5 -u 'mytestsnmpuser' -A 'mytestsnmpuser' -c public 192.168.12.1 "" 1.3.6.1.4.1.2345 SNMPv2-MIB::sysLocation.0 s "test v3"

查看結果:
tail -f /var/log/net-snmptrap.log
 

Received 60 byte packet from UDP: [192.168.12.1]:39976->[192.168.12.1]:162
0000: 30 3A 02 01 00 04 06 70 75 62 6C 69 63 A4 2D 06 0:.....public.-.
0016: 06 2B 06 01 04 01 01 40 04 26 01 37 3F 02 01 02 .+.....@.&.7?...
0032: 02 01 03 43 02 03 E8 30 13 30 11 06 06 2B 04 01 ...C...0.0...+..
0048: 02 03 01 04 07 74 65 73 74 20 76 31 .....test v1

2016-11-18 15:27:24 38.1.55.63(via UDP: [192.168.12.1]:39976->[192.168.12.1]:162) TRAP, SNMP v1, community public
SNMPv2-SMI::enterprises.1 Link Down Trap (3) Uptime: 0:00:10.00
SNMPv2-SMI::org.4.1.2.3.1 = STRING: "test v1"

 

Received 91 byte packet from UDP: [192.168.12.1]:54102->[192.168.12.1]:162
0000: 30 59 02 01 01 04 06 70 75 62 6C 69 63 A7 4C 02 0Y.....public.L.
0016: 04 13 D7 30 E5 02 01 00 02 01 00 30 3E 30 10 06 ...0.......0>0..
0032: 08 2B 06 01 02 01 01 03 00 43 04 25 28 33 AA 30 .+.......C.%(3.0
0048: 15 06 0A 2B 06 01 06 03 01 01 04 01 00 06 07 2B ...+...........+
0064: 06 01 04 01 92 29 30 13 06 08 2B 06 01 02 01 01 .....)0...+.....
0080: 06 00 04 07 74 65 73 74 20 76 32 ....test v2

2016-11-18 15:29:24 <UNKNOWN> [UDP: [192.168.12.1]:54102->[192.168.12.1]:162]:
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (623391658) 72 days, 3:38:36.58 SNMPv2-MIB::snmpTrapOID.0 = OID: SNMPv2-SMI::enterprises.2345 SNMPv2-MIB::sysLocation.0 = STRING: test v2

 

Received 187 byte packet from UDP: [192.168.12.1]:58668->[192.168.12.1]:162
0000: 30 81 B8 02 01 03 30 11 02 04 77 18 AC F1 02 03 0.....0...w.....
0016: 00 FF E3 04 01 01 02 01 03 04 3B 30 39 04 11 80 ..........;09...
0032: 00 1F 88 80 77 D2 34 6B F1 4B 18 58 00 00 00 00 ....w.4k.K.X....
0048: 02 01 4E 02 01 00 04 0E 6D 79 74 65 73 74 73 6E ..N.....mytestsn
0064: 6D 70 75 73 65 72 04 0C 5F E9 B2 DC D7 BD B8 04 mpuser.._.......
0080: F7 0D BF DB 04 00 30 63 04 11 80 00 1F 88 80 77 ......0c.......w
0096: D2 34 6B F1 4B 18 58 00 00 00 00 04 00 A7 4C 02 .4k.K.X.......L.
0112: 04 2D 03 BF 32 02 01 00 02 01 00 30 3E 30 10 06 .-..2......0>0..
0128: 08 2B 06 01 02 01 01 03 00 43 04 25 28 15 7F 30 .+.......C.%(..0
0144: 15 06 0A 2B 06 01 06 03 01 01 04 01 00 06 07 2B ...+...........+
0160: 06 01 04 01 92 29 30 13 06 08 2B 06 01 02 01 01 .....)0...+.....
0176: 06 00 04 07 74 65 73 74 20 76 33 ....test v3

 

 

 

配置文件內容authCommunity log,execute,net public 與 authCommunity execute public 的區別
authCommunity log,execute,net public的輸出內容格式為:
Received 93 byte packet from UDP: [192.168.12.1]:48241->[192.168.12.1]:162
0000: 30 5B 02 01 01 04 06 70 75 62 6C 69 63 A7 4E 02 0[.....public.N.
0016: 04 77 A7 51 18 02 01 00 02 01 00 30 40 30 10 06 .w.Q.......0@0..
0032: 08 2B 06 01 02 01 01 03 00 43 04 13 13 5D 76 30 .+.......C...]v0
0048: 15 06 0A 2B 06 01 06 03 01 01 04 01 00 06 07 2B ...+...........+
0064: 06 01 04 01 92 29 30 15 06 08 2B 06 01 02 01 01 .....)0...+.....
0080: 06 00 04 09 6A 75 73 74 20 68 65 72 65 ....just here

2016-11-18 09:52:45 <UNKNOWN> [UDP: [192.168.12.1]:48241->[192.168.12.1]:162]:
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (320036214) 37 days, 0:59:22.14 SNMPv2-MIB::snmpTrapOID.0 = OID: SNMPv2-SMI::enterprises.2345 SNMPv2-MIB::sysLocation.0 = STRING: just here

 

authCommunity execute public的輸出內容格式為:
Received 93 byte packet from UDP: [192.168.12.1]:46390->[192.168.12.1]:162
0000: 30 5B 02 01 01 04 06 70 75 62 6C 69 63 A7 4E 02 0[.....public.N.
0016: 04 46 7C C8 61 02 01 00 02 01 00 30 40 30 10 06 .F|.a......0@0..
0032: 08 2B 06 01 02 01 01 03 00 43 04 25 09 9A 64 30 .+.......C.%..d0
0048: 15 06 0A 2B 06 01 06 03 01 01 04 01 00 06 07 2B ...+...........+
0064: 06 01 04 01 92 29 30 15 06 08 2B 06 01 02 01 01 .....)0...+.....
0080: 06 00 04 09 6A 75 73 74 20 68 65 72 65 ....just here

 

配置文件/etc/snmp/snmptrapd.conf說明 

traphandle default /usr/local/zabbix/bin/snmptrap.sh   #處理腳本
authCommunity execute public

以 authCommunity 開頭的一行配置了 snmptrapd 的安全設置,表示可以接收 community 為”public”的 SNMP Trap,並且本進程可以有 log,net 和 execute 的權限。

Log 權限表明收到 Trap 之后 snmptrapd 可以記錄日志;execute 表明收到 Trap 之后可以執行 traphandle 中所指定的操作。Net 表示 snmptrapd 可以將接收到的 Trap 信息轉發到其他的 Receiver 去。(假如需要轉發,還需要對給定的 OID 指定以 forward 為開始的處理細節:forward OID|default DESTINATION)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM