ESM : Résoudre les problèmes liés aux feeds

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

L'objectif du générateur de flux est de générer le mappage d'une source d'événement sur la liste de groupes auxquels elle appartient.

Si vous disposez d'une source d'événement à partir de laquelle vous collectez des messages qui ne figure pas encore dans les groupes de sources d'événement appropriés, cette rubrique fournit des références et des informations générales pour vous aider à traquer le problème.

Détails

Le feed ESM mappe plusieurs clés sur une valeur unique. Il mappe les attributs DeviceAddress, Forwarder et DeviceType à groupName.

Le but du feed ESM est d'enrichir la méta de l'événement source avec le groupName collecté sur Log Decoder.

Fonctionnement

Le générateur de feed est prévu pour se mettre à jour chaque minute. Cependant, il ne se déclenche qu'en cas de changements (créer, mettre à jour ou supprimer) dans les sources ou les groupes d'événements.

Il génère un fichier de feed unique avec une source d'événement au mappage de groupe, et envoie le même feed sur tous les Log Decoders qui sont connectés à Security Analytics.

Une fois le fichier de feed chargé sur les Log Decoder, pour tous les nouveaux événements, il enrichit les métadonnées des événements avec groupName, et ajoute ce groupName à logstats.

Une fois que groupName se trouve dans logstats, ESM Aggregator groupe les informations et les envoie à ESM. À ce stade, vous devriez voir la colonne Nom du groupe sous l'onglet Surveillance des sources d'événements.

L'ensemble du processus peut prendre un certain temps. Par conséquent, vous devrez peut-être attendre plusieurs secondes après avoir ajouté une nouvelle source de groupe ou d'événement, avant que le nom du groupe ne s'affiche.

Remarque : Si l'attribut du type de source de l'événement change lorsque le feed est mis à jour, Security Analytics ajoute une nouvelle entrée logstats, plutôt que de mettre à jour l'existant. Ainsi, il y a deux entrées de logstats différentes dans logdecoder. Auparavant, les messages existants auraient été répertoriés dans le type précédent. Tous les nouveaux messages sont enregistrés pour le nouveau type de source d'événement.

Fichier de feed

Le format du fichier de feed est le suivant :

DeviceAddress, Forwarder, DeviceType, GroupName

DeviceAddress est soit ipv4, ipv6, soit hostname, selon ce qui a été défini pour la source d'événement.

Voici un exemple de fichier de 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"

Résoudre les problèmes liés aux feeds

Vous pouvez vérifier les éléments suivants pour vérifier où le problème se produit.

Log Decoder version 10.5

Vos Security Analytics Log Decoders ont-ils la version 10.5 ou supérieure ? Si ce n'est pas le cas, vous devez les mettre à niveau. Pour la version Security Analytics 10.6, les feeds ne sont envoyés qu'à la version Log Decoder 10.5 et supérieure. 

Existence des fichiers de feed

Vérifiez que l'archive ZIP contenant les feeds existe à l'emplacement suivant :

/opt/rsa/sms/esmfeed.zip

Ne modifiez pas ce fichier.

Groupe méta rempli sur LD

Vérifiez que le groupe méta est rempli sur Log Decoder. Naviguez vers le REST de Log Decoder et vérifiez logstats :

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

Voici un exemple de fichier logstats avec des informations de groupe :

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

Dans le texte ci-dessus, les informations du groupe sont en gras.

Méta du groupe de périphériques sur Concentrator

Vérifiez que la méta du Groupe de périphériques existe sur le Concentrator et que les événements comportent des valeurs dans le champ device.group.

esm_tbl_devgrp1.png

esm_tbl_devgrp2.png

Fichier log SMS

Vérifiez le fichier log SMS à l'emplacement suivant pour afficher les messages d'information et d'erreur : /opt/rsa/sms/logs/sms.log

Voici des exemples de messages d'information :

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

Voici des exemples de messages d'erreur :

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>

Vérifier que les données Logstats sont lues et publiées par ESMReader et ESMAggregator

Voici les étapes de vérification de collecte des logstats par collectd et de leur publication dans la gestion de source d'événements.

ESMReader

  1. Sur les Log Decoders, ajoutez la balise debug "true" dans/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>
  2. Exécutez la commande :

    service collectd restart

  3. Exécutez la commande suivante :

    tail –f /var/log/messages | grep collectd

    Vérifiez que ESMReader lit logstats et qu’il n'y a pas d'erreur. S’il existe des problèmes de lecture, vous verrez des erreurs similaires à ce qui suit :

     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. Dans Security Analytics, supprimez les commentaires de la balise verbose dans /etc/collectd.d/ESMAggregator.conf :

     # 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>
  2. Exécutez les commandes suivantes<:hs>:

    service collectd restart

  3. Exécutez la commande suivante :

    run “tail –f /var/log/messages | grep ESMA

    Recherchez les données ESMAggregator et assurez-vous que votre entrée logstat est disponible dans les logs.

Exemple de sortie :

 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

Configurer l'intervalle de tâche du générateur de feed JMX

Bien que la tâche de génération de feed est prévue pour s'exécuter chaque minute par défaut, vous pouvez la modifier avec jconsole, le cas échéant.

Pour modifier l'intervalle de tâche du générateur de flux :

  1. Ouvrez jconsole pour le service SMS.
  2. Sous l'onglet MBeans, accédez à com.rsa.netwitness.sms > APIesmConfiguration > Attributs.
  3. Modifiez la valeur de la propriété FeedGeneratorJobIntervalInMinutes.
  4. Accédez à Opérations sous la même arborescence de navigation, puis cliquez sur commit(). Cette opération enregistre la nouvelle valeur dans le fichier JSON correspondant sous /opt/rsa/sms/conf et utilise la valeur si SMS est redémarré.

La définition d'une nouvelle valeur replanifie la tâche du générateur de flux pour le nouvel intervalle.

You are here
Table of Contents > Résolution des problèmes > Résoudre les problèmes liés aux feeds

Attachments

    Outcomes