監視システム(NMS) 目次

概要

ZabbixのUIからのスクリプト実行により、SNMPTrapの発報・検知試験を行うためのツール。

構造

Web UIからのスクリプトから特定のホスト宛のTrapを送するシェルスクリプトを実行し、Zabbixに検知させるための処理を行う。

設定

以下のコードを所定箇所に保管して設定を行う。
送信するTrapの内容は別ファイル化することで差し替えを可能としている。

コード

Trap送信スクリプト

  • 書式
    ./sendtrap.sh [送信元IP] [ポート番号] [Trapファイル名]
  • sendtrap.sh
    #!/bin/sh
    # ------------------------
    #  SNMPTrap sender
    # ------------------------
    # Version : 1.0
    # date    : 2022/07/31
    
    export LANG=C
    export PATH=/bin:/sbin:/usr/bin:/usr/sbin:$PATH
    
    ## Config
    
    BASEDIR="/opt/zbx-cmd/trap"
    ZBXTRAP="/var/log/zabbix/zabbix_traps.log"
    
    ## Parameter
    
    DATE=`date +%H:%M:%S\ %Y-%m-%d`
    HOSTIP=$1
    PORT=$2
    TRAPFILE=$BASEDIR"/"$3
    
    ## Check
    
    test -f $TRAPFILE || echo "[ERR] "$TRAPFILE" not found" 
    test -z $3 && echo "[ERR] Parameter not found" 
    test -z $2 && echo "[ERR] Parameter not found" 
    test -z $1 && echo "[ERR] Parameter not found" 
    
    ## Execite
    
    echo $HOSTIP
    echo $PORT
    
    cat $TRAPFILE | sed -e "s/HOSTIP/$HOSTIP/" -e "s/PORT/$PORT/" -e "s/DATE/$DATE/g" >> $ZBXTRAP
    
    # EOF

トラップ内容のファイル

  • linkdown
    DATE ZBXTRAP HOSTIP
    PDU INFO:
      community                      localnet
      errorindex                     0
      messageid                      0
      version                        1
      requestid                      2030993
      notificationtype               TRAP
      transactionid                  2
      receivedfrom                   UDP: [HOSTIP]:47322->[10.10.55.24]:162
      errorstatus                    0
    VARBINDS:
      DISMAN-EVENT-MIB::sysUpTimeInstance type=67 value=Timeticks: (4245094454) 491 days, 7:55:44.54
      SNMPv2-MIB::snmpTrapOID.0      type=6  value=OID: IF-MIB::linkDown
      RFC1213-MIB::ifIndex.PORT        type=2  value=INTEGER: PORT
      RFC1213-MIB::ifAdminStatus.PORT  type=2  value=INTEGER: 1
      RFC1213-MIB::ifOperStatus.PORT   type=2  value=INTEGER: 2
  • linkup
    DATE ZBXTRAP HOSTIP
    PDU INFO:
      errorstatus                    0
      receivedfrom                   UDP: [HOSTIP]:47322->[10.10.55.24]:162
      transactionid                  1
      messageid                      0
      community                      localnet
      errorindex                     0
      notificationtype               TRAP
      requestid                      2030992
      version                        1
    VARBINDS:
      DISMAN-EVENT-MIB::sysUpTimeInstance type=67 value=Timeticks: (4245093468) 491 days, 7:55:34.68
      SNMPv2-MIB::snmpTrapOID.0      type=6  value=OID: IF-MIB::linkUp
      RFC1213-MIB::ifIndex.PORT        type=2  value=INTEGER: PORT
      RFC1213-MIB::ifAdminStatus.PORT  type=2  value=INTEGER: 1
      RFC1213-MIB::ifOperStatus.PORT   type=2  value=INTEGER: 1

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS