Snmp
Aller à la navigation
Aller à la recherche
Recevoir les Traps
Les traps sont des messages snmp envoyés par un équipement réseau à la station de supervision pour l'avertir sur un événement. Cet événement peut être matériel - changement d'état d'une interface - mais aussi logiciel - modification de la configuration de l'équipement'. Suivant le type de matériel, les traps envoyées peuvent être variées.
Installation
- Par défaut, lors de l'installation du daemon snmp, le programme snmptrap est intégré à l'installation. Cependant, ce programme ne permette pas de traduire les traps reçus si ces dernières sont spécifiques au constructeur. L'installation du service snmptt est alors envisagée.
|
|
- Le programme ne fonctionnera pas comme un service indépendant. Il sera appelé par le programme snmptrap lors de la réception d'une trap.
Configuration
Configuration de snmp
- Editer le fichier de configuration /etc/default/snmpd, puis remplacer la ligne :
TRAPDRUN=no
- Par :
TRAPDRUN=yes
- Remplacer également la ligne :
TRAPDOPTS='-Lsd -p /var/run/snmptrapd.pid'
- Par :
TRAPDOPTS='-On -Lsd -p /var/run/snmptrapd.pid'
Configuration de snmptrapd
- Editer le fichier de configuration /etc/snmp/snmptrapd.conf, puis ajouter à la fin du fichier les lignes suivants :
ignoreAuthFailure yes authCommunity log,execute,net pfalk traphandle default /usr/sbin/snmptt donotlogtraps no
Configuration de snmptt
- Editer le fichier de configuration /etc/snmp/snptt.ini, puis rechercher la ligne :
unknown_trap_log_enable = 0
Par :
unknown_trap_log_enable = 1
- Pour activer la prise en charge de MySQL, affecter la valeur 1 au paramètre :
mysql_dbi_enable = 1
- Rechercher la ligne suivante et indiquer l'adresse IP du serveur MySQL. Si le serveur MySQL est hébergé sur la même machine que le programme snmptt, laisser la valeur localhost.
mysql_dbi_host = localhost
- Renseigner le port d'écoute du serveur MySQL. Par défaut le serveur écoute sur le port TCP 3306.
mysql_dbi_port = 3306
- Indiquer le nom de la base de données MySQL.
mysql_dbi_database = snmpttdb
- Indiquer le nom de la table ou seront enregistrés les traps snmp :
mysql_dbi_table = snmptt
- Indiquer le nom de la table ou seront enregistrés les traps snmp non traduites :
mysql_dbi_table_unknown = snmptt_unknown
- Indiquer le nom de la table ou seront enregistrés les statistiques snmp :
mysql_dbi_table_statistics = snmptt_statistics
- Indiquer le nom d'utilisateur MySQL :
mysql_dbi_username = snmpttuser
- Indiquer le mot de passe du compte MySQL :
mysql_dbi_password = mdpsnmpttuser
- Création des tables SQL pour la base snmpttdb :
USE snmpttuser; DROP TABLE snmptt; CREATE TABLE snmptt ( id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, eventname VARCHAR(50), eventid VARCHAR(50), trapoid VARCHAR(100), enterprise VARCHAR(100), community VARCHAR(20), hostname VARCHAR(100), agentip VARCHAR(16), category VARCHAR(20), severity VARCHAR(20), uptime VARCHAR(20), traptime VARCHAR(30), formatline VARCHAR(255) ); USE snmpttuser; DROP TABLE snmptt_unknown; CREATE TABLE snmptt_unknown ( trapoid VARCHAR(100), enterprise VARCHAR(100), community VARCHAR(20), hostname VARCHAR(100), agentip VARCHAR(16), uptime VARCHAR(20), traptime VARCHAR(30), formatline VARCHAR(255) ); USE snmpttuser; DROP TABLE snmptt_statistics; CREATE TABLE snmptt_statistics ( stat_time VARCHAR(30), total_received BIGINT, total_translated BIGINT, total_ignored BIGINT, total_unknown BIGINT );
Si aucune base MySQL n'est définie, les traps seront enregistrées dans des fichiers de journalisation sous la racine /var/log/snmptt. |
Finalisation
- Pour terminer l'installation, il est nécessaire de redémarrer les daemon snmpd et snmptt :
|
|
Sources
- Configuration MySQL pour snmptt : http://snmptt.sourceforge.net/docs/snmptt.shtml#LoggingDatabase-MySQL