Manuel de l'administrateur | Table des matières |
Les filtres de trap (snmp v1) et de notification (snmp v2c et snmp v3) sont utilisés pour déclencher une action lors de la reception d'un trap snmp par LoriotPro. Pour tous les trap, il est possible de définir plusieurs actions et avec des critères de filtrage différents. Les actions possible sont l’envoie d’E-mail, l’alarme sonore, l’envoie d’un événement, le lancement d’un programme ou d’un script, la diction du message par le text to speech, etc.
La lecture préalable des chapitres suivants est conseillée: Introduction à la supervision, Trap et Notification snmp
Remarque : Dans ce document, nous utiliserons le terme trap aussi pour désigner les notification snmp v2c
Les citères de filtrage disponibles sont l'OID du trap, l'adresse IP source, la communauté snmp, le contenu des champs de variable (varbind).
Pour la création d’un filtre de trap 3 methodes sont possibles :
Les filtres d’événement et de trap snmp sont enregistrés dans un fichier texte /bin/config/trapfilter.txt. La syntaxe de ce fichier doit être respectée en cas de modification manuel par un éditeur.
LoriotPro intègre en standard un serveur de trap snmp en écoute sur le port UDP standard 162. Les agents snmp doivent être prélablement configuré pour emettre leur trap vers LoriotPro. A réception de trap, LoriotPro décode les différentes versions SNMP de Traps. La syntaxe utilisée pour filtrer les différentes versions de type de Traps est la même.
Pour filtrer un Trap vous devez connaître son nom snmp ou OID défini dans les MIB. Le logiciel va utiliser l’information d’ObjectID SNMP reçue dans le paquet pour trouver les filtres à appliquer. Si vous voulez filtrer un Trap reçu, il est possible d’utiliser directement le « Trap filter Wizard » du menu contextuel de la fenêtre Traps.
Exemple de Trap (snmp v1) dans l'arbre des MIB de LoriotPro
Exemple de trap (notification SNMP V2c) dans l'arbre des MIB de LoriotPro
En fonction des fichiers de MIB compilés par le logiciel, la liste des trap snmp reconnus par LoriotPro va varier. Dans tous les cas, le logiciel pourra donner un nom à un Trap. Si les fichiers de MIB définissant ce trap sont dans la base des objets de MIB (compilation des MIB). alors LoriotPro donnera le nom exact du Trap et vous devrez utiliser ce nom dans les filtres. Si les fichiers de MIB définissant ce Trap n’ont pas été chargés alors LoriotPro donnera un nom sous la forme d’un OID SNMP et vous devrez utiliser ce nom dans les filtres.
Exemple de trap snmp v1 reçu et connu de LoriotPro
Exemple de trap reçu et inconnu de LoriotPro. Un trap Cisco V3 dont la MIB n'est pas présente (compilée).
Warning: Si vous compilez les fichiers de MIB contenant la définition des Traps de vos filtres après la création des filtres ( avec une syntaxe sous forme d’OID SNMP ) vous devrez modifier vos filtres avec les vrais noms pour les rendre opérationnels.
Une façon simple de connaître le nom d’un Trap que l’on désire filtrer est de regarder la colonne ObjID de la fenêtre Traps du logiciel et d’utiliser le nom affiché pour créer le filtre.
ObjID column in the Trap window
Dans cet exemple deux Traps ont été reçus par le logiciel, si vous désirez filtrer le Trap (notifications) SNMP V3 utilisez son nom ciscoconfigmanmibnotifications.1.
Le même Trap en version 1 du protocole SNMP a un autre nom :
Dans cet exemple avec un Trap SNMP V1 utilisez le nom :
ciscoconfigmanmibnotificationprefix .
Ce Trap est défini dans un fichier de définition de MIB Cisco :
Fichier : CISCO-CONFIG-MAN-MIB.my (extrait)
ciscoConfigManEvent TRAP-TYPE
-- Reverse mappable trap
ENTERPRISE ciscoConfigManMIBNotificationPrefix
VARIABLES {
ccmHistoryEventCommandSource,
ccmHistoryEventConfigSource,
ccmHistoryEventConfigDestination }
-- Status
-- mandatory
DESCRIPTION
"Notification of a configuration
management event as
recorded
in ccmHistoryEventTable."
::= 1
La fenêtre de visualisation des trap et notification dipose d'un menu contextuel permettant d'appeler le Wizard.
Sélectionner un trap reçus dans la liste puis cliquer droit pour avoir le menu contextuel, sélectionner :
Traps Filter wizard option in the Trap contextual menu
Si un filtre exist déjà pour ce trap, une boîte de dialogue vous propose de créer une nouvelle action pour ce filtre.
Sinon l'assistant vous propose de créer une nouvelle entré pour ce trap/notification.
Si un trap est déjà filtré par un wildcard, vous êtes averti. Basculer alors dans l'onglet Filter pour éventuellement le détruire. Dans l'exemple ci-dessous le wildcard *-[6-0] intercepte tous les trap snmp V1 de type Enterprise ce qui rend inopérationnel les filtres suivants.
La fenêtre de génération graphique d’actions associées au Trap est affichée avec les paramètres de l’agent émetteur, il ne vous reste plus qu’à choisir le type d’actions à réaliser pour la prochaine réception d’un Trap de ce type pour cet agent.
Trap action Wizard window
Pour définir les critères de filtrage et l'action déclenchée, compléter les champs requis.
Champ | Description |
---|---|
IP Address | L'adresse IP source à l'origine du trap ou de la notification |
Mask | Un masque de sélection des bits significatifs de l'adresse IP (exemple pour sélectionner tous les hosts du réseau de classe C définir un masque de 255.255.255.0 |
Community | Communauté des trap snmp v1 ou des notification snmp v2c v3 |
OID Name | Les nom des variables du trap (varbind) |
Values | les valeurs utilisé pour le filtrage sur les variables |
Action Wizard | assistant de sélection des actions |
Parameters | paramètres passés à l'action |
Le bouton Wizard permet d'avoir ensuite accès à la configuration des paramètres passés à l'action
Trap Filter creation Wizard window
Tous les champs constituant le trap peuvent être passés sous forme de variables identifiées par le signe %
Finalement les paramètres avancés de configuration du filtre de trap peuvent être modifiés en cliquant sur le bouton Advanced
Les options avancés vous donnent un contrôle précis sur le filtrage et sur le déclenchement de l'action. Ces options sont basées sur le compteur de filtres de trap satisfaits. Ce compteur s'incrémente à chaque réception de trap remplissant les conditions du filtre. Vous pouvez alors définir l'action en fonction de la valeur de ce compteur.
Les otpions disponibles sont :
Match All |
A chaque fois que les conditions du filtre sont satisfaites |
Match only First |
seulement la première fois que les conditions du filtre sont satisfaites |
Match only X |
la n fois que les conditions du filtre sont satisfaites |
Match after X |
après n fois que les conditions du filtre sont satisfaites |
Match if supposed burst for time interval <= |
si les conditions du filtre sont satisfaites plus de n fois sur une période |
Match Every X |
toutes les n fois que les conditions du filtre sont satisfaites |
Les compteurs doivent être remis à zéro manuallement à partir des fenêtres de visualistaion des compteurs.
Invoquer l'assistant de création de filtre de trap à partir de l'arbre des filtres
Nous venons de voir comment insérer un nouveau filtre de Trap directement à partir d’un Trap reçu avce l'assistant (Wizard).
Il est aussi possible d’insérer un nouveau Filtre de Trap à partir de l’arbre graphique de la fenêtre avec l'onglet Filters.
Après avoir sélectionné l’objet Traps Filters de l’arbre utilisez le menu contextuel New Trap Filter/Action.
La fenêtre de création d’un nouveau filtre est alors affichée.
La première opération consiste à définir le nom du Trap à filtrer.
Si le Trap est un Trap snmp v1 standard , sélectionnez son nom à partir du ComboBox Trap Type.
Si le Trap est un Trap snmp v1 Enterprise, alors sélectionnez Enterprise dans le ComboBox et le champ « Trap name » sera déverrouillé.
Si vous ne connaissez pas le trap que vous voulez filtrer cliquer sur le bouton Wizard pour le sélectionner dans la base des trap LoriotPro (Visible à partir des MIB compilés)
Remarque : Si vous cherchez un trap Enterprise SNMP V1 Trap ou Private SNMP V2 notification dans la liste et que vous ne le trouvez pas , c'est surement que la MIB contenant ce trap n'est pas compilée. Il faut vous la procurer auprès du contructeur et l'ajouter par compilation à Loriotpro.
Par défaut un filtre de trap a pour action d'envoyer un événement vers le gestionnaire d'événement de LoriotPro.
L'événement généré est le 300, si vous positionner cette valeur à 0 aucun événement ne sera envoyé.
Global Event String : Les divers champs du trap peuvent être renvoyés comme paramètres dans le message de l'événement.
Un clique sur le bouton Wizard permet de sélectionner les paramètres et construire la chaîne de caratères constitutif du message.
Trap filter string (Wizard)
Une fois le trap défini il doit apparaitre dans l'arbre des filtres. Le sélectionner, appeler le menu contextuel et l'option Properties.
La fenêtre de création de filtre est affichée.
Trap action Wizard window
Pour définir les critères de filtrage et l'action déclenchée, compléter les champs requis.
Champ | Description |
---|---|
IP Address | L'adresse IP source à l'origine du trap ou de la notification |
Mask | Un masque de sélection des bits significatifs de l'adresse IP (exemple pour sélectionner tous les hosts du réseau de classe C définir un masque de 255.255.255.0 |
Community | Communauté des trap snmp v1 ou des notification snmp v2c v3 |
OID Name | Les nom des variables du trap (varbind) |
Values | les valeurs utilisé pour le filtrage sur les variables |
Action Wizard | assistant de sélection des actions |
Parameters | paramètres passés à l'action |
Trap Filter creation Wizard window
Tous les champs constituant le trap peuvent être passés sous forme de variables identifiées par le signe %
Finalement les paramètres avancés de configuration du filtre de trap peuvent être modifiés en cliquant sur le bouton Advanced
Les options avancés vous donnent un contrôle précis sur le filtrage et sur le déclenchement de l'action. Ces options sont basées sur le compteur de filtres de trap satisfaits. Ce compteur s'incrémente à chaque réception de trap remplissant les conditions du filtre. Vous pouvez alors définir l'action en fonction de la valeur de ce compteur.
Les otpions disponibles sont :
Match All |
A chaque fois que les conditions du filtre sont satisfaites |
Match only First |
seulement la première fois que les conditions du filtre sont satisfaites |
Match only X |
la n fois que les conditions du filtre sont satisfaites |
Match after X |
après n fois que les conditions du filtre sont satisfaites |
Match if supposed burst for time interval <= |
si les conditions du filtre sont satisfaites plus de n fois sur une période |
Match Every X |
toutes les n fois que les conditions du filtre sont satisfaites |
Les compteurs doivent être remis à zéro manuallement à partir des fenêtres de visualistaion des compteurs.
Une fois le nom du Trap à filtrer connu il faut définir différents paramètres associés au filtre. Un filtre pour un Trap donné est défini sur une ligne de texte sans retour à la ligne. Un filtre de Trap contient six ou sept paramètres dans un ordre bien précis.
Exemple dans le fichier des filtres /bin/config/trapfilter.txt
trap ciscoConfigManMIBNotificationPrefix
6 1 3 "%n (%N) for agent %i from proxy [%p]
%0 %1 %2 %3 %4 %5"
Table de la syntaxe utilisé dans le fichier des filtres de trap
Options |
Examples |
Definitions |
||||||||||||||||||||||
Trap |
trap |
Ce mot clef prévient le compilateur que cette ligne correspond à un filtre de Trap. |
||||||||||||||||||||||
name |
ciscoConfigManMIBNotificationPrefix |
Le nom du Trap à filtrer. |
||||||||||||||||||||||
The generic Trap type |
6 |
Ce paramètre est utilisé par les Traps de version V1 et définit le type standard de Trap. En SNMP V1, 6 Traps génériques sont définis en standard pour le type 6 il existe un type complémentaire appelé le type spécifique du Trap.
|
||||||||||||||||||||||
The specific trap type |
1 |
Utilisé uniquement en V1 et si le type Générique du Trap est 6 sinon la valeur doit être zéro. |
||||||||||||||||||||||
Event level |
3 |
Une valeur de 0 à 10 pour définir un niveau de gravité associé à ce Trap. Le niveau de gravité permet un affichage du message dans une couleur différente dans la fenêtre Global Events. |
||||||||||||||||||||||
The message to display in the Global Events window |
"%n (%N) for agent %i from proxy [%p] %0 %1 %2 %3 %4 %5" |
Ce paramètre est une chaîne de caractères délimitée par des guillemets et qui contient le corps du message à afficher dans la fenêtre Global Event. Il est possible d’utiliser des variables dans cette chaîne de caractères de façon à pouvoir personnaliser le message.
|
||||||||||||||||||||||
Event number assigned |
10002 |
Par défaut le message envoyé au module Global Event contient la référence 300, il est possible de personnaliser le numéro d’événement associé a un Trap pour réaliser des filtres d ‘événements supplémentaires. |
Exemples :
trap ciscoMgmt.41.2 6 1 1 "%n
for Agent %i proxy [%p] $0->%0 $1->%1 $2->%2
$3->%3"
trap ciscoMgmt.43.2 6 1 1 "%n for Agent
%i proxy [%p] $0->%0 $1->%1 $2->%2 $3->%3"
trap cisco 6 1 3 "%n (%N) for agent %i from proxy [%p] : %0 %1 $2/%2 ByteIn/%3 ByteOut/%4
$5/%5"
trap loriotidsprobe 6 1 3 "%n (%N) for
agent %i from proxy [%p] : %0 %1 $2/%2 ByteIn/%3
ByteOut/%4 $5/%5"
trap ciscoSyslogMIBNotificationPrefix 6 1
3 "%n (%N) for agent %i from proxy [%p] %0
%1 %2 %3 %4 %5"
trap ciscoConfigManMIBNotificationPrefix 6
1 3 "%n (%N) for agent %i from proxy [%p] %0
%1 %2 %3 %4 %5"
trap LinkDown 2 0 6 "%r for %n from %i Interface %1 at %t Description %1 Type %2 Status %3"
10002
Actions des filtres de trap snmp
L'objectif des filtres est de déclencher des actions lors de la réception d’un Trap.
LoriotPro vous permet de filtrer les actions en fonction de l’adresse source du paquet reçu et/ou de la Community SNMP contenue dans le paquet.
Les actions associées à un filtre de Trap sont placées dans le fichier des filtres /bin/config/trapfilter.txt à la suite de la définition du filtre de Trap.
Lors de la configuration la liste déroulante des actions permet de choisir l'action à déclencher.
Une ligne définissant une action associée à un Trap commence par le mot clef action suivi de 5 paramètres.
Example dans le fichier des filtres /bin/config/trapfilter.txt
action 0.0.0.0 0.0.0.0 *
wave "wave/linedown.wav"
Table of syntaxes of Trap associated actions
Parameters |
Examples |
Definitions |
IP |
0.0.0.0 |
Les deux paramètres suivants sont un filtre qui permet de tester si l’adresse source du paquet reçu est concerné par cette action. Si IP_SOURCE_RE9UT et_logique IP_MASK = IP Exemple : |
IP Mask |
0.0.0.0 |
Define above. |
Community |
* |
La Community SNMP devant être reçue dans le paquet (uniquement pour SNMP V1 et V2c).
|
OID |
L'object SNMP |
|
Value |
Un valeur à comparer au contenu d'un champ de variable du trap (varbind) |
|
Action types |
Wave |
Le type d’action à réaliser à la réception du Trap si les trois paramètres précédents sont positifs. |
parameters |
"wave/linedown.wav" |
Une chaîne de caractères délimitée par des guillemets contenant des paramètres spécifiques à chaque type d’action. |
Tableau des actions associées aux Traps
Actions | Command |
wave |
Lance un fichier son de type Wave :
|
trap |
Reroute un Trap v1 ou v2c vers un autre serveur.
|
winrun |
Lance un programme Windows :
|
dosrun |
Lance un programme de type DOS (en fonction des versions d’OS)
|
syslog |
Envoie un message Syslog :
|
smtp |
Génère un fichier message dans le répertoire spooler du logiciel.
|
nul |
Do nothing |
Forward Trap as Event to a LoriotPro |
Cette action permet d'envoyer un événement à ce Loriotpro ou à un autre LoriotPro |
Run Script | Dépose un script LUA pour exécution dans la file d'attente des traitements (plugin de service) |
Un fois l'action choisie, les paramètres passés à l'action doivent être définies
Tableau des variables des chaînes d’actions
Variables |
Correspondance |
%r |
Référence |
%i |
Adresse IP de l’agent (dans le host) |
%p |
Adresse IP source du paquet reçu. |
%t |
Un Trap contient un TimeStamp, |
%T |
Affiche le TimeStamp local à LoriotPro. |
%0 à %9 |
Les paramètres du contenu dans le Trap (si il existe). |
$0 à $9 |
Le nom SNMP des paramètres contenus dans le Trap (si il existe). |
%n |
L’ObjID SNMP du Trap. |
%l |
Le niveau de gravité attribué au Trap. |
%N |
Le nom du Trap si il existe. |
Exemples de filtre dans le fichier des filtres /bin/config/trapfilter.txt
trap Authentication 4 0 3 "%n (%N) for agent %i from proxy [%p] %0 %1 %2 %3 %4 %5"
action 10.33.10.121 255.255.255.255 public trap "10.33.10.129"
action 10.33.10.121 255.255.255.255 public wave "wave/ding.wav"
action 0.0.0.0 0.0.0.0 * syslog "10.33.10.126 %r for %n from %i from proxy [%p] Request from station [%0]"
trap LinkUp 3 0 4 "%r for %n from %i Interface %1 at %t Description %1 Type %2 Status %3"
10001
action 0.0.0.0 0.0.0.0 * wave
"wave/lineup.wav"
La réception d’un Trap snmp v1 standard ‘Authentication’ générera un message dans la fenêtre Global Event.
Si l’adresse source de l’agent contenue dans le paquet reçu correspond aux filtres d’actions, les actions seront réalisées. Si le Trap reçu provient de l’agent 10.33.10.121 trois actions seront réalisées.
Remarque : Les variables des chaînes d’actions sont les mêmes que pour les filtres de Trap.
Attention : Il ne peut pas y avoir plusieurs filtres pour le même Trap, mais plusieurs actions associées à un filtre de Trap.
www.loriotpro.com |
|