10 Surveiller un commutateur réseau ou un routeur avec Zabbix

Introduction

Ce guide vous accompagne à travers les étapes nécessaires pour démarrer une surveillance de base de votre commutateur réseau ou routeur à l’aide de Zabbix. Un routeur Cisco est utilisé comme exemple, mais la procédure s’applique à tout équipement réseau compatible SNMP.

À qui s’adresse ce guide

Ce guide est conçu pour les nouveaux utilisateurs de Zabbix et les administrateurs réseau qui souhaitent activer rapidement une surveillance de base des équipements réseau. Si vous avez besoin d’une personnalisation poussée ou d’options de configuration avancées, veuillez consulter la page Agent SNMP ou la section Configuration du manuel Zabbix.

Prérequis

Avant de poursuivre avec ce guide, assurez-vous de disposer des éléments suivants :

  • Zabbix server et Zabbix frontend installés : effectuez l’installation conformément aux instructions correspondant à votre système d’exploitation (voir Installation à partir de paquets et Installation de l’interface web).
  • Zabbix agent installé si vous surveillez des métriques réseau locales.
  • Équipement compatible SNMP : un commutateur réseau ou un routeur (par exemple, un routeur Cisco) avec SNMP activé.
  • Fichiers MIB installés : l’installation des fichiers MIB permet à Zabbix de traduire les OID numériques en noms et descriptions lisibles par l’humain. Sans prise en charge MIB appropriée, vous risquez de ne voir que des valeurs numériques, ce qui complique la configuration des éléments et le dépannage.

Pour installer les fichiers MIB sur Ubuntu :

1. Installez le paquet de téléchargement des MIB :

sudo apt-get update
sudo apt-get install snmp-mibs-downloader

Si vous devez ajouter des MIB spécifiques à un fournisseur (par exemple, Cisco, Juniper), placez-les dans le répertoire MIB approprié :

  • Pour les systèmes basés sur Linux, les emplacements courants incluent /usr/share/snmp/mibs/ ou /usr/local/share/snmp/mibs/.
  • Pour les installations Zabbix, les fichiers MIB peuvent être stockés dans /var/lib/zabbix/mibs/.

Assurez-vous que la variable d’environnement MIBDIRS ou le fichier snmp.conf inclut le chemin correct.

Pour vérifier que votre système reconnaît les nouvelles MIB, utilisez :

snmptranslate -IR -On <MIB-NAME>::<object>

Pour des instructions détaillées, reportez-vous à la documentation de votre bibliothèque SNMP :

2. Modifiez /etc/snmp/snmp.conf et commentez la ligne qui commence par mibs : afin de permettre au système de charger toutes les MIB disponibles.

3. Vérifiez en exécutant un snmpwalk (par exemple, snmpwalk -v 2c -c <your_community_string> <device_IP>) et assurez-vous que les OID s’affichent avec des noms descriptifs.

Selon votre environnement, certaines étapes de ce guide peuvent légèrement différer. Ce guide est basé sur un environnement exécutant Ubuntu et sur la surveillance d’un équipement réseau Cisco Catalyst 3750V2-24FS.

Il est supposé que votre équipement réseau est déjà physiquement installé et connecté.

Configurer l’équipement réseau (exemple de routeur Cisco)

Pour la supervision via SNMP, vous devez configurer votre équipement réseau afin d’autoriser les requêtes SNMP. L’exemple ci-dessous concerne SNMPv2 et ne tient pas compte des paramètres existants. Attention : l’application de ces commandes peut remplacer les configurations SNMP actuelles.

Pour un routeur Cisco, la configuration implique généralement les étapes décrites ci-dessous.

Exemple SNMPv2

1. Activez SNMP et définissez la chaîne de communauté.

Connectez-vous à la console de votre routeur Cisco et passez en mode de configuration :

configure terminal

Ensuite, activez SNMP en spécifiant une chaîne de communauté en lecture seule. Par exemple :

snmp-server community <your_community_string> RO

Remplacez <your_community_string> par votre chaîne de communauté sécurisée. Remarque : l’option RO (Read-Only) permet à SNMP de récupérer des données depuis l’appareil, mais empêche toute modification de la configuration.

Pour des raisons de sécurité, il est recommandé de limiter l’accès SNMP uniquement aux appareils nécessaires. Pour plus d’informations sur la configuration des listes de contrôle d’accès (ACL), consultez la documentation officielle de Cisco.

2. Enregistrez la configuration.

Enregistrez vos modifications pour vous assurer que les paramètres SNMP persistent après un redémarrage :

write memory

Exemple SNMPv3

SNMPv3 offre une sécurité renforcée grâce à l’authentification et au chiffrement. Sa configuration est plus sécurisée que celle de SNMPv2 et doit être vérifiée par rapport à la documentation spécifique à votre appareil.

1. Créez un groupe SNMP.

Configurez un groupe SNMPv3 avec la confidentialité (chiffrement) activée :

configure terminal
snmp-server group <your_group> v3 priv

2. Créez un utilisateur SNMP.

Ajoutez un utilisateur SNMPv3 avec authentification et confidentialité. Remplacez les espaces réservés par les valeurs souhaitées :

snmp-server user <your_user> <your_group> v3 auth md5 <auth_password> priv aes 128 <priv_password>

3. Enregistrez la configuration :

write memory

Pour plus de détails ou des instructions spécifiques au modèle, vous pouvez consulter les tutoriels externes de configuration SNMP Cisco. Ce guide fournit toutefois les étapes de base pour activer la supervision SNMP.

Configurer l’interface web de Zabbix

Créer un hôte dans l'interface web Zabbix

1. Connectez-vous à l'interface web Zabbix.

2. Ajoutez un nouvel hôte.

Accédez à Collecte de données > Hôtes et cliquez sur Créer un hôte.

  • Nom de l'hôte : saisissez un nom pour votre appareil (par exemple, « Cisco Router »).
  • Groupes d'hôtes : sélectionnez un groupe existant ou créez-en un nouveau, par exemple « Network Devices ».
  • Interfaces :
    • Cliquez sur Ajouter sous Interfaces.
    • Choisissez SNMP comme type d'interface.
    • Saisissez l'adresse IP ou le nom DNS de votre routeur Cisco.
    • Définissez le port SNMP par défaut (généralement 161).
    • Utilisez le menu déroulant pour sélectionner la version SNMP appropriée (par exemple SNMPv2).
    • Pour SNMPv1/v2, saisissez la chaîne de communauté dans le champ Communauté SNMP. Pour SNMPv3, des identifiants supplémentaires (Nom de contexte, Nom de sécurité et Niveau de sécurité, etc.) seront demandés.

3. Lier des modèles

Dans le champ Modèles, sélectionnez le modèle SNMP qui correspond le mieux à votre appareil. Zabbix fournit une gamme de modèles SNMP prédéfinis pour de nombreuses familles d'appareils. Par exemple, si vous surveillez un appareil Cisco, choisissez le modèle correspondant au système d'exploitation ou au modèle de votre appareil (tel que Cisco IOS SNMP ou Cisco Catalyst 3750<modèle d'appareil> SNMP).

4. Cliquez sur Ajouter pour enregistrer l'hôte.

Afficher les métriques collectées

Félicitations ! Zabbix est maintenant configuré pour surveiller votre équipement réseau.

Dernières données :

  • Accédez à Surveillance > Dernières données dans l’interface web Zabbix.

  • Sélectionnez votre hôte « Cisco Router » (ou les hôtes découverts) pour afficher des métriques telles que le temps de fonctionnement du matériel et du réseau, la perte ICMP, le ping et le temps de réponse, etc.

  • Graphiques et écrans :

Pour visualiser les données de performance, cliquez sur Graphiques à côté des éléments SNMP pour voir des métriques détaillées.

Comme étape suivante, vous pouvez :

Créer des éléments SNMP

Une fois l'hôte configuré, vous pouvez créer des éléments pour surveiller des métriques spécifiques. Remarque : cette étape est facultative si vous utilisez un modèle, car les modèles contiennent déjà des ensembles d'éléments par défaut.

1. Identifier l'OID SNMP :

Utilisez la commande snmpwalk pour lister les OID disponibles sur votre appareil. Par exemple :

snmpwalk -v 2c -c <your_community_string> <device_IP> .

Recherchez l'OID de la métrique que vous souhaitez surveiller (par exemple, IF-MIB::ifHCInOctets.3 pour le trafic entrant sur le port 3). Pour obtenir l'OID numérique, vous pouvez utiliser :

snmpget -v 2c -c <your_community_string> -On <device_IP> IF-MIB::ifHCInOctets.3

2. Créer un élément SNMP :

  • Accédez à Collecte de données > Hôtes, puis cliquez sur l'onglet Éléments de votre hôte SNMP et cliquez sur Créer un élément.
  • Nom : saisissez un nom descriptif (par exemple, « Trafic entrant du port 3 »).
  • Type : sélectionnez Agent SNMP.
  • Clé : indiquez une clé explicite (par exemple, cisco.ifHCInOctets.3).
  • Interface de l'hôte : assurez-vous que l'interface SNMP est sélectionnée.
  • OID SNMP : saisissez l'OID en utilisant l'un des formats pris en charge, par exemple :
    • get[1.3.6.1.2.1.31.1.1.1.6.3] pour une valeur unique ;
    • walk[1.3.6.1.2.1.31.1.1.1.6.3] pour récupérer un sous-arbre de valeurs de manière asynchrone.

  • Prétraitement (si nécessaire) : si l'élément renvoie un compteur cumulatif (comme le trafic d'interface), accédez à l'onglet Prétraitement et ajoutez une étape de prétraitement telle que « Changement par seconde » pour calculer le débit.

Pour récupérer plusieurs valeurs en une seule transaction SNMP, vous pouvez spécifier plusieurs OID en utilisant la syntaxe walk[OID1,OID2,...].

Traduction des OID entre les valeurs numériques et les noms MIB

Lorsque vous travaillez avec SNMP, vous pouvez avoir besoin de convertir des OID numériques en leurs noms MIB correspondants, et inversement. Cette traduction facilite l’identification et le dépannage des métriques.

  • Traduction d’un nom MIB en OID numérique : utilisez la commande snmptranslate avec l’option -On. Par exemple, pour traduire le nom MIB IF-MIB::ifHCInOctets.3 en son OID numérique, exécutez :
snmptranslate -On IF-MIB::ifHCInOctets.3

Cette commande peut produire :

.1.3.6.1.2.1.31.1.1.1.6.3
  • Traduction d’un OID numérique en son nom MIB : utilisez la commande snmptranslate avec l’option -IR (ou -m ALL) pour effectuer la traduction inverse. Par exemple, pour traduire l’OID numérique .1.3.6.1.2.1.31.1.1.1.6.3 en son nom MIB, exécutez :
snmptranslate -IR -On .1.3.6.1.2.1.31.1.1.1.6.3

Cette commande peut produire :

IF-MIB::ifHCInOctets.3

Configurer les alertes de problème

Ce guide fournit les étapes de configuration de base pour l’envoi d’alertes par e-mail.

1. Accédez à Paramètres utilisateur > Profil, passez à l’onglet Média et ajoutez votre adresse e-mail.

2. Suivez le guide pour Recevoir une notification de problème.

La prochaine fois que Zabbix détectera un problème, vous devriez recevoir une alerte par e-mail.

Testez votre configuration

Pour vous assurer que Zabbix détecte correctement les problèmes de performance réseau, simulez un problème réel en augmentant le seuil du temps de réponse du ping ICMP.

1. Ouvrez la configuration de votre hôte "Cisco Router" dans Zabbix.

2. Accédez à l’onglet Macros et sélectionnez Inherited and host macros.

3. Repérez la macro {$ICMP_RESPONSE_TIME_WARN} (ou une macro similaire de seuil de temps de réponse).

4. Définissez une valeur très basse (par exemple, 0.001) afin de déclencher une alerte lorsque le temps de réponse du ping dépasse cette valeur.

5. Cliquez sur Update pour appliquer les modifications.

6. Attendez quelques instants que Zabbix détecte le problème simulé.

7. Accédez à Monitoring > Problems pour vérifier qu’une alerte apparaît (par exemple, "High ICMP ping response time").

Si des alertes sont configurées, vous devriez également recevoir une alerte de problème.

8. Rétablissez la valeur d’origine de la macro et cliquez sur Update pour enregistrer les modifications.

9. Confirmez que le problème est résolu et disparaît de la section Problems.

Dépannage de la supervision SNMP

Si vous remarquez que l’icône SNMP dans l’interface web de Zabbix apparaît en ROUGE ou qu’aucune donnée n’est collectée, essayez les étapes suivantes :

1. Vérifiez la connectivité SNMP.

Pour SNMPv2, exécutez la commande suivante depuis votre serveur Zabbix :

snmpwalk -v 2c -c <community_string> <device_IP> .

Cette commande vérifie que l’appareil répond aux requêtes SNMP.

Pour SNMPv3, incluez les identifiants SNMPv3 appropriés :

snmpwalk -v3 -u <your_user> -l authPriv -a MD5 -A <auth_password> -x AES -X <priv_password> <device_IP> .

Cela vérifie que les identifiants SNMPv3 sont corrects et que l’appareil répond de manière sécurisée.

2. Assurez-vous que les fichiers MIB sont installés et activés comme décrit dans les prérequis. Pour vous en assurer, la commande suivante ne doit pas renvoyer d’erreur lorsque vous interrogez un équipement réseau :

snmpwalk -v 2c -c <your_community_string> <device_IP> ifInOctets

Cela doit renvoyer des OID traduits sans erreurs.

3. Confirmez que la version SNMP et les identifiants configurés dans Zabbix correspondent à ceux définis sur votre appareil. Par exemple, vérifiez les paramètres SNMP dans la configuration de l’hôte Zabbix et comparez-les à la configuration de votre appareil. Sur un appareil Cisco, vous pouvez vérifier les paramètres SNMP en exécutant :

show running-config | include snmp

Cela garantit que la chaîne de communauté (pour SNMPv2) ou les détails de l’utilisateur SNMPv3 sont corrects.

4. Vérifiez que SNMP est correctement activé sur votre équipement réseau. Sur un routeur Cisco, connectez-vous à la console et exécutez :

show running-config | include snmp

Cette commande affiche la configuration SNMP active et aide à confirmer que SNMP est correctement configuré.

5. Assurez-vous qu’aucun pare-feu ou problème réseau ne bloque le trafic SNMP (généralement sur le port 161) entre le serveur Zabbix et l’appareil. Vous pouvez tester la connectivité avec :

nc -zv <device_IP> 161

nc -zv vérifie si le port 161 est ouvert et à l’écoute sur l’appareil.

De plus, si vous utilisez UFW sur Ubuntu, vérifiez l’état du pare-feu :

sudo ufw status

Ou, pour iptables :

sudo iptables -L -n

6. Consultez les fichiers journaux du serveur Zabbix pour détecter d’éventuelles erreurs liées à SNMP afin d’aider à identifier le problème :

tail -f /tmp/zabbix_server.log

tail -f vous permet de surveiller les mises à jour du journal en temps réel.

Voir aussi :