システム メンテナンス:Feedのトラブルシューティング

Document created by RSA Information Design and Development on Feb 17, 2017
Version 1Show Document
  • View in full screen mode
  

概要

Feedジェネレーターの目的は、イベント ソースを、それが属するグループのリストにマッピングすることです。

イベント ソースからメッセージを収集しているのに、そのイベント ソースが、正しいイベント ソース グループに表示されない場合は、このトピックで説明する背景情報が問題の追跡に役立ちます。

詳細

ESM Feedでは複数のキーを1つの値にマッピングします。つまり、DeviceAddress、Forwarder、DeviceTypeの属性をgroupNameにマッピングします。

ESM Feedの目的は、Log Decoderで収集されるイベント ソースのメタにgroupNameを追加することです。

仕組み

Feedジェネレーターは1分ごとに更新するようスケジュール設定されています。しかし、実際にトリガーされるのはイベント ソースまたはグループに何らかの変更(作成、更新、削除)が行われた場合だけです。

Feedジェネレーターは、イベント ソースとグループのマッピングを指定したFeedファイルを1つ作成し、同じFeedをSecurity Analyticsに接続するすべてのLog Decoderにプッシュします。

Log DecoderにFeedファイルがアップロードされると、新しく受信するイベントのメタ データにはgroupNameが追加され、このgroupNameがlogstatsに追加されます。

groupNameがlogstatsに追加されると、ESM Aggregatorによって情報がグループ化され、ESMに送信されます。この時点で、[イベント ソース モニタリング]タブに[グループ名]列が表示されます。

上記のすべての処理が完了するにはある程度時間がかかります。そのため、新しいグループやイベント ソースを追加した後は、そのグループ名が表示されるまでしばらく待たなければならない場合があります。

注:Feedの更新によりイベント ソース タイプ属性が変更されると、Security Analyticsによって新しいlogstatsエントリーが追加されます。既存のエントリーが更新されることはありません。したがって、Log Decoderに2つの異なるlogstatsエントリーができることになります。それまでの既存のメッセージは元のタイプの下にリストされ、新しいメッセージはすべて新しいイベント ソース タイプとして記録されます。

Feedファイル

Feedファイルの形式は次のようになっています。

DeviceAddress, Forwarder, DeviceType, GroupName

DeviceAddressは、ipv4, ipv6hostnameのいずれかです。これは、イベント ソースがどのように定義されているかによって決まります。

Feedファイルの例を次に示します。

 "12.12.12.12","d6","NETFLOW","grp1" "12.12.12.12","ld4","netflow","grp1" "12.12.12.12","d6","netfow","grp1" "0:E:507:E6:D4DB:E:59C:A","10.25.50.243","apache","Apachegrp" "1.2.3.4","LCC","apache","Apachegrp" "10.100.33.234","LC1","apache","Apachegrp" "10.25.50.248","10.25.50.242","apache","Apachegrp" "10.25.50.251","10.25.50.241","apache","Apachegrp" "10.25.50.252","10.25.50.255","apache","Apachegrp" "10.25.50.253","10.25.50.251","apache","Apachegrp" "10.25.50.254","10.25.50.230","apache","Apachegrp" "10.25.50.255","10.25.50.254","apache","Apachegrp" "13.13.13.13","LC1","apache","Apachegrp" "AB:F255:9:8:6C88:EEC:44CE:7",,"apache","Apachegrp" "Appliance1234",,"apache","Apachegrp" "CB:F255:9:8:6C88:EEC:44CE:7","10.25.50.253","apache","Apachegrp"

トラブルシューティング

問題が発生している場所を絞り込むには、次の項目を確認してください。

10.5 Log Decoder

使用しているSecurity Analytics Log Decoderがバージョン10.5かどうかを確認してください。そうでない場合はアップグレードする必要があります。Security Analyticsバージョン10.5では、バージョン10.5のLog DecoderのみにFeedが送信されます。 

Feedファイルの有無

FeedのZIPアーカイブが次の場所にあることを確認してください。

/opt/rsa/sms/esmfeed.zip

このファイルは変更しないでください。

Log Decoderが使用するグループ メタ

グループ メタがLog Decoderに読み込まれていることを確認します。Log DecoderのRESTにアクセスし、logstatsを確認します。

 http://LogDecoderIP:50102/decoder?msg=logStats&force-content-type=text/plain 

これはグループの情報が含まれるlogstatsファイルのサンプルです。

 device=apache forwarder=NWAPPLIANCE10304 source=1.2.3.4 count=338 lastSeenTime=2015-Feb-04 22:30:19 lastUpdatedTime=2015-Feb-04 22:30:19 groups=IP1234Group,apacheGroup device=apachetomcat forwarder=NWAPPLIANCE10304 source=5.6.7.8 count=1301 lastSeenTime=2015-Feb-04 22:30:19 lastUpdatedTime=2015-Feb-04 22:30:19 groups=AllOtherGroup,ApacheTomcatGroup 

グループ情報が太字で表示されています。

Concentratorでのデバイス グループ メタの確認

Device GroupメタがConcentratorに存在し、イベントにdevice.groupフィールドの値が表示されることを確認します。

esm_tbl_devgrp1.png

esm_tbl_devgrp2.png

SMSのログ ファイル

次の場所にあるSMSのログ ファイルをチェックして、情報メッセージやエラー メッセージを確認します。/opt/rsa/sms/logs/sms.log

次に情報メッセージの例を示します。

 Feed generator triggered... Created CSV feed file. Created zip feed file. Pushed ESM Feed to LogDeocder : <logdecoder IP> 

次にエラー メッセージの例を示します。

 Error creating CSV File : <reason>Unable to push the ESM Feed: Unable to create feed zip archive. Failed to add Group in CSV: GroupName: <groupName> : Error: <error> Unable to push the ESM Feed: CSV file is empty, make sure you have al-least on group with al-least one eventsource. Unable to push the ESM Feed: No LogDecoders found. Unable to push the ESM Feed: Unable to push feed file on LogDecoder-<logdecoderIP>Unable to push the ESM Feed: admin@<logdecoderIP>:50002/decoder/parsers received error: The zip archive "/etc/netwitness/ng/upload/<esmfeedfileName>.zip" could not be opened Unable to push the ESM Feed: <reason> 

ESMReaderおよびESMAggregatorによるLogstatsデータの読み取りおよび公開を確認

logstatsがcollectdによって収集され、イベント ソース管理モジュールに公開されていることを確認します。

ESMReader

  1. LogDecoderでdebug "true"フラグを/etc/collectd.d/NwLogDecoder_ESM.confに追加します。
 # # Copyright (c) 2014 RSA The Security Division of EMC # <Plugin generic_cpp> PluginModulePath "/usr/lib64/collectd" debug "true" <Module "NgEsmReader" "all"> port "56002" ssl "yes" keypath "/var/lib/puppet/ssl/private_keys/d4c6dcd4-6737-4838-a2f7- ba7e9a165aae.pem" certpath "/var/lib/puppet/ssl/certs/d4c6dcd4-6737-4838-a2f7- ba7e9a165aae.pem" interval "600" query "all" <stats> </stats> </Module> <Module "NgEsmReader" "update"> port "56002" ssl "yes" keypath "/var/lib/puppet/ssl/private_keys/d4c6dcd4-6737-4838-a2f7- ba7e9a165aae.pem" certpath "/var/lib/puppet/ssl/certs/d4c6dcd4-6737-4838-a2f7- ba7e9a165aae.pem" interval "60" query "update" <stats> </stats> </Module></Plugin> 
  1. 次のコマンドを実行します。 
    collectd service restart
  2. 次のコマンドを実行します。
    tail –f /var/log/messages | grep collectd
    ESMReaderがlogstatsを読み込んでおり、エラーが発生していないことを確認します。読み取りの問題が発生していると、次のようなエラーが表示されます。
 Apr 29 18:47:45 NWAPPLIANCE15788 collectd[14569]: DEBUG: NgEsmReader_all: error getting ESM data for field "groups" from logstat device=checkpointfw1 forwarder=PSRTEST source=1.11.51.212. Reason: <reason>Apr 29 18:58:36 NWAPPLIANCE15788 collectd[14569]: DEBUG: NgEsmReader_update: error getting ESM data for field "forwarder" from logstat device=apachetomcat source=10.31.204.240. Reason: <reason> 

ESMAggregator

  1. Security Analyticsで、/etc/collectd.d/ESMAggregator.confの中のverboseフラグのコメントを解除します。
 # ESMAggregator module collectd.conf configuration file # # Copyright (c) 2014 RSA The Security Divsion of EMC # <Plugin generic_cpp> PluginModulePath "/usr/lib64/collectd" <Module "ESMAggregator"> verbose 1 interval "60" cache_save_interval "600" persistence_dir "/var/lib/netwitness/collectd" </Module> </Plugin> 
  1. 次のコマンドを実行します。
    collectd service restart.
  2. 次のコマンドを実行します。
    run “tail –f /var/log/messages | grep ESMA
    ESMAggregatorのデータを検索し、logstatエントリーがログの中に含まれているかどうかを確認します。

サンプル出力:

 Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[0] logdecoder[0] = d4c6dcd4-6737-4838-a2f7-ba7e9a165aae Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[1] logdecoder_utcLastUpdate[0] = 1425174451 Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[2] groups = Cacheflowelff,Mixed Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[3] logdecoders = d4c6dcd4-6737-4838-a2f7-ba7e9a165aae Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[4] utcLastUpdate = 1425174451 Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: Dispatching ESM stat NWAPPLIANCE15788/esma_update-cacheflowelff/esm_counter-3.3.3.3 with a value of 1752 for NWAPPLIANCE15788/cacheflowelff/esm_counter-3.3.3.3 aggregated from 1 log decoders Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[0] logdecoder[0] = 767354a8-5e84-4317-bc6a-52e4f4d8bfff Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[1] logdecoder_utcLastUpdate[0] = 1425174470 Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[2] groups = Cacheflowelff,Mixed Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[3] logdecoders = 767354a8-5e84-4317-bc6a-52e4f4d8bfff Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: MetaData[4] utcLastUpdate = 1425174470 Mar 1 02:32:08 NWAPPLIANCE15936 collectd[11203]: ESMAggregator: Dispatching RRD stat NWAPPLIANCE15788/esma_rrd-cacheflowelff/esm_counter-3.3.3.3 with a value of 1752 for NWAPPLIANCE15788/cacheflowelff/esm_counter-3.3.3.3 aggregated from 1 log 

JMX Feedジェネレータ ジョブのインターバルの構成

Feedジェネレータ ジョブはデフォルトでは1分ごとに実行されるようスケジュールされています。必要に応じてjconsoleを使用してこれを変更できます。

Feedジェネレータ ジョブのインターバルを変更するには、次の手順を実行します。

  1. SMSサービス用のjconsoleを開きます。
  2. [MBeans]タブで、[com.rsa.netwitness.sm]>[API]>[esmConfiguration]>[Attributes]に移動します。
  3. FeedGeneratorJobIntervalInMinutesプロパティの値を変更します。
  4. 同じナビゲーション ツリーの下にある[Operations]で[commit()]をクリックします。この操作により、/opt/rsa/sms/confにある対応するjsonファイルに新しい値が永続的に設定され、SMS再起動時にはこの値が使用されます。

新しい値を設定すると、新しいインターバルでFeedジェネレータージョブが再スケジュールされます。

Previous Topic:NwLogPlayer
Next Topic:参考資料
You are here
Table of Contents > Security Analyticsのトラブルシューティング > Feedのトラブルシューティング

Attachments

    Outcomes