キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
2679
閲覧回数
0
いいね!
0
コメント
taknakam
Cisco Employee
Cisco Employee

 

はじめに

Setalthwatch ではアラーム発生時にそれを通知するための方法として以下のような方法が提供されています。

  • ArcSight
  • Email
  • QualysGuard
  • SNMP Trap
  • Legacy Stealthwatch Appliance Syslog
  • Syslog

本ドキュメントではこれらのうち SNMP Trap を使用する場合の設定と実際に送られる SNMP Trap のメッセージについて説明します。

 

 

システム要件

本ドキュメントは以下の環境で動作を確認しています。他のバージョンでは画面表示や設定が異なる場合があります。

  • Stealthwatch 7.1.1
  • CentOS 6.5
  • Net-SNMP 5.5
  • rsyslogd 5.8.10

SNMP Trap を受信するアプリケーションとして Net-SNMP を使用していますが、特定のアプリケーションを推奨するものではありません。

 

 

Net-SNMP の設定

使用した環境における Net-SNMP の設定を簡単に説明します。

 

/etc/sysconfig/snmptrapd

OPTIONS="-Ls6 -p /var/run/snmptrapd.pid -M /usr/share/snmp/mibs -m all"

受信した SNMP Trap は Facility local6.* で Syslog に送られます。

 

/etc/snmp/snmptrapd.conf

authCommunity   log,execute,net public
traphandle default /usr/bin/logger

Community 文字列は public です。

 

 

rsyslog の設定

使用した環境における rsyslog の設定を簡単に説明します。

 

/etc/rsyslog.conf

local6.*                                                /var/log/snmp.log

local6.* で送られたログを /var/log/snmp.log に出力します。

 

設定を反映させるため、snmptrapd と rsyslogd を再起動しておきます。

 

 

Response Management を設定する

アラーム発生時の通知設定は SMC Client の Response Management で行います。設定手順を以下に示します。

 

(1) SMC Client にて Configuration > Response Management に遷移します。

image.png

 

(2) 左ペインで Actions を選択し、下の "Add" をクリックします。

image.png

 

(3) SNMP Trap を選択して "OK" をクリックします。

image.png

 

(4) SNMP Trap を送るサーバの情報を設定します。

image.png

 

(5) "Test" を押すと指定したサーバ宛にテスト用の SNMP Trap が送られます。サーバ側で正しく受信できているか確認します。今回の環境では /var/log/snmp.log に以下のようなメッセージが出力されます。

Dec 31 17:47:10 centos-1 snmptrapd[964423]: 2019-12-31 17:47:09 <UNKNOWN> [UDP: [10.0.0.69]:53054->[10.0.0.3]]:#012DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (16792249) 1 day, 22:38:42.49#011SNMPv2-MIB::snmpTrapOID.0 = OID: ALARM-TRAPS-SNMPV2-MIB::hostAlarmCondition#011ALARM-TRAPS-SNMPV2-MIB::alarmId.0 = STRING: "3Y-13Y1-QJJ2-YYA9-U"#011ALARM-TRAPS-SNMPV2-MIB::alarmTypeId.0 = Gauge32: 99#011ALARM-TRAPS-SNMPV2-MIB::alarmStatus.0 = INTEGER: active(1)#011ALARM-TRAPS-SNMPV2-MIB::alarmTime.0 = STRING: 2019-12-31,8:47:9.8,+0:0#011ALARM-TRAPS-SNMPV2-MIB::alarmLastActiveTime.0 = STRING: 2019-12-31,8:47:9.8,+0:0#011ALARM-TRAPS-SNMPV2-MIB::alarmDetails.0 = STRING: "Source Host is http (80/tcp) client to target.host.name (199.237.198.232)"#011ALARM-TRAPS-SNMPV2-MIB::alarmDomainId.0 = Gauge32: 201#011ALARM-TRAPS-SNMPV2-MIB::alarmDeviceId.0 = Gauge32: 202#011ALARM-TRAPS-SNMPV2-MIB::alarmSourceIp.0 = Hex-STRING: C0 A8 C8 09 #011ALARM-TRAPS-SNMPV2-MIB::alarmSourceIpV4.0 = IpAddress: 192.168.200.9#011ALARM-TRAPS-SNMPV2-MIB::alarmSourceZone.0 = Gauge32: 23#011ALARM-TRAPS-SNMPV2-MIB::alarmTargetIp.0 = Hex-STRING: C7 ED C6 E8 #011ALARM-TRAPS-SNMPV2-MIB::alarmTargetIpV4.0 = IpAddress: 199.237.198.232#011ALARM-TRAPS-SNMPV2-MIB::alarmTargetZone.0 = Gauge32: 24#011ALARM-TRAPS-SNMPV2-MIB::alarmHostName.0 = STRING: "Hostname"#011ALARM-TRAPS-SNMPV2-MIB::alarmName.0 = STRING: "Alarm Name"

 

(6) SNMP Trap が正しく送られることが確認できたら "OK" を押して設定を確定します。

 

(7) 左ペインで "Rule" を選択して "Add" をクリックします。

image.png

 

(8) "Host Alarm" を選択して "OK" をクリックします。

image.png

 

(9) 左ペインで Rule を選択し、以下のようにトリガーとなるアラーム情報を設定します。ここでは ICMP Flood 発生時に SNMP Trap を送信するように設定します。

image.png

 

(10) "Execute the following actions when the Alarm becomes active" のところで "Add" をクリックします。

image.png

 

(11) 先ほど作成した SNMP Trap の Action を選択して "OK" をクリックします。

image.png

 

(12) "OK" を押して設定を確定します。

image.png

 

(13) "Close" をクリックして、"Response Management" の画面を閉じます。

image.png

 

 

動作確認

ping トラフィックを大量に流して ICMP Flood を発生させます。本ドキュメントはラボ環境で動作確認を行っているため、ICMP Flood の閾値を下げて、すぐに Alarm が発生するように設定しています。

image.png

 

ping トラフィックをしばらく流していると、ICMP Flood のアラームが発生し、SNMP Trap が /var/log/snmp.log に記録されます。

Dec 31 18:31:01 centos-1 snmptrapd[964423]: 2019-12-31 18:31:00 <UNKNOWN> [UDP: [10.0.0.69]:34442->[10.0.0.3]]:#012DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (17055362) 1 day, 23:22:33.62#011SNMPv2-MIB::snmpTrapOID.0 = OID: ALARM-TRAPS-SNMPV2-MIB::hostVarianceAlarmCondition#011ALARM-TRAPS-SNMPV2-MIB::alarmId.0 = STRING: "33-1FHG-GK1J-CV7K-8"#011ALARM-TRAPS-SNMPV2-MIB::alarmTypeId.0 = Gauge32: 7#011ALARM-TRAPS-SNMPV2-MIB::alarmStatus.0 = INTEGER: active(1)#011ALARM-TRAPS-SNMPV2-MIB::alarmTime.0 = STRING: 2019-12-31,9:30:0.0,+0:0#011ALARM-TRAPS-SNMPV2-MIB::alarmLastActiveTime.0 = STRING: #011ALARM-TRAPS-SNMPV2-MIB::alarmDetails.0 = STRING: "Observed 29.88k pp5m.   Policy maximum allows up to 2 pp5m."#011ALARM-TRAPS-SNMPV2-MIB::alarmName.0 = STRING: "ICMP Flood"#011ALARM-TRAPS-SNMPV2-MIB::alarmDomainId.0 = Gauge32: 102#011ALARM-TRAPS-SNMPV2-MIB::alarmDeviceId.0 = Gauge32: 111#011ALARM-TRAPS-SNMPV2-MIB::alarmSourceIp.0 = Hex-STRING: C0 A8 8A 6D #011ALARM-TRAPS-SNMPV2-MIB::alarmSourceIpV4.0 = IpAddress: 192.168.138.109#011ALARM-TRAPS-SNMPV2-MIB::alarmSourceZone.0 = Gauge32: 65534#011ALARM-TRAPS-SNMPV2-MIB::alarmTargetIp.0 = Hex-STRING: 00 00 00 00 #011ALARM-TRAPS-SNMPV2-MIB::alarmTargetIpV4.0 = IpAddress: 0.0.0.0#011ALARM-TRAPS-SNMPV2-MIB::alarmTargetZone.0 = Gauge32: 61758#011ALARM-TRAPS-SNMPV2-MIB::alarmBaseLine.0 = Counter64: 0#011ALARM-TRAPS-SNMPV2-MIB::alarmThreshold.0 = Counter64: 2#011ALARM-TRAPS-SNMPV2-MIB::alarmTolerance.0 = Counter64: 0#011ALARM-TRAPS-SNMPV2-MIB::alarmHostName.0 = STRING: "192.168.138.109"

 

 

SNMP Trap で送られてくる情報の見方

SNMP Trap で送られてきたメッセージを見やすく整形すると以下のようになります。

#012 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (17055362) 1 day, 23:22:33.62
#011 SNMPv2-MIB::snmpTrapOID.0 = OID: ALARM-TRAPS-SNMPV2-MIB::hostVarianceAlarmCondition
#011 ALARM-TRAPS-SNMPV2-MIB::alarmId.0 = STRING: "33-1FHG-GK1J-CV7K-8"
#011 ALARM-TRAPS-SNMPV2-MIB::alarmTypeId.0 = Gauge32: 7
#011 ALARM-TRAPS-SNMPV2-MIB::alarmStatus.0 = INTEGER: active(1)
#011 ALARM-TRAPS-SNMPV2-MIB::alarmTime.0 = STRING: 2019-12-31,9:30:0.0,+0:0
#011 ALARM-TRAPS-SNMPV2-MIB::alarmLastActiveTime.0 = STRING: 
#011 ALARM-TRAPS-SNMPV2-MIB::alarmDetails.0 = STRING: "Observed 29.88k pp5m.   Policy maximum allows up to 2 pp5m."
#011 ALARM-TRAPS-SNMPV2-MIB::alarmName.0 = STRING: "ICMP Flood"
#011 ALARM-TRAPS-SNMPV2-MIB::alarmDomainId.0 = Gauge32: 102
#011 ALARM-TRAPS-SNMPV2-MIB::alarmDeviceId.0 = Gauge32: 111
#011 ALARM-TRAPS-SNMPV2-MIB::alarmSourceIp.0 = Hex-STRING: C0 A8 8A 6D 
#011 ALARM-TRAPS-SNMPV2-MIB::alarmSourceIpV4.0 = IpAddress: 192.168.138.109
#011 ALARM-TRAPS-SNMPV2-MIB::alarmSourceZone.0 = Gauge32: 65534
#011 ALARM-TRAPS-SNMPV2-MIB::alarmTargetIp.0 = Hex-STRING: 00 00 00 00 
#011 ALARM-TRAPS-SNMPV2-MIB::alarmTargetIpV4.0 = IpAddress: 0.0.0.0
#011 ALARM-TRAPS-SNMPV2-MIB::alarmTargetZone.0 = Gauge32: 61758
#011 ALARM-TRAPS-SNMPV2-MIB::alarmBaseLine.0 = Counter64: 0
#011 ALARM-TRAPS-SNMPV2-MIB::alarmThreshold.0 = Counter64: 2
#011 ALARM-TRAPS-SNMPV2-MIB::alarmTolerance.0 = Counter64: 0
#011 ALARM-TRAPS-SNMPV2-MIB::alarmHostName.0 = STRING: "192.168.138.109"

 

ALARM-TRAPS-SNMPV2-MIB で定義されている情報が送られてきていることが分かります。alarmTypeId はアラームごとに割り振られている ID ですので、この値から発生したアラームを区別することができます。

 

各アラームの alarmTypeId の値については、以下のドキュメントに記載されています。

 

Getting Started

検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう

シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします