Tape les commandes et les résultats sans regarder, puis Entrée. Pour les autres questions, réponds avant d’ouvrir : c’est l’effort de rappel qui fait retenir.
Rappel actif
Restitue de mémoire, sans support.
Décode le sigle FCAPS et donne pour chaque domaine un exemple concret d’action de supervision.
Domaine Exemple Fault (pannes) un switch ne répond plus, alerte Configuration inventaire des équipements, mise à jour d’un paramètre Accounting (comptabilité) consommation de bande passante par service, facturation Performance courbe de charge CPU, latence Security contrôle des accès, détection d’activité malveillante Donne les trois composants de l’architecture SNMP, en une phrase chacun, puis la phrase-résumé du cours.
- NMS (manager) : console centrale qui interroge les équipements et traite les alertes.
- Agent : programme sur l’équipement qui mesure son état (CPU, mémoire, trafic, erreurs).
- MIB : base hiérarchique des variables, chacune identifiée par un OID.
« Le NMS supervise, l’agent collecte, la MIB organise. »
Donne les requêtes SNMP du cours, rangées par catégorie, et l’unique type de réponse.
- Lecture :
GetRequest,GetNextRequest,GetBulkRequest(depuis v2c). - Notification :
Trap,InformRequest(de l’agent vers le manager). - Modification :
SetRequest.
Réponse unique :
GetResponse, avec les valeurs ou un code d’erreur (noSuchObject).- Lecture :
Tape la commande
Écris la commande exacte, puis Entrée pour vérifier.
Avant de recharger Nagios, vérifie la cohérence de toute sa configuration.
sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfgUne erreur de syntaxe dans
host.cfgempêcherait sinon Nagios de redémarrer.Recharge Nagios pour qu’il prenne en compte un nouvel hôte.
sudo systemctl reload nagiosLance le script d’installation du TP en définissant
Secret42comme mot de passe denagiosadmin.sudo bash install_nagios.sh Secret42Sans argument, le mot de passe est
nagios(${1:-nagios}dans le script), ce qui est à éviter.Au-delà du cours (outils net-snmp) : lis
sysUpTimesur l’équipement192.168.1.1en SNMPv2c, communautépublic.snmpget -v2c -c public 192.168.1.1 1.3.6.1.2.1.1.3.0snmpwalkavec un OID parent enchaîne lesGetNextpour parcourir toute une branche.
Écris-le
Rédige la requête, la configuration ou le code, puis compare avec la réponse.
Écris le bloc Nagios qui surveille la machine
pc-sami-benali(192.168.1.100), basée sur le modèlelinux-server, déclarée en panne après 3 échecs, vérifiée et notifiée en permanence, avec une alerte toutes les 30 minutes tant que le problème dure.Dans
/usr/local/nagios/etc/servers/host.cfg:define host { use linux-server host_name pc-sami-benali alias PC de Sami BEN ALI address 192.168.1.100 max_check_attempts 3 check_period 24x7 notification_interval 30 notification_period 24x7 }Écris le bloc qui surveille le ping de
pc-sami-benali: alerte à 200 ms ou 10 % de perte, critique à 800 ms ou 50 %.define service { use generic-service host_name pc-sami-benali service_description PING check_command check_ping!200.0,10%!800.0,50% }Format :
!avertissement!critique, chaque seuil endélai,perte%. Lehost_namedoit exister danshost.cfg.
Calcule
Pose le calcul et donne le résultat, puis Entrée pour vérifier.
En suivant l’arbre iso(1), identified-organisation(3), dod(6), internet(1), management(2), mib-2(1) : quel est l’OID de
mib-2?1.3.6.1.2.1. Tous les objets standards (system, interfaces, ip, tcp, udp) sont dessous.Le groupe
systemest le nœud 1 sousmib-2, etsysUpTimeen est l’objet 3. Quel OID interroger pour la valeur (instance.0) desysUpTime?1.3.6.1.2.1.1.3.0: mib-2 (1.3.6.1.2.1), system (.1), sysUpTime (.3), instance scalaire (.0).Avec
check_ping!100.0,20%!500.0,60%, un ping mesure 250 ms de délai moyen et 10 % de perte. Quel état affiche Nagios ?WARNING : 250 ms dépasse le seuil d’alerte (100 ms) sans atteindre le seuil critique (500 ms). La perte de 10 % reste sous les 20 %. Il suffit qu’un des deux critères dépasse un seuil.
Distingue
Deux notions proches : dis ce qui les sépare vraiment.
Polling et trap : qui initie l’échange, sur quel port, et quel est l’avantage de chacun ?
Polling Trap Initiateur le manager ( Get)l’agent Port UDP 161 (sur l’agent) UDP 162 (sur le manager) Avantage données régulières, on voit un équipement qui ne répond plus alerte immédiate, sans attendre le prochain cycle Ils sont complémentaires : une panne entre deux sondages est signalée par le trap, un équipement mort (qui ne peut plus rien envoyer) est détecté par le polling.
SNMPv1, v2c et v3 : qu’est-ce qui sépare v2c de v3, du point de vue sécurité ?
v1 et v2c identifient le manager par une chaîne de communauté envoyée en clair (souvent
public) : quiconque écoute le réseau la lit et peut interroger, voire modifier (Set) l’équipement. v2c ajoute surtout des performances (GetBulk).v3 apporte une vraie authentification et le chiffrement des données.
TrapetInformRequest: les deux notifient un incident. Quelle différence ?Un
Trapest envoyé sans accusé de réception (UDP) : s’il se perd, personne ne le sait. UnInformRequestattend une confirmation du manager et est renvoyé s’il n’en reçoit pas.GetNextRequestetGetBulkRequest: lequel utiliser pour lire une table de 500 interfaces, et pourquoi ?GetBulk(v2c et plus) : il récupère un groupe de variables en une requête. AvecGetNext, il faut un aller-retour par variable : 500 requêtes au lieu de quelques-unes.
Explique pourquoi
Le mécanisme derrière la règle.
Pourquoi SNMP utilise-t-il UDP et pas TCP ?
La supervision envoie beaucoup de petites requêtes indépendantes : UDP n’a ni établissement de connexion ni état à maintenir, donc il coûte peu à l’agent et au réseau. Surtout, un réseau en difficulté (c’est justement quand on supervise) gère mal les connexions TCP, alors qu’un paquet UDP isolé peut encore passer.
Le prix : pas de garantie de livraison (d’où
InformRequestpour les notifications importantes).Pourquoi une supervision proactive ? Reprends l’exemple du data center du cours.
Le data center passe de 50 à 500 serveurs en 3 ans : personne ne peut surveiller 500 machines à la main. Sans supervision automatisée, une panne sur un serveur critique peut rester invisible des heures, jusqu’à ce que les utilisateurs se plaignent. Le but est de détecter avant l’impact.
Dans
contacts.cfg, pourquoi ne faut-il pas renommercontact_name nagiosadmin?Ce nom est lié au compte de connexion à l’interface web (
htpasswd.users). Le renommer casse le lien : l’utilisateur connecté n’est plus reconnu comme ce contact, et perd l’accès aux informations et commandes qui lui sont associées.
Cas pratique
Choisis et justifie avec les critères du cours.
Tu installes un nouveau routeur. Le constructeur a laissé SNMPv2c activé avec la communauté
publicen lecture-écriture. Quels sont les risques, et que fais-tu ?Risques :
publicest connu de tous et circule en clair. En écriture, n’importe qui sur le réseau peut faire desSetRequest: modifier la configuration, couper des interfaces.Actions : passer en SNMPv3 (authentification et chiffrement), à défaut changer la communauté et la mettre en lecture seule, et limiter l’accès SNMP (UDP 161) à l’IP du NMS.
Le nouvel hôte n’apparaît pas dans l’interface Nagios, alors que
host.cfgest correct. Quelles vérifications fais-tu ?nagios -v /usr/local/nagios/etc/nagios.cfg: erreurs de syntaxe ?nagios.cfgcontient biencfg_dir=/usr/local/nagios/etc/servers(non commenté), sinon le dossierservers/n’est pas lu.systemctl reload nagiosa bien été lancé après la modification.- Le fichier est lisible par l’utilisateur
nagios.
Trouve l'erreur
Chaque affirmation contient au moins une faute.
Le cours donne
host (26)sousmib-2, soit l’OID1.3.6.1.2.1.26pour les ressources de l’hôte. Qu’en penses-tu ?Dans la MIB standard (HOST-RESOURCES-MIB, RFC 2790),
hostest le nœud 25 :1.3.6.1.2.1.25(par exemplehrSystemUptime=1.3.6.1.2.1.25.1.1). Le nœud 26 de mib-2 est une autre MIB (snmpDot3MauMgt, pour les interfaces Ethernet). Vérifie sur tes diapositives : si elles disent 26, c’est probablement une coquille.« Les traps arrivent sur le port 161 du manager. »
Les traps vont vers le port 162 du manager. Le 161 est celui de l’agent, qui reçoit les
Getet lesSet.« Nagios, c’est SNMP : il ne peut surveiller que par SNMP. »
Nagios exécute des plugins (
libexec/) :check_ping,check_http… SNMP n’est qu’une possibilité parmi d’autres (check_snmp, qui fait unGETsur un OID). Le service PING du TP n’utilise pas du tout SNMP.
Classe
Range chaque élément et explique les cas limites.
Pour chaque besoin, quel outil du comparatif choisis-tu ? (a) petite équipe, open source, alertes e-mail, mise en place rapide ; (b) graphiques de trafic SNMP sur le long terme ; (c) stack cloud-native déjà sous Prometheus ; (d) environnement 100 % Windows, moins de 100 capteurs, pas de budget.
(a) Nagios (configuration légère, alertes natives) ; (b) Cacti (SNMP natif, graphes, alertes limitées) ; (c) Prometheus +
snmp_exporteret Alertmanager ; (d) PRTG gratuit (Windows uniquement, 100 capteurs max).Range chaque action dans son domaine FCAPS : facturer un service à l’usage ; repérer qu’un lien est saturé chaque soir ; détecter qu’une interface est tombée ; changer la communauté SNMP par défaut ; recenser le firmware de chaque switch.
Accounting ; Performance ; Fault ; Security ; Configuration.
Et si...
Prévois la conséquence.
Et si un switch tombe complètement en panne électrique ? Lequel des deux mécanismes, trap ou polling, le détecte ?
Le polling : un équipement éteint ne peut plus rien envoyer, donc pas de trap. C’est l’absence de réponse aux
Get(aprèsmax_check_attemptséchecs, dans Nagios) qui révèle la panne.