📊 Supervision Réseau — SNMP & NetFlow
| Formation | BTS SIO option SISR — IRIS Mediaschool |
|---|---|
| Bloc | B2 — Administration Systèmes & Réseaux |
| Module | M2.3 — Infrastructure Réseau Avancée |
| Prérequis | Réseaux TCP/IP, administration système Linux/Windows, notions de sécurité |
🎯 Objectifs
- Comprendre les objectifs et enjeux de la supervision réseau
- Maîtriser SNMP v1/v2c/v3 : fonctionnement, sécurité, traps
- Connaître la structure MIB et les OID
- Utiliser les outils SNMP en ligne de commande
- Comprendre NetFlow, sFlow et IPFIX pour l'analyse de flux
- Centraliser les logs réseau avec Syslog
- Déployer une supervision avec Zabbix
- Créer des tableaux de bord et configurer des alertes
📖 Objectifs de la supervision réseau
Pourquoi superviser ?
La supervision réseau permet de détecter, diagnostiquer et anticiper les problèmes avant qu'ils n'impactent les utilisateurs. Sans supervision, l'administrateur ne découvre les pannes que lorsque les utilisateurs se plaignent — souvent trop tard.
Les piliers de la supervision
- Disponibilité : l'équipement ou le service est-il joignable ? (ping, port check)
- Performance : quel est le taux d'utilisation CPU, RAM, bande passante, latence ?
- Capacité : l'espace disque, le nombre de sessions ou la bande passante approchent-ils de leurs limites ?
- Sécurité : y a-t-il des connexions suspectes, des erreurs d'authentification répétées ?
- Conformité : les configurations sont-elles conformes aux standards définis ?
📖 SNMP — Simple Network Management Protocol
Fonctionnement
SNMP est le protocole standard pour la gestion et la supervision des équipements réseau (routeurs, switches, serveurs, imprimantes). Il repose sur une architecture agent / manager :
- Agent SNMP : logiciel embarqué sur l'équipement supervisé, expose les données via une MIB
- Manager SNMP (NMS — Network Management Station) : interroge les agents et collecte les données
- MIB (Management Information Base) : base de données hiérarchique décrivant les variables accessibles
Opérations SNMP
| Opération | Direction | Description |
|---|---|---|
GET | Manager → Agent | Récupère la valeur d'un OID spécifique |
GET-NEXT | Manager → Agent | Récupère l'OID suivant dans l'arbre MIB |
GET-BULK | Manager → Agent | Récupère plusieurs OID en une seule requête (SNMPv2+) |
SET | Manager → Agent | Modifie la valeur d'un OID (ex : activer/désactiver une interface) |
TRAP | Agent → Manager | Notification spontanée envoyée par l'agent lors d'un événement |
INFORM | Agent → Manager | Comme un TRAP mais avec accusé de réception (SNMPv2+) |
Versions SNMP
| Version | Authentification | Chiffrement | Sécurité |
|---|---|---|---|
| SNMPv1 | Community string (texte clair) | Non | Très faible |
| SNMPv2c | Community string (texte clair) | Non | Faible (GET-BULK ajouté) |
| SNMPv3 | Nom d'utilisateur + mot de passe (HMAC) | Oui (DES, AES) | Forte |
Les versions v1 et v2c transmettent la community string en clair sur le réseau. Un attaquant peut l'intercepter et accéder à toutes les informations de l'équipement, voire le reconfigurer (community « private » en écriture). Utilisez toujours SNMPv3 en production avec authentification et chiffrement (authPriv).
📖 OID et MIB
Structure hiérarchique
Les OID (Object Identifier) identifient de manière unique chaque variable dans la MIB. Ils sont organisés en arbre hiérarchique :
Arbre OID simplifié :
iso(1) . org(3) . dod(6) . internet(1) . mgmt(2) . mib-2(1)
├── system(1) → informations système (sysName, sysUpTime, sysDescr)
├── interfaces(2) → interfaces réseau (ifIndex, ifDescr, ifSpeed, ifInOctets)
├── ip(4) → statistiques IP
├── icmp(5) → statistiques ICMP
├── tcp(6) → statistiques TCP
└── udp(7) → statistiques UDP
Exemple d'OID :
1.3.6.1.2.1.1.5.0 → sysName (nom de l'équipement)
1.3.6.1.2.1.2.2.1.10.1 → ifInOctets pour l'interface 1 (octets reçus)
MIB constructeur
Chaque fabricant fournit des MIB propriétaires (sous la branche enterprises) qui exposent des variables spécifiques à leurs équipements (température CPU, état des ventilateurs, statistiques PoE, etc.). Ces MIB doivent être importées dans l'outil de supervision.
📖 Outils SNMP en ligne de commande
Installation
# Debian / Ubuntu
sudo apt install snmp snmp-mibs-downloader
# CentOS / RHEL
sudo yum install net-snmp-utils
Commandes essentielles
# Lire un OID spécifique (SNMPv2c)
snmpget -v2c -c public 192.168.1.1 sysName.0
# Parcourir un sous-arbre MIB
snmpwalk -v2c -c public 192.168.1.1 ifDescr
# Lire un OID avec SNMPv3 (authPriv)
snmpget -v3 -u monUser -l authPriv -a SHA -A "motdepasse" \
-x AES -X "clechiffrement" 192.168.1.1 sysUpTime.0
# Modifier une valeur (attention !)
snmpset -v2c -c private 192.168.1.1 sysContact.0 s "admin@iris.fr"
# Requête bulk (SNMPv2c)
snmpbulkwalk -v2c -c public 192.168.1.1 ifTable
Pour afficher les noms MIB au lieu des OID numériques, décommentez la ligne mibs : dans /etc/snmp/snmp.conf et installez le paquet snmp-mibs-downloader. Les OID seront alors traduits en noms lisibles (ex : IF-MIB::ifInOctets.1).
📖 NetFlow, sFlow et IPFIX
Analyse de flux réseau
Contrairement à SNMP qui collecte des compteurs (octets entrants/sortants par interface), les protocoles de flux analysent le contenu du trafic : qui communique avec qui, sur quels ports, avec quel protocole, quel volume de données.
Comparaison des protocoles de flux
| Protocole | Origine | Méthode | Standard |
|---|---|---|---|
| NetFlow | Cisco | Échantillonnage ou capture complète des flux | Propriétaire (v5, v9) |
| sFlow | InMon / multi-vendor | Échantillonnage statistique des paquets | RFC 3176 |
| IPFIX | IETF | Basé sur NetFlow v9, standardisé | RFC 7011 |
Un flux NetFlow
Un flux est défini par un ensemble de 7 champs clés :
- Adresse IP source
- Adresse IP destination
- Port source
- Port destination
- Protocole (TCP, UDP, ICMP)
- Interface d'entrée
- Type of Service (ToS/DSCP)
Collecteurs NetFlow
- ntopng : interface web moderne, analyse en temps réel, open source
- PRTG : solution commerciale tout-en-un (SNMP + NetFlow + Syslog)
- Elasticsearch + Logstash : pipeline d'analyse pour les grands volumes
- nfdump / nfsen : outils CLI et interface web pour l'analyse de flux NetFlow
📖 Syslog — Centralisation des logs
Principe
Syslog est un standard (RFC 5424) pour la transmission de messages de log sur le réseau. Les équipements réseau, serveurs et applications envoient leurs journaux vers un serveur Syslog centralisé, facilitant l'analyse, la corrélation et l'archivage.
Niveaux de sévérité Syslog
| Niveau | Nom | Description |
|---|---|---|
| 0 | Emergency | Système inutilisable |
| 1 | Alert | Action immédiate requise |
| 2 | Critical | Conditions critiques |
| 3 | Error | Conditions d'erreur |
| 4 | Warning | Conditions d'avertissement |
| 5 | Notice | Conditions normales mais significatives |
| 6 | Informational | Messages informatifs |
| 7 | Debug | Messages de débogage |
Serveurs Syslog
- rsyslog : serveur Syslog par défaut sur la plupart des distributions Linux, supporte TCP, TLS, filtrage avancé
- syslog-ng : alternative puissante avec filtrage flexible et sorties multiples (fichier, base de données, AMQP)
- Graylog : plateforme de gestion de logs avec interface web, recherche et tableaux de bord
# Configuration rsyslog — réception des logs réseau
# /etc/rsyslog.conf
# Activer la réception UDP (port 514)
module(load="imudp")
input(type="imudp" port="514")
# Activer la réception TCP (port 514)
module(load="imtcp")
input(type="imtcp" port="514")
# Stocker les logs réseau dans un fichier dédié par IP source
template(name="NetworkLogs" type="string"
string="/var/log/network/%FROMHOST-IP%/%$YEAR%-%$MONTH%-%$DAY%.log")
if $fromhost-ip != '127.0.0.1' then ?NetworkLogs
& stop
📖 Supervision avec Zabbix
Architecture Zabbix
Zabbix est une plateforme de supervision open source capable de surveiller des réseaux, serveurs, applications et services. Son architecture comprend :
- Zabbix Server : moteur central qui collecte, stocke et analyse les données
- Zabbix Agent : installé sur les hôtes supervisés (collecte CPU, RAM, disque, services)
- Zabbix Proxy : relais pour les sites distants (réduit le trafic WAN)
- Base de données : MySQL/PostgreSQL pour stocker l'historique
- Interface web : tableaux de bord, graphiques, cartes, gestion des alertes
SNMP templates dans Zabbix
Zabbix propose des templates pré-configurés pour les équipements réseau courants. Un template contient les items (OID SNMP à collecter), les triggers (seuils d'alerte) et les graphiques associés. Exemple :
Template Net Cisco IOS SNMPv2: supervision complète d'un switch/routeur CiscoTemplate Net Generic Device SNMPv2: template générique pour tout équipement SNMPTemplate OS Linux by Zabbix agent: supervision système via l'agent
Network discovery
Zabbix peut découvrir automatiquement les équipements réseau en scannant des plages d'adresses IP. Il identifie les services disponibles (SNMP, agent Zabbix, ICMP) et ajoute automatiquement les hôtes avec le template approprié.
📖 Cartographie réseau
Outils de cartographie
- Zabbix Maps : cartes interactives intégrées à Zabbix, avec état en temps réel des liens et équipements
- WeatherMap : plugin pour Cacti ou standalone, affiche l'utilisation des liens WAN avec un code couleur
- LibreNMS : plateforme open source avec auto-discovery, cartographie automatique, alertes et dashboards
- Netbox : IPAM (IP Address Management) et DCIM (Datacenter Infrastructure Management), documentation de l'infrastructure
📖 Alertes et escalades
Définir des seuils pertinents
Un trigger d'alerte doit être défini avec un seuil adapté pour éviter les faux positifs (alertes inutiles) et les faux négatifs (problèmes non détectés) :
- Warning : CPU > 80% pendant 5 minutes → notification par email
- High : CPU > 95% pendant 5 minutes → notification par SMS
- Disaster : équipement injoignable (ICMP) pendant 3 minutes → appel téléphonique
Processus d'escalade
Si une alerte n'est pas acquittée dans un délai défini, elle est escaladée au niveau supérieur :
- Niveau 1 (0-15 min) : technicien de support → email + notification
- Niveau 2 (15-30 min) : administrateur réseau → SMS
- Niveau 3 (30+ min) : responsable infrastructure → appel téléphonique
Trop d'alertes non pertinentes (« bruit ») conduit les équipes à les ignorer, y compris les alertes critiques. Ajustez les seuils, utilisez des dépendances (si le routeur est en panne, ne pas alerter pour chaque équipement derrière) et des fenêtres de maintenance pour les interventions planifiées.
📖 Tableaux de bord et reporting
Dashboards de supervision
Un bon tableau de bord offre une vue synthétique de l'état du réseau en un coup d'œil :
- Vue globale : nombre d'équipements UP/DOWN, alertes actives, SLA en cours
- Graphiques de performance : bande passante, latence, CPU/RAM sur les dernières 24h
- Top N : top 10 des interfaces les plus chargées, top 10 des flux réseau
- Carte réseau : topologie avec état en temps réel
Reporting
- Rapports de disponibilité : pourcentage d'uptime par équipement sur une période
- Rapports de capacité : tendances d'utilisation pour anticiper les besoins
- Rapports d'incidents : historique des alertes, MTTR (Mean Time To Repair), MTBF (Mean Time Between Failures)
MTBF (Mean Time Between Failures) : temps moyen entre deux pannes — mesure la fiabilité. MTTR (Mean Time To Repair) : temps moyen de réparation — mesure la réactivité. Disponibilité = MTBF / (MTBF + MTTR). Ces indicateurs alimentent les rapports SLA.
📝 QCM — Testez vos connaissances
- Que signifie SNMP ?
- Qu'est-ce qu'un OID dans SNMP ?
- Qu'est-ce que NetFlow ?
- Quelle version de SNMP est recommandée pour la sécurité ?
- Qu'est-ce que la MIB ?
- Quel outil open source utilise SNMP pour la supervision ?
📝 Afficher les corrections
- Simple Network Management Protocol — SNMP est le protocole standard de supervision des équipements réseau (routeurs, switches, serveurs).
- Un identifiant unique pour chaque variable supervisée — L'OID (Object Identifier) est une suite de chiffres identifiant un paramètre dans la MIB.
- Une technologie d'analyse des flux réseau — NetFlow (Cisco) collecte des métadonnées sur les flux IP (source, destination, ports, volume, durée).
- SNMPv3 — SNMPv3 ajoute l'authentification et le chiffrement, contrairement à v1/v2c qui utilisent des community strings en clair.
- Management Information Base — La MIB est la base de données hiérarchique décrivant tous les objets supervisables d'un équipement.
- Zabbix ou Nagios — Zabbix et Nagios interrogent les équipements via SNMP pour surveiller leur état et performance.
La supervision réseau repose sur trois piliers : SNMP pour la collecte de métriques (toujours en v3 !), NetFlow/sFlow pour l'analyse des flux, et Syslog pour la centralisation des logs. Des outils comme Zabbix, LibreNMS ou Grafana permettent de construire des dashboards, configurer des alertes et générer des rapports. La clé est de superviser intelligemment : seuils pertinents, dépendances, escalades et documentation.
