11. SNMP TRAP監視設定マニュアル
本書はX-MON4を用いてSNMP TRAPを監視するリファレンスです。
基本的なOSやGUIの一般的な操作、用語などについては知識をご理解の上でお読みください。
また、X-MONの操作画面はお使いのOSやブラウザによって異なる場合がございます。
11.1. SNMP TRAP監視とは
X-MONでは、サーバやネットワーク機器からイベントが発生した際に状況を通知するSNMP TRAPに対応しています。
SNMP TRAPはサーバの管理ソフトやバックアップソフトで正常にジョブが終了した通知や、ネットワーク機器にてポートの状況が変化した際などに使用されます。
SNMP TRAPはOIDという数字列で構成され、その数字列が対応するMIBという各ベンダーが公開している管理項目と照らしあわせ、そのTRAPが何を意味しているかを表示します。
X-MONでは、複数ベンダーのMIBをデフォルトで各種搭載しています。
また、各ベンダーが公開しているMIBファイルをX-MONに登録する事も可能です。
11.2. 監視概要
SNMPTRAPの監視を設定するには以下のような手順を踏みます。
本リファレンスではサンプルネットワークを基に、手順について解説していきます。
■ サンプルネットワーク
11.2.1. 監視について
SNMP TRAPの監視はSNMP TRAPのデーモン(SNMPTT)で動作しています。
SNMPTTがTRAPを受信しX-MONへ通知する、という形です。そのため監視はパッシブチェックとなります。
また、X-MONではSNMP TRAPの監視設定を「通知条件の設定」という名称としております。
どのSNMP TRAPを通知条件に設定するかや、MIBを登録・編集する際はSNMP TRAP管理にて行います。
基本的な流れとしては、SNMP TRAP管理にて通知条件を作成しホストへ紐づけてから、ステータスによる通知の有無や再通知間隔などを[エスカレーション設定]にて設定します。
11.2.2. MIBの依存関係について
MIBファイルには依存関係が存在します。大きいカテゴリと小さいカテゴリがあり、小さいカテゴリのMIBファイルを使用するには、大きいカテゴリのMIBファイルが登録されている必要があります。ベンダーのサイトでも依存関係については表記があります。
またX-MONではMIBファイル登録時に依存関係のチェックを実施し、不足しているMIBファイルがあれば表示されます。( 依存関係の不足 を参照)
11.2.3. 監視ホストの設定について
機器やソフトウェアのSNMP TRAPの設定は各マニュアルを確認してください。
例えばCiscoスイッチではグローバルコンフィギュレーションモードにて
(config)# snmp-server enable traps
(config)# snmp-server host [IPアドレス] version 2c [コミュニティ名]
|
等で設定が可能です。X-MONではデフォルトのコミュニティ名はpublicです。
ソフトウェアですと、TrendMicro社のServerProtectやSymantec社のBackupExecなどGUIの管理画面から設定出来るものもあります。また、WindowsサーバもGUIより設定可能です。Windowsに関しては 設定例(Windowsサーバからの任意TRAP通知) を参照ください。
次章より、サンプルネットワークに沿って設定方法を解説します。
11.3. TRAPする機器の確認
本リファレンスのサンプル、Cisco社のcatalyst2950スイッチを利用して解説します。
Cisco機器の場合、以下のwebサイトにてどのようなtrapがあるか解説されています。
■ URL1
また、Cisco社が公開しているMIBについては
■ URL2
https://snmp.cloudapps.cisco.com/Support/SNMP/do/BrowseOID.do?local=ja
の「SNMP オブジェクトナビゲータ」から検索が可能です。(要サイトログイン)
11.3.1. MIBファイルの探し方
どのようにMIBファイルを探すかですが、例えば「コンフィグファイルが更新された際にTRAPで通知したい」、とします。
この場合、URL2で「CISCO-CONFIG-MAN-MIB」を検索します。
■ URL3
http://tools.cisco.com/Support/SNMP/do/BrowseMIB.do?local=ja&step=2&mibName=CISCO-CONFIG-MAN-MIB
ここで必要なMIBの一覧が表示されます。
X-MONではSNMPバージョン2を推奨しますので、バージョン2をダウンロードします。
対象MIB以外に、依存関係のあるMIBも必要ですが、X-MONでは基本的なMIBはすでに搭載しています。そのため、登録されていないものだけダウンロードしてください。
この例では、「CISCO-CONFIG-MAN-MIB」以外はすでにX-MONに登録されていますので、ダウンロードするのは「CISCO-CONFIG-MAN-MIB」のみとなります。
これで必要なMIBファイルが準備出来ました。
11.3.2. その他のMIBファイルの探し方
・YAMAHAルータの場合
http://www.rtpro.yamaha.co.jp/RT/docs/mib/
上記URL先にて公開されています。一部のMIBはX-MONに初期登録済です。
・サーバソフトウェアの場合
サーバソフトウェアの場合も、各種ネットワーク機器等と同様に各ベンダーのwebサイトにて公開されております。
TrendMicro社 Smart Protection Serverでは下記ヘルプの通り、製品の管理画面からダウンロード可能です。
Symantec社のBackupExecでは
このように製品内部にしかないものもありますのでご注意ください。
また、Windowsサーバでは独自のMIBファイルがありませんので手動で登録する形となります。( 設定例(Windowsサーバからの任意TRAP通知) 参照)
必要なMIBファイルが用意出来たら、X-MONへMIBファイルを登録しますので次章をご参照ください。
11.4. MIBファイルのX-MONへの登録
MIBファイルが準備出来たらX-MONへ登録します。
サンプルではCisco catalyst2950のCISCO-CONFIG-MAN-MIBを使用します。
11.4.1. MIBファイルを登録する
X-MONの画面からSNMP TRAP管理を選択します。
このような画面が表示されます。
ここがSNMP TRAPの管理画面となります。管理画面の詳細は SNMP TRAP管理画面メニューについて に記載しております。
それではMIBをX-MONに登録していきます。
TRAP条件設定タブを選択して開いてください。
現在X-MONに登録されているMIBファイルの一覧が表示されます。
左上に「MIBファイルの登録・更新」のボタンがありますので開きます。
MIBファイルの登録画面になります。
11.4.1.1. MIBファイルのアップロード
ここでは登録するMIBファイルのアップロードを行います。
登録したいMIBファイルを青い点線で囲われた範囲に移動させ、ドロップします。
次にアップロードしたMIBの受信文字コードを指定します。
X-MONがTRAPを受信した際、正しくエンコードが行える様に確認し設定してください。
文字コード欄は下記3種が選択出来ます。
・UTF-8 ・SJIS ・EUC
ファイルの文字コードではなく、送信元TRAPの文字コードとなります。
通常はUTF-8を選択してください。(デフォルト)
しかし、TRAPの送信元がWindowsの場合はSJISの場合がございますので、その場合はSJISを選択してください。
文字コードを指定した後[アップロード]ボタンを押し、次の画面に進みます。
11.4.1.2. MIB・TRAP定義の確認
MIBファイルの解析が行われた結果、登録することで追加されるTRAP定義の一覧が表示されます。
MIBファイルの更新を行った場合は、更新を行うことで追加・削除されるTRAP定義が表示されます。
11.4.1.2.1. TRAP通知の条件を設定せず、MIB定義の登録・更新のみ行う場合
右側の[MIB・TRAP定義の登録(TRAP条件設定の登録を行わない)]を選択します。
MIBに含まれるTRAP定義が登録され、一覧画面へ移動します。
※登録完了後、X-MONの再起動を実施することで設定がサーバに保存されます。
11.4.1.2.2. MIBファイルの登録と共に、TRAP通知の条件を設定する場合
ホストに登録するTRAP通知条件を同時に登録する場合、左側の[MIB・TRAP定義を登録し、TRAP条件設定の登録を行う]を選択します。
MIB定義と含まれるTRAP定義が登録され、次の画面に移動します。
11.4.1.3. デフォルトTRAP条件の選択
この画面では各TRAP定義にTRAP通知条件を設定します。
TRAP通知条件の詳しい説明は TRAP通知条件の設定 をご参照ください。
登録するTRAP通知条件のチェックボックスにチェックを入れ以下の項目を入力します。
TRAP条件名称:TRAP条件を識別します。
通知先サービスID:ホストへ登録する際のデフォルトのサービスIDです。
通知ステータス:TRAP通知条件に一致するTRAPを受信した際に変更するステータスを指定します。
登録する設定を選択した後、[登録]ボタンを押します。
各MIBのTRAP定義へTRAP条件が登録され、一覧画面へ移動します。
※登録完了後、X-MONの再起動を実施することで設定がサーバに保存されます。
MIB一覧でも確認出来ます。
左側のMIB一覧より、「CISCO-CONFIG-MAN-MIB」が登録されていることがわかります。
「CISCO-CONFIG-MAN-MIB」を選択してください。
右側のページに、このMIB定義から3つのTRAP定義が登録されたことがわかります。
通知条件はここから設定します。
受信するOIDによってステータスの変化や通知先を変更できます。
11.4.2. MIBファイル登録時のエラーについて
11.4.2.1. MIBファイル以外の形式の禁止
MIBファイルでないファイルを登録しようとした場合はエラーが表示され登録出来ません。
11.4.2.2. 依存関係の不足
登録しようとしているMIBファイルに継承元の必要なMIBがX-MONに登録されていない場合はエラーとなり登録出来ません。
この場合は表示されている「ALTIGA-MIB」というMIBを同時、または先にX-MONに登録する必要があります。
11.4.4. MIBの文字コードを変更する
登録したMIBの文字コードを変更する際はMIB一覧から対象のMIB定義名を選択し、えんぴつアイコン(受信文字コードの変更アイコン)を開いてください。
変更する文字コードを選択し、変更ボタンを押してください。
例では「CISCO-CONFIG-MAN-MIB」の文字コードをSJISへ変更してみます。
変更が完了すれば「文字コードの変更が正常に行われました。」と画面に表示されます。
もう一度えんぴつアイコン(受信文字コードの変更アイコン)を開くと、指定されている文字コードが「SJIS」となっていることが確認できます。
11.4.5. MIBファイルの内容をプレビューする
MIBファイルの内容をプレビューで確認出来ます。
MIB一覧から対象のMIB定義名を選択し、ノートアイコン(MIB定義の表示アイコン)を開いてください。
開くと下記図のような画面となりMIBファイルの内容を確認出来ます。
ウィンドウを閉じるには[閉じる]を押してください。
11.4.6. MIB定義の継承関係を確認する
MIB定義がどのMIB定義を参照しているか、またはされているかを確認出来ます。
MIB一覧から対象のMIB定義名を選択し、ツリーアイコン(MIB継承階層の確認アイコン)を開いてください。
開くと下記図のような画面となりMIB定義の継承関係を確認出来ます。
継承元MIB定義…表示されているMIBを選択したMIB定義(例ではCISCO-CONFIG-MAN-MIB)が参照しており、どれか1つでも登録されていないとTRAPが正常に動作しなくなります。
継承先MIB定義…選択したMIB定義が継承元となるMIB定義の一覧です。
11.4.7. MIBを削除する
登録しているMIBを削除するには、MIB一覧から対象のMIB定義名を選択し、×アイコン(削除アイコン)を開いてください。
確認ウィンドウが出ますので、OKでしたら削除を押してください。
※通知設定が登録されている場合は、MIBを削除することで通知設定も削除されます。
「CISCO-CONFIG-MAN-MIB:MIB定義ファイルを削除しました」の表示が出ます。
これで削除は完了です。
11.5. TRAP通知条件の設定
必要なMIBをX-MONへ登録できたので、通知条件の設定(監視設定)をしていきましょう。ここでは「CISCO-CONFIG-MAN-MIB」を例にします。
11.5.1. TRAP通知条件の設定例
X-MONの画面からSNMP TRAP管理を選択します。
TRAP条件設定タブを選択して開いてください。
■ TRAP条件設定 MIB一覧
左側のMIB一覧より、「CISCO-CONFIG-MAN-MIB」を開いてください。
OID一覧が表示され、3つのTRAPが定義されています。
「ciscoConfigManEvent」のTRAPを設定してみましょう。
「ciscoConfigManEvent」隣の+アイコンを開いてください。
それぞれの項目は下記となります。
項目名 |
内容 |
---|---|
TRAP条件名称 |
登録する通知条件の名前を入力します。
同じMIBの同じTRAP定義に、重複して同じ名称は指定できません。
|
通知先サービス名 |
入力した通知先サービス名がホストへ登録時の初期値として表示されます。
ホストへ登録時、変更して登録することも可能です。
入力制限:入力必須、半角英数字、アンダーバー、ドット、ハイフンのみ。
また、以下の通知先サービス名は設定できません。
・「-VMPERF」で終わる
・間に「-VMPERF-」「-VMWARE-」を含む
|
通知ステータス |
対象TRAPが通知条件と一致した場合にX-MONに渡すステータス情報を
「OK」「WARNING」「CRITICAL」「UNKNOWN」から選択します。
|
メッセージ |
TRAP受信時に通知履歴へ表示されるメッセージです。
|
Data Binding |
TRAPOIDの中に含まれている変数バインドの情報を表示し条件を指定することが出来ます。
TRAPの中には変数バインドを持たないものも存在します。
変数バインドを持っていない場合、
「このTRAPはData Bindingを持っていないため設定できません」と表示されます。
変数バインドを持っている場合、バインド名、条件入力フィールド、
使用条件が表示されます。
|
バインド名 |
変数の名前を表示します。 |
条件入力フィールド |
バインド名に対して自由に記述することが出来るテキストフィールドで、
使用条件と組み合わせます。
|
使用条件 |
「完全一致」「前方一致」「正規表現」が選択でき、その情報と
条件入力フィールドの値を組み合わせて比較します。
データバインディングの条件は、そのバインド名の項目が未入力だった場合は
比較されません。
このため特定のバインドに対して条件を指定したくない場合は未記入で構いません。
正規表現を選択している時は先頭と末尾にデリミタの「/」を必ず指定してください。
例:)/^X-MON$/
また、全て未記入の場合は、対象TRAP OIDが送られてきた場合に通知します。
|
今回はdata bindingは入力せず、下記のような条件で設定します。
(Data Bindingについては Data Bindingについて をご参照ください)
項目名 |
内容 |
---|---|
対象TRAP |
CISCO-CONFIG-MAN-MIB - ciscoConfigManEvent |
対象ホスト |
SW-TRAP |
TRAP条件名称 |
snmp-trap-test |
通知先サービス名 |
snmp-trap-test |
通知ステータス |
CRITICAL |
条件名と通知先サービス名は別の名前を指定可能ですが、同じにしておくほうが管理しやすくなります。
入力出来たら[登録]を押してください。
「TRAP条件の登録が正常に行われました。」と表示されます。
11.5.2. ホストへTRAP通知条件を登録
設定したTRAP通知条件をホストへ登録します。
TRAPサービス一覧タブを選択して開いてください。
X-MONに登録されているホストが左側に一覧で表示されます。
登録を行うホスト「SW-TRAP」をクリックで選択し、[TRAP条件の編集]ボタンを押します。
「TRAP定義からの条件抽出」でTRAP条件を登録したMIB「CISCO-CONFIG-MAN-MIB」を選択し、検索アイコンを押します。
表示されたウィンドウに登録したTRAP条件「snmp-trap-test」が表示されます。
チェックボックスで選択し、[追加]ボタンを押します。
追加されたTRAP条件「snmp-trap-test」が選択済みTRAP条件へ表示されます。
登録ボタンを押し、ホストへTRAP条件を登録します。
「TRAP条件の編集が正常に行われました。」と表示されます。
以上で通知条件の作成は完了です。X-MONの再起動を実施してください。
11.5.3. 登録したTRAP通知条件を確認する
TRAP通知条件が登録出来ているか確認してみましょう。
TRAPサービス一覧のホスト「SW-TRAP」を確認してください。
設定した通知条件の詳細は、歯車アイコンで開くと確認できます。
サービス一覧を表示させてみましょう。
設定したホストにsnmp-trap-testがあります。
パッシブチェックのため、ステータス情報は「このサービスはチェックするようにはスケジュールされていません。」と表示されます。
SNMPTTがTRAPを検知し、X-MONへ通知すると検知します。
以上で通知条件の設定と確認は完了です。
TRAP検知のテストは 動作確認テスト にて行います。
11.5.4. 登録したTRAP通知条件を編集する
TRAP通知条件を編集するには、TRAP条件設定タブから行います。
TRAP条件設定タブより、「CISCO-CONFIG-MAN-MIB」を開いてください。
TRAP通知条件「snmp-trap-test」横の歯車アイコン(編集アイコン)を開いてください。
編集画面が開きますので、編集したい項目を編集してください。
編集が完了したら[編集]を押して完了後、設定を反映させるためにX-MONの再起動を実施してください。
11.5.4.1. 通知・エスカレーション設定について
SNMP TRAP管理からはOIDに基づく通知条件の編集を行いますが、 再通知間隔やステータスによる通知の有無、また通知先グループについては[サービスエスカレーション設定]から編集を行います。
該当サービスの[サービスエスカレーション設定] を開きます。
エスカレーション一覧画面が開きますので、必要に応じてエスカレーション設定を行ってください。
エスカレーション設定の詳細については別途エスカレーション設定マニュアルをご参照ください。
11.5.5. 特定のホストからTRAP通知条件を解除する
登録したTRAP通知条件は、複数のホストに割り当てることが可能です。
TRAP通知条件が不要になった場合は都度TRAP通知条件を削除するのではなく、特定のホストからのみ解除することができます。
11.5.5.1. TRAPサービス一覧から解除する
TRAPサービス一覧タブより、解除を行うホスト「SW-TRAP」をクリックで表示し、[TRAP条件の編集]ボタンを押します。
TRAP条件「snmp-trap-test」が選択済みTRAP条件へ表示されています。
解除を行うTRAP通知条件横の×アイコンを押します。
×アイコンを押したTRAP通知条件が解除されました。
登録ボタンを押し、ホストへTRAP条件を登録します。
「TRAP条件の編集が正常に行われました。」と表示されます。
以上で通知条件の解除は完了です。X-MONの再起動を実施してください。
11.5.5.2. サービス設定から解除する
SNMP TRAP管理以外に、[ホスト・サービス管理]の[サービス設定]からも通知条件を解除することができます。
TRAP通知条件の設定されたサービスを削除することで、そのサービスに紐付いているTRAP通知条件がホストから解除されます。
該当のホストでサービス設定を開いて一覧を表示させます。
削除するサービスのチェックボックスにチェックを入れて[削除]を押します。
確認ウィンドウが出ますので、問題なければOKを押してください。
「設定を削除し反映しました。」と表示されますのでX-MONの再起動を実施してください。
以上がTRAP通知条件の解除方法となります。
11.5.6. TRAP通知条件を削除する
不要となったTRAP通知条件を削除するには、TRAP条件設定タブから行います。
TRAPテンプレート機能やホストに該当のTRAP条件が登録されていた場合、同時に削除が行われますのでご注意ください。
TRAP条件設定タブで該当のTRAP通知条件を表示し、横の×アイコンを開きます。
確認ウィンドウが出ますので、問題なければ[削除]を押してください。
「TRAP条件の削除が正常に行われました。」と表示されます。
以上でTRAP条件の削除は完了です。X-MONの再起動を実施してください。
11.5.7. Data Bindingについて
通知条件にある「Data Binding」について解説します。
Data Bindingとは変数バインド、付加データとも呼ばれ、SNMP TRAPに付与されるデータの事を指します。 同じOIDであっても、Data Bindingの中の値によってさらに値を振り分ける(通知条件を絞り込む)事が可能となります。
例えば、監視対象ホストのインタフェースのリンクのアップ/ダウンを示すTRAPがあります。
このTRAPは「IF-MIB」という名前で定義されており一般的にも広く使われているTRAPとなっております。
リンクダウンを示すTRAPは「linkDown」というTRAP名で定義されており、それを示すOIDは「.1.3.6.1.6.3.1.1.5.3」です。
このlinkDownについてData Bindingがどのようになっているか通知条件の新規作成画面で確認してみます。
図の通り、「ifindex」「ifAdminStatus」「ifOperStatus」の3つのData Bindingがある事がわかります。
つまり、OIDである.1.3.6.1.6.3.1.1.5.3と共にこの3つのデータがTRAPに含まれるということになります。
各バインドは以下の状態を示します。
Ifindex:インタフェース番号
ifAdminStatus:管理上のステータス(インタフェースは正常に動作しているか)
ifOperStatus:運用上のステータス(インタフェースが開いているか閉じているか)
しかし、Data Bindingに含まれるデータについては、機器やソフトウェアによって異なるため事前に確認する必要があります。
機器によって仕様が異なっていたり、また拡張MIBを使用している場合はベンダー固有のMIBとなるので含まれるデータは受信してみないとわからないためです。
Data Bindingは、X-MON上では「通知条件を検知するための条件の一部」と考えて頂ければと思います。
例として上記のlinkDownを検知する場合を想定してみます。
まずは、Data Bindingを設定せずに空白のままTRAP通知条件を作成します。
この状態で、監視対象ホスト(switch機器)の7番のインタフェースをダウンさせてみます。「.1.3.6.1.6.3.1.1.5.3」のTRAPを検知しますので、サービスは予め設定したステータスに変化します。また、ステータス情報を確認してみます。
画像のようにステータス情報を受信しています。
この時、文章の最後に
This other state is indicated by the included value of ifOperStatus. 7 FastEthernet0/7 ethernetCsmacd administratively down |
という部分が含まれますが、こちらは「FastEthernet0/7がダウンした」ことを意味します。
このように、Data Bindingを指定していない場合はData Bindingによる振り分け(検知する条件の絞り込み)はされませんので監視対象ホストのどのインタフェースにも対応できる通知条件となる、という事になります。
次に、Data Bindingを使用する事を考えてみます。
先ほどのステータス情報に「ifOperStatus. 7」という記述がありました。この値を、X-MONからsnmpwalkコマンドで確認します。
管理者メニューの[ツール]より、[snmpwalk実行]を開きます。
表示された画面でSwitchのホストを選択し、情報を入力します。
[情報の表示]ボタンを押します。
|
このような結果となります。down(2)に注目します。
Data Bindingの設定項目にもifOperStatusという項目がありました。downを意味する数字は「2」である事を示しています。
それでは、このifOperStatus.7が実際にどのインタフェースに関連づけされているか確認してみます。確認するにはifDescrの値を見ます。
|
Switch機器のFastEthernet0/7である事が確認されました。
これに関連付けされているifIndexの値も確認してみましょう。
|
ifIndexの値は7であることがわかりました。
続いて、もう一つの値であるupの情報をifAdminStatusを使用して確認します。
|
Upを示す値は「1」である事がわかりました。
ここまでで分かった情報をまとめてみましょう。
FastEthernet0/7でData Bindingを指定する場合、
ifindexでインタフェース番号を指定すれば、指定したインタフェース番号のlinkdownのTRAPを検知します。
idAdminStatusでdownを条件にする場合は2を、upを条件にする場合は1を指定します。
iFoperStatusでdownを条件にする場合は2を、upを条件にする場合は1を指定します。
複数の組み合わせや、完全一致・正規表現も利用出来ます。
このように、Data Bindingの値を指定すれば細かく通知条件を指定する事が出来ます。
しかし、拡張MIBを利用する場合、Data Bindingの内容はベンダーにより様々です。さらに、例では数字(Integer型)が返りましたが、テキスト(データ型ではString)のData Bindingもあります。さらにシチュエーションにより内容もかわってきます。
そのため、該当のTRAPがどのようなData Bindingを付加するかの詳細については各ベンダーサポートへご確認ください。
11.6. 動作確認テスト
それではSNMP TRAPの検知テストを実行してみましょう。
テスト前には設定のバックアップを取得するようにしてください。
11.6.1. テストコマンドの発行
今回の例ではスイッチのLinkDownを使用しています。
まずは通知前のサービスの状態を確認しておきましょう。
スイッチでインタフェースをダウンさせると、TRAPが送信されます。X-MON管理画面にてサービス一覧を確認します。
該当のサービスがcriticalになっています。
さらにステータス情報には登録したTRAP定義のメッセージが表示されます。
11.6.2. TRAP履歴
受信したTRAPについては、[メニュー]の[TRAP履歴]からも確認出来ます。
ここでは、X-MONに通知条件(監視登録)が設定されている全サービスの受信TRAP履歴を確認できます。先頭がオレンジ色の行は、通知条件が設定されていない不明TRAPログです。
通知条件を設定していないにもかかわらず受信しているTRAPや、テスト送信TRAPを確認する場合はここを調べてください。
また「不明TRAP条件」をホストに登録することで、対象の機器から通知条件が設定されていないTRAPを受信した際に通知を行えます。 詳細な設定方法は 不明なTRAPを通知する をご参照ください。
11.6.2.1. TRAP通知履歴の表示
TRAP通知の履歴が一覧で表示されます。
11.6.2.2. 通知条件の絞り込みとCSV出力
TRAP履歴画面上部の[絞り込み条件設定]ボタンを押すと、TRAP履歴を絞り込むパネルが表示されます。
絞り込みに使用できる項目は以下の通りです。
通知先ホスト:指定したホストIDで絞り込むことができます。
受信期間:開始と終了を入力することで、その期間に受信したTRAPのみが表示されます。
不明TRAP:チェックを外すことで、通知設定の登録されていないTRAPの受信履歴を非表示にします。
項目を指定し、[絞り込み]ボタンを押すことで絞り込みが行われます。
絞り込みを解除し、全てのログを表示する場合は[リセット]ボタンを押します。
表示したTRAP履歴をダウンロードする場合は[CSVエクスポート]ボタンを押します。
※絞り込み条件が指定されている場合、その条件に従って出力が行われます。
11.6.3. 監視の復旧方法
障害を検知したTRAP監視は、手動でパッシブチェックの結果を送信することで復旧させることができます。
[サービス一覧表示]から該当のホストのサービスIDをクリックします。今回の例では「SW-TRAP」ホストの「snmp-trap-test」です。
ポップアップウィンドウ内右上部のアイコンから、「パッシブチェックの結果を送信する」をクリックします。
項目の入力画面になります。
チェック結果をOKにします(デフォルトで選択されています)。チェック出力は任意入力です。例えば「トラップ検知のテストのためOK」や実際の運用では「トラップ確認、対応完了」などを記載するといいでしょう。
入力後[実行]を押すと、コマンドを正常に受け付けた画面となります
サービスが復旧しているか確認しましょう。
サービス一覧表示にて、ステータス情報がパッシブチェックの結果を送信する際に入力した「トラップ検知のテストのためOK」となり、ステータスは正常(OK)で復旧しています。
以上が基本的なTRAP受信テストとなります。
11.6.4. その他の機器でのテスト
サーバソフトウェアの中にはGUIの画面からテストを実施する事が可能なものもあります。(TrendMicro社ServerProtectなど)。また、Windowsサーバからもテストが可能です。
稼働中の機器のためテストが出来ないなどの場合、linuxからコマンドでテストする事も可能です。
その場合は、テスト用のlinuxサーバをホスト登録し、TRAP通知条件をテスト用ホストにも設定してください。
既にホスト登録しているサーバでテストを実施頂くことも可能です。
例としてテスト用ホストを「Linux-TRAP」、本稼働中のホストを「SW-TRAP」とします。
TRAPサービス一覧より「Linux-TRAP」の「TRAP条件の編集」を開き、既存ホストからの条件抽出で「SW-TRAP」を指定して検索を行います。
抽出できたTRAP条件を追加し、X-MONの再起動を実施してください。
今回の例では、OIDは「.1.3.6.1.4.1.9.9.43.2.0.1」でX-MONサーバのIPアドレスが「192.0.2.10」ですので、Linux-TRAPにて発行するコマンドは
# snmptrap -v 2c -c public 192.0.2.10 '' .1.3.6.1.4.1.9.9.43.2.0.1 |
となります。
X-MONサーバへ送信するTRAPですので、コミュニティ名はデフォルトでX-MONで受信対象となっている「public」を指定します。
コマンドが発行出来たらサービス一覧を確認します。
Linux-TRAPから発行しましたので、Linux-TRAPのみ、CRITICALを検知しました。
これで、このOIDはX-MONで正常に監視できることが確認出来ました。
尚、OIDによっては追加で引数指定が必要なケースもございます。OIDごとの具体的なテストTRAP指定方法については各ベンダーサポートへご確認ください。
11.7. 任意のSNMP TRAPを設定する
基本的な使い方以外に、MIBファイルがないOIDなど任意のSNMP TRAPを設定する事が出来ます。
例えば、サーバでバッチスクリプトを定期動作させる場合に、バッチスクリプト完了時にTRAP送信処理を設定しておくことでX-MONにてバッチ処理の監視が可能です。
また、Windowsサーバにてイベントトラップトランスレーターを使用する場合はエンタープライズOIDを使用しますので、こちらで登録します。
本セクションではLinuxからとWindowsからの設定例を取り上げます。
11.7.1. 設定画面
TRAP条件設定タブを開きます。
MIB一覧の上部に[任意OIDによるTRAP条件設定]が表示されていますので開きます。
何も登録されていない場合は「TRAP条件がありません。」と表示されます。
+アイコン(新規作成アイコン)を開いてください。条件を入力する画面が開きます。
それぞれの項目は以下となります。
項目名 |
内容 |
---|---|
TRAP条件名称 |
登録するTRAP名を定義します。
既に登録されている[任意OIDによるTRAP条件]と重複する名称は登録できません。
|
サービスID |
入力した通知先サービス名がホストへ登録時の初期値として表示されます。
ホストへ登録時、変更して登録することも可能です。
必須指定項目です。
入力制限:半角英数字、アンダーバー、ドット、ハイフンのみ使用可。
また、以下の通知先サービス名は設定できません。
・「-VMPERF」で終わる
・間に「-VMPERF-」「-VMWARE-」を含む
|
OID |
登録する任意TRAPのOIDを指定します。 |
メッセージフォーマット(省略可) |
登録したTRAPが送られてきた場合に、
サービス一覧表示「ステータス情報」の欄に表示される情報を記述します。
|
通知ステータス |
対象TRAPが通知条件と一致した場合にX-MONへ渡すステータス情報を
「OK」「WARNING」「CRITICAL」「UNKNOWN」から選択します。
|
文字コード |
送られてくるメッセージの文字コードを指定します。 |
11.7.2. OIDについて
OIDには標準MIBと拡張MIB(別名:エンタープライズMIB)があります。
標準MIBは多くのベンダーに共通して使用されている定義で、拡張MIBはベンダーが独自に定義しているMIBです。
任意OIDを作成する場合は、拡張MIBを指定する形となります。
独自OIDを利用する際は
.1.3.6.1.4.1. |
から始まるようにしてください。
この数値から始まるOIDは拡張MIBであることを表します。
なお、グローバルネットワークで利用する場合は、定義したMIBをIANA(http://www.iana.org/)にて登録する必要がありますので
使用はプライベートネットワーク内のみとしてください。(すでにIANAへ登録されている拡張MIBと重複する可能性があるため)
11.7.3. 設定例(Linuxサーバからの任意TRAP通知)
例として、Linuxサーバから以下のOIDを受信したらステータス情報に「任意トラップテスト」と表示するようにしましょう。
.1.3.6.1.4.1.3.3.3.4
設定項目は表の通りです。
項目名 |
内容 |
---|---|
TRAP条件名称 |
TRAP-ORIG-TEST |
サービスID |
TRAP-ORIG-TEST |
OID |
.1.3.6.1.4.1.3.3.3.4 |
メッセージフォーマット(省略可) |
任意トラップテスト |
通知ステータス |
CRITICAL |
文字コード |
UTF-8 |
条件を設定した例は下記となります。
条件名と通知先サービス名には別の名前を指定出来ますが、同じにしておくほうが管理しやすくなります。
記入が出来たら[登録]ボタンを押して作成してください。
続いてホストへ設定したTRAP通知条件を登録します。
TRAPサービス一覧タブでホスト「Linux-TRAP」を開き「TRAP条件の編集」を開きます。
TRAP定義からの条件抽出を「任意OIDTRAP条件」のまま検索します。
チェックを入れ、[追加]ボタンを押します。
選択済みTRAP条件へ任意OIDのTRAP条件が追加されたことを確認し、[登録]ボタンを押します。
反映させるため、X-MONの再起動を実施してください。
サービスの一覧で確認してみましょう。
正常に追加されています。
確認コマンドは
# snmptrap -v 2c -c public 192.0.2.10 '' .1.3.6.1.4.1.3.3.3.4 |
となります。テストの準備が出来たら、Linux-TRAPにてコマンドを発行してください。
11.7.3.1. テストの確認
正常に任意SNMPTRAPを検知すると、上記画像のようになります。
ステータス情報にも設定した文字列「任意トラップテスト」が表示されます。
監視を復旧させる際は、基本操作と同じく[パッシブチェックの結果を送信する]から復旧させてください。
これで、任意のSNMPTRAPである、OID「.1.3.6.1.4.1.3.3.3.4」は正常に登録されており、検知可能であることがわかりました。
11.7.4. 設定例(Windowsサーバからの任意TRAP通知)
WindowsサーバのSNMP TRAPはMIBファイルがないため、任意SNMP TRAP通知で設定します。
Windowsサーバにはデフォルトで「SNMP TRAPサービス」はインストールされていますが、
TRAP通知を設定するには別途「SNMPサービス」をインストールする必要があります。
インストール手順は、別途 SNMPを用いた監視の準備をする をご参照ください。
11.7.4.1. 通知先の設定
WindowsサーバのSNMPサービスからTRAPの通知先を設定します。
[サービス]から [SNMP Service]を右クリックし、[プロパティ]を開いてください。
プロパティ画面が表示されますので、[トラップ]タブを開きます。
X-MONのデフォルトのコミュニティ名である「public」と入力し、[一覧に追加] ボタンを押してください。
[トラップ送信先]の[追加]ボタンがアクティブになりますので、[追加]を押します。
IPアドレス入力画面となりますので、X-MONサーバのIPアドレスを入力します。
入力できたら[追加]を押してください。
これでコミュニティ名「public」のトラップ送信先「192.0.2.10」が登録できました。[OK]ボタンを押してプロパティを閉じてください。
11.7.4.2. TRAPの送信
WindowsサーバにてSNMP TRAPを送信するにはイベントトラップトランスレーターで設定します。
コマンドプロンプトにて、「evntwin.exe」を実行します。
イベントトラップトランスレーターが起動します。設定が入っていない場合は空欄となります。
詳細はマイクロソフトのサポートマニュアルをご参照ください。
ここでは、DHCPクライアントサービスが停止するとトラップを送信する、という設定を行います。
[構成の種類] のラジオボタンで[カスタム]を選択します。
[編集]ボタンがアクティブになりますので開きます。
ウィンドウの下部分にイベントソースなどが表示されます。
イベントソースから[System -> Microsoft-Windows-Dhcp-Client]を確認し、50037番を選択します。
この50037番が、DHCPクライアントサービスが停止したイベントの番号です。
尚、この番号はイベントビューアーにて確認出来ます。 任意のサービスやイベントにトラップを設定する際は、イベントビューアーからイベントIDを検索することも可能です。
イベントの50037番を選択して[追加]を押すと、登録される内容が別ウィンドウで表示されます。
この画面で表示される「エンタープライズOID」と、「イベント固有のID」を足したものがOIDとなります。
しかしWindowsサーバの場合、OIDがとても長くなってしまいますので、まずはテストトラップを送信し、X-MONのSNMP TRAP履歴の不明トラップの画面でOIDを確認する方法をとります。
[OK]で画面が閉じ、「トラップに変換するイベント」に追加されます。
内容を確認のうえ、問題なければ[適用]を押すと設定は完了です。
それでは、実際にTRAPを送信します。
サービスの画面にて[DHCP Client]を停止させます。
サービスを停止する際は、サービスに影響がないか確認のうえ実施してください。
サービスが停止したのを確認してから、X-MONのTRAP履歴を確認します。
画像のように、オレンジの線が入った不明TRAPとして通知ログが表示されます。
送信元ホストが設定したWindowsサーバ、受け取ったメッセージの部分に「DHCPv4 クライアント サービスが停止しました。」というメッセージが含まれていれば正常にTRAPが送信され、X-MONでも受信出来ている事が確認出来ました。
それでは、受け取ったOIDの部分を、任意SNMP TRAP通知に設定します。
11.7.4.3. X-MONへ通知条件の設定
前項で確認した(不明TRAPログにて確認した)OIDを使用します。
設定項目は表の通りです。
項目名 |
内容 |
---|---|
TRAP条件名称 |
TRAP-Windows-TEST |
サービスID |
TRAP-Windows-TEST |
OID |
.1.3.6.1.4.1.311.1.13.1.29.77.105.99.114.111.115.111.102.116.45.87.105.
110.100.111.119.115.45.68.104.99.112.45.67.108.105.101.110.116.0.50037
|
メッセージフォーマット(省略可) |
任意トラップWindowsテスト |
通知ステータス |
CRITICAL |
文字コード |
SJIS |
条件を設定した例は下記のようになります。
条件名と通知先サービス名は別の名前を指定出来ますが、同じにしておくほうが管理しやすくなります。また、Windows環境から送られてきますので文字コードを「SJIS」にしています。
記入が出来たら[登録] ボタンを押して作成してください。
ホストへの「任意OIDによるTRAP条件」の追加は 設定例(Linuxサーバからの任意TRAP通知) をご覧ください。
登録できたら反映のため、X-MONの再起動を実施してください。
サービスの一覧で確認してみましょう。
監視が追加されている事が確認出来ました。
これで通知条件の設定は完了です。
11.7.4.4. テストの確認
それでは、 TRAPの送信 で実施したように、Windows上でTRAPを発生させてX-MONで検知するかテストしてみましょう。
サービスを停止する際は、サービスに影響がないか確認のうえ実施してください。
X-MON管理画面のサービス一覧で、正常に障害を検知していることを確認してください。
検知時、ステータス情報の欄には、通知条件で設定した「任意トラップWindowsテスト」の後にTRAPに含まれるメッセージが表示されます。
また監視を復旧させる際は、基本操作と同じく[パッシブチェックの結果を送信する]から復旧させてください。
これで、指定したOIDのTRAP受信条件は正常に登録されており、検知可能であることがわかりました。
11.8. 不明なTRAPを通知する
「不明TRAP条件」を使用すると、対象ホストから「通知条件を設定していないTRAP」を受信した際に通知を行うことができます。
X-MONに登録されたMIBファイルに定義されているかどうかにかかわらず、 指定したホストから受信した「既に登録されているTRAP通知条件に一致しない全てのTRAP」が対象となります。
11.8.1. 設定画面
管理者メニュー[SNMP TRAP管理]の[TRAP設定]タブを開きます。
項目は以下となります。
項目名 |
内容 |
---|---|
TRAP条件名称 |
TRAP条件の名称です。「DEFAULT-TRAP」で固定されます。 |
通知ステータス |
通知条件と一致したTRAPを受信した場合、X-MONに通知するステータス情報を
「OK」「WARNING」「CRITICAL」「UNKNOWN」から選択します。
|
先にも記載しましたが、本設定はホスト単位で適用されます。
複数ホストに不明TRAP条件を登録した場合、条件に合致する不明TRAPを受信すると送信元に一致したホストのみ通知されます。
11.8.2. 設定例
それでは設定してみましょう。
設定内容は以下の通りです。
項目名 |
内容 |
---|---|
対象ホスト |
X-MON |
通知先サービス名 |
DEFAULT-TRAP |
通知ステータス |
CRITICAL |
まず不明TRAP条件の通知ステータスを変更します。
TRAP設定タブ[不明TRAP条件]の[通知ステータス]を「CRITICAL」に変更します。
変更後[不明TRAP設定の更新]ボタンを押してください。
「更新が正常に行われました。」と画面に表示されます。
次にホスト「X-MON」へ不明TRAP条件を登録します。
TRAPサービス一覧タブでホスト「X-MON」を開き「TRAP条件の編集」を開きます。
TRAP条件の検索の[不明TRAPの追加]横の+ボタンを押します。
選択済みTRAP条件へ不明TRAP条件が追加されました。
[登録]ボタンを押し、設定を反映させるためX-MONの再起動を実施してください。
確認してみましょう。
サービス一覧のX-MONに「DEFAULT-TRAP」が表示されます。
検知するかテストしてみましょう。
前章の任意SNMP TRAP通知で使用した「.1.3.6.1.4.1.3.3.3.4」ではなく「.1.3.6.1.4.1.3.3.3.5」をX-MONサーバから送信してみます。
# snmptrap -v 2c -c public 192.0.2.10 '' .1.3.6.1.4.1.3.3.3.5 |
TRAPを受け取ったサービスがCRITICAL状態となります。
TRAP履歴を確認すると、不明TRAPが記録されています。
これで、X-MONサーバから不明なTRAPを受信するとすぐに検知出来るようになります。
11.8.3. 非監視TRAPの使用例
使用例として、各ホストへ「不明TRAP条件」を登録することで、そのホストから送信されてくる「登録していないOIDのTRAP」を受信して通知を行うことができます。
しかし通知条件が登録されていない全てのTRAPが対象となりますので、環境に合わせて使用することをお勧めします。
11.9. 複数TRAP条件を一括で登録
11.9.1. TRAPテンプレートを作成し、一括登録
TRAP条件を複数登録したテンプレートを作成し、ホストに適用することでTRAP条件を一括で登録できます。
TRAPサービス一覧タブより[TRAPテンプレート管理]ボタンを押します。
11.9.1.1. 新規作成
新たにテンプレートを作成します。TRAPテンプレート管理画面の[テンプレートの新規作成]ボタンを押します。
TRAP条件を登録したMIBを選択し、検索ボタンを押します。
表示されたウィンドウで登録するTRAP条件を選択し、[追加]ボタンを押します。
追加されたTRAP条件が選択済みTRAP条件へ表示されます。
登録を解除したい場合は、TRAP条件横の×ボタンを押すことで削除ができます。
テンプレート名称とサービスID入力し、[登録]ボタンを押します。
追加したテンプレートが、一覧に表示されます。
11.9.1.2. 編集
テンプレートを編集する場合は、該当テンプレート横の歯車ボタンを押します。
追加画面と同じ項目が表示され、[編集]ボタンを押すことでテンプレートが編集されます。
11.9.1.3. 適用
登録したテンプレートをホストに適用します。
TRAPテンプレート管理の[TRAPテンプレート適用]ボタンを押します。
表示されたウィンドウで適用するテンプレート名称とホストを選択し、[適用]ボタンを押します。
ホストへTRAP条件の登録が行われ、テンプレート一覧へ移動します。
11.9.1.4. 削除
テンプレートを削除する場合は、該当テンプレート横の×ボタンを押します。
選択したテンプレートの内容が表示され、[削除]ボタンを押すことでテンプレートが削除されます。
テンプレートを削除しても、それまでに当該テンプレートを使用して登録されたTRAP条件は削除されません。
11.9.2. CSVでの一括登録
CSVファイルを使用し、TRAP条件を一括で登録することができます。
TRAPサービス一覧タブより[TRAPサービスCSV一括設定]ボタンを押します。
11.9.2.1. 現在登録されている設定のダウンロード
現在ホストへ設定しているTRAP設定のCSVは、[CSVエクスポート]よりダウンロードできます。
出力内容はダウンロード画面に表示されている[CSVファイル入力案内]をご確認ください。
11.9.2.2. 設定のアップロード
ダウンロードしたCSVファイルへ追加したい設定を記入し、[CSVファイルのインポート]にドラッグ&ドロップします。
[インポート]ボタンを押します。
アップロードしたCSVの内容を表示します。
[登録]ボタンを押すことでTRAP条件がホストに追加されます。
以上で設定は完了です。設定を反映するためにX-MONの再起動を実施してください。
11.9.2.3. 編集
TRAP条件を編集する場合は、該当TRAP条件横の歯車ボタンを押します。
追加画面と同じ項目が表示され、[編集]ボタンを押すことでTRAP条件が編集されます。
11.9.2.4. 削除
不要なTRAP条件を削除する場合は、削除したい設定隣の×ボタンを押します。
削除用ウィンドウが表示され、[削除]ボタンを押すことで表示から削除されます。
11.10. サービス設定のパラメータについて
SNMP TRAPを受信した際の通知に関連するサービス設定について記載します。
11.10.1. TRAPを受信するたびに通知を行う(volatileサービスの設定)
SNMP TRAP管理からホストへ新たにTRAP通知サービスを登録した場合は、デフォルトで「同じステータスのまま違う内容のTRAPを受け取っても、都度通知を行う」よう設定されています。
しかし元々サービスが存在し、TRAP条件を後からサービスへ追加した場合は、X-MONの仕様により「同じステータスのまま違う内容のTRAPを受け取った場合は通知しない」設定となります。
例)同じ通知先サービス名・ステータスを設定しているが、対象TRAPが違う
volatileサービスを設定する事により、同じステータスであっても別の内容のTRAPを受信すると(厳密にはTRAPを受信するたびに)通知を行います。
SNMP TRAP管理より作成されたサービスはデフォルトでvolatileサービスが有効ですが、ホスト管理より作成されたサービスではこの機能は無効となっています。
サービス設定の[高度な設定] タブ内の「volatileサービス」を有効にしてX-MONを再起動すれば設定は完了です。
11.11. SNMPTRAP受信設定の変更
X-MONサーバ全体のSNMP TRAP設定です。
11.11.1. SNMPTRAPコミュニティ名管理
SNMPTRAP受信で使用するコミュニティ名を管理画面より登録・削除します。
11.11.1.1. 登録されているコミュニティ名の表示
X-MONの管理画面で[管理者メニュー]より[SNMP TRAP管理]を選択します。
遷移したSNMP TRAP管理の[TRAP設定]タブの[TRAPコミュニティ名]に、一覧で表示されます。
■ TRAPコミュニティ名(サーバ設定)…
X-MONサーバ内部で登録されているSNMP TRAPのコミュニティ名を表示します。X-MONの管理画面からは編集できません。
※X-MONの初期インストール時は「public」が登録されています。
■ TRAPコミュニティ名(X-MON設定)…
※X-MONインストール直後は何も登録されていません。
11.11.1.2. 登録
TRAPコミュニティ名(X-MON設定)の右上の+ボタンを押します。
表示されたウィンドウに登録したいコミュニティ名を入力し、[追加]ボタンを押します。
追加を行うと管理画面に表示され、X-MONの再起動を実施することで、サーバへ設定が登録されます。
※サーバに設定が保存されていないものはコミュニティ名の前に「!」マークが表示されます。
11.11.1.3. 削除
不要なコミュニティ名を削除する場合は、削除したいコミュニティ名隣の×ボタンを押します。
削除用ウィンドウが表示され、[削除]ボタンを押すことで表示から削除されます。
X-MONの再起動を実施することで、サーバの設定から該当のコミュニティ名が削除されます。
11.11.2. SNMP TRAPv3ユーザ管理
SNMP TRAPv3受信で使用するユーザ情報を管理画面より登録・削除します。
11.11.2.1. 登録されているユーザ設定の表示
X-MONの管理画面で[管理者メニュー]より[SNMP TRAP管理]を選択します。
遷移したSNMP TRAP管理の[TRAP設定]タブの[SNMP TRAPv3受信設定]に、一覧で表示されます。
※X-MONインストール直後は何も登録されていません。
11.11.2.2. 登録
受信設定が表示されている右上の+ボタンを押します。
表示されたウィンドウに設定を入力します。※設定内容はX-MONヘルプをご確認ください。
追加を行うと管理画面に表示され、X-MONの再起動を実施することで、サーバへ設定が登録されます。
※サーバに設定が保存されていないものはコミュニティ名の前に「!」マークが表示されます。
11.11.2.3. 削除
不要なユーザ設定を削除する場合は、削除したい設定隣の×ボタンを押します。
削除用ウィンドウが表示され、[削除]ボタンを押すことで表示から削除されます。
X-MONの再起動を実施することで、サーバの設定から該当のユーザ設定が削除されます。
11.11.2.4. CSVを使用したTRAPv3設定の登録
CSVファイルを使用し、TRAPv3設定を一括で登録することができます。
11.11.2.4.1. 現在登録されている設定のダウンロード
現在設定しているSNMP TRAPv3設定のCSVは、受信設定下部の[TRAPv3設定CSVエクスポート]ボタンを押すことでダウンロードできます。
11.11.2.4.2. 設定のアップロード
ダウンロードしたCSVへ追加したい設定を記入し、[TRAPv3設定CSVインポート]ボタンを押します。
表示されたウィンドウにCSVファイルをドラッグ&ドロップし、[登録]ボタンを押すことで設定が追加されます。
X-MONの再起動を実施することで、サーバへ設定が登録されます。