Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/docs...

48
Étude et mise en place d'une solution de supervision basée sur F.A.N. pour la préfecture des bouches du Rhône Teddy Perrin < [email protected] > V. 11-1214

Upload: trinhtruc

Post on 14-Sep-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Étude et mise en place d'une solution de supervision basée sur F.A.N. pour la préfecture des bouches du Rhône

Teddy Perrin < [email protected] > V. 11-1214

Page 2: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Table des matières

Présentation et objectifs....................................................................................................................1

1. Étude de la doc existante...............................................................................................................21.1. L'existant...............................................................................................................................2

1.1.3. Documentation................................................................................................................2Technique..................................................................................................................................................... 2

1.2. Solution actuelle.....................................................................................................................31.2.1. État des lieux..................................................................................................................31.2.2. Analyse de la solution en place........................................................................................3

2. Besoins.........................................................................................................................................42.1. Contraintes.............................................................................................................................42.2. Serveur..................................................................................................................................42.3. M.I.B......................................................................................................................................52.4. Documentation.......................................................................................................................6

3. Mise en place du serveur de supervision.........................................................................................73.1. Installation et configuration de la distribution FAN...................................................................7

3.1.1. Installation du système d'exploitation..............................................................................73.1.2. Configuration du réseau..................................................................................................9

Interface réseau........................................................................................................................................... 9Les routes..................................................................................................................................................... 9Le DNS......................................................................................................................................................... 9Le nom de machine.................................................................................................................................... 10Sauvegarde et restauration de la config réseau..........................................................................................10MàJ et nouveaux paquets : proxy................................................................................................................10

3.2. Configuration du système d'exploitation................................................................................113.3. Configuration de Nagios et Centreon.....................................................................................12

3.3.1. Configuration de Nagios.................................................................................................12Les fichiers de configurations principaux....................................................................................................12Exemples de fichiers de configuration :......................................................................................................13Test de la configuration............................................................................................................................... 16

3.3.2. Configuration de Centreon.............................................................................................17Les fichiers de configuration....................................................................................................................... 17Modèles...................................................................................................................................................... 17Hôtes.......................................................................................................................................................... 19Groupe d'hôte............................................................................................................................................. 20Services...................................................................................................................................................... 20Commande................................................................................................................................................. 21Utilisateurs / Contacts................................................................................................................................ 21Périodes...................................................................................................................................................... 22Notifications............................................................................................................................................... 22Bases de données...................................................................................................................................... 23MIBs........................................................................................................................................................... 23Status Map................................................................................................................................................. 24

4. La supervision du réseau..............................................................................................................254.1. Configurations supplémentaires............................................................................................25

Clients Microsoft Windows.......................................................................................................................... 254.2. Visualisation.........................................................................................................................27

4.2.1. Les hôtes et les services................................................................................................274.2.2. Les graphiques..............................................................................................................28

Page 3: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Personnalisation des courbes..................................................................................................................... 284.3. Compte utilisateur en lecture seul.........................................................................................29

4.3.1. Création du compte.......................................................................................................294.3.2. Gestion des ACL.............................................................................................................30

Création du groupe d'accès........................................................................................................................ 30Paramétrage "lecture seule"....................................................................................................................... 30Paramétrage de la visualisation du contenu...............................................................................................32

5. Alertes automatiques...................................................................................................................335.1. Alertes automatiques par mail...............................................................................................33

Configuration de Postfix.............................................................................................................................. 335.2. Alertes automatiques par SMS...............................................................................................34

Méthode classique...................................................................................................................................... 34Avec smstool.............................................................................................................................................. 35

6. Sauvegardes................................................................................................................................376.1. Sauvegarde des configurations et données............................................................................386.2. Restaurations des configurations et données.........................................................................39

Conclusion.......................................................................................................................................41Technique....................................................................................................................................41Personnel....................................................................................................................................41

FAQ.................................................................................................................................................42

Glossaire.........................................................................................................................................43

Crédits............................................................................................................................................44

Remerciements................................................................................................................................45

Page 4: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. Présentation et objectifs

Présentation et objectifs

La SRDSIC (Service Régional et Départemental du Système d'Information et de Communication) se trouve dans l'hôtel préfectoral, à Marseille.

Le préfet, représentant du Gouvernement, dirige les services de l’État dans le département, à l’exception de l'inspection académique et de la direction départementale des finances publiques qui ne relèvent que partiellement de son autorité.Il reste seul chargé de l’ordre public, au sens large, du contrôle administratif des collectivités et de leurs établissements, et de l’exercice des missions régaliennes de l'État.

Les principaux services fournis par la préfecture sont :La représentation de l’État et la communicationLa sécurité des personnes et des biensLe service au public et la délivrance des titresLe respect de la légalité et de l’État de droitL'intégration sociale et la lutte contre les exclusionsL'administration du territoire et le développement économique

La préfecture de Marseille est épaulée localement par 3 sous-préfectures situées à Istres, Arles et Aix-en-Provence.

Le SRDSIC est subdivisé en plusieurs services dont M. Thierry Lepage est le responsable.Pour ma part, mon stage est effectué sous la bienveillance de Lionel Mourre du service Administration Réseau et Systèmes informatiques.

Mon stage portera sur la mise en place d'une solution de supervision basée sur F.A.N. (Fully Automated Nagios), solution qui était déjà en production mais dont le service a du être interrompu suite à une panne matériel.Je me baserai donc sur une documentation existante afin de remettre en œuvre une solution similaire et présentant les mêmes caractéristiques.L'accent sera mis sur les graphes d'utilisation de bandes passantes et il devra être rédigé les documentations technique, administrateur et utilisateur.Il faudra également anticiper l'intégration future des [ DDCS, DDPP, DDSP et DDTM ] au sein du même "réseau".Il peut également être tenté de récupérer les anciennes bases de données et de les intégrer dans la nouvelle installation.

V. 11-1214 T. Perrin Page 1 / 45

Page 5: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 1. Étude de la doc existante

1. Étude de la doc existante

1.1. L'existant

1.1.3. Documentation

Technique

Une documentation est à ma disposition, décrivant la réflexion qui a conduit au choix de la distribution F.A.N., l'installation et les configurations nécessaires.Cette documentation a été réalisé par Tristan Laisné en Juin 2009.

Voici la structure de cette documentation :

A. Étude et test des solutions de supervision de réseau

B. Installation et configuration du serveur

1. Installation et configuration générale2. Installation et configuration du système de notification par mail3. Installation et configuration du système de notification par SMS

C. Mise en place de la supervision

1.Ajouts des hôtes 2.Ajouts des services à surveiller

V. 11-1214 T. Perrin Page 2 / 45

Page 6: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 1.2. Solution actuelle

1.2. Solution actuelle

1.2.1. État des lieux

La solution basée sur F.A.N. était installée sur une tour PC .Malheureusement suite à une série d'incidents électriques le matériel a fini par lâcher et n'a pas été remplacé.Cette solution n'est donc plus.Toutefois une autre installation, de Nagios seul, existe. Sur un réseau séparé.Bases de données : Disques durs HS → Pas de redondance.

1.2.2. Analyse de la solution en place

La solution n'étant plus en production, nous étudierons le document technique ayant servi d'étude avant installation.

Le choix s'est donc porté sur la distribution FAN (Fully Automated Nagios) qui est une distribution GNU/Linux CentOS avec Nagios pré-installé, ainsi que les plu-gins les plus utilisés.

Sont également pré-installés Nagvis, Centreon et NaReTo :Nagvis permet de créé des cartes personnalisées du réseau.Centreon fournit à Nagios une interface web, et donc graphique, facilitant sa configuration et son utilisation.NaReTo permet une vue global du réseau (état du réseau, suivi des alertes et graphiques des disponibilités).

En plus de ses fonctionnalités graphiques et statistiques, la distribution FAN offre une grande simplicité d'installation et de configuration.

Enfin, le grand nombre de plu-gins permet de faire évoluer son système facilement.

V. 11-1214 T. Perrin Page 3 / 45

Page 7: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 2. Besoins

2. Besoins

Éléments à superviser : nom et IPServices à surveiller : services critiques, associés aux élémentsDestinataires des alertes (mails et SMS) : Établir une politique de remonté d'alarme cohérente (contact, horaires, groupe de contacts, etc)Utilisateurs de la plate-formeSchéma réseau représentant les dépendances entre éléments.

2.1. Contraintes

Réutilisation de F.A.N.Même configuration des alertes (mails ET SMS)Visualisation graphique + statistiques.

L'installation, configuration et administration de F.A.N. nécessitent des compétences dans divers domaines, tel que :l'administration d'un serveur web de type apache2les bases de données MySQLl'architecture réseau (routeurs, switches, périphériques finaux)le serveur de messagerie Postfixle service/protocole SNMP

Anticiper la possible intégration de plusieurs autres réseaux à court terme (± 1 an).

2.2. Serveur

Physique → un PC.

Une interface graphique était présente sur la version précédente de la solution de supervision, il s'agissait de XFCE qui avait été choisit pour sa légèreté (basse consommation CPU et mémoire).Nous l'installerons donc sans pour autant l'activer au démarrage du serveur. L'administrateur aura donc le choix de son utilisation.

Il est envisageable de placer les bases de données sur un disque séparé du système.

V. 11-1214 T. Perrin Page 4 / 45

Page 8: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 2.3. M.I.B.

2.3. M.I.B.

Les MIBs (Management Information Base) sont des bases de données utilisées pour la gestion des réseaux, manipulables par des protocoles tels que SNMP. Ces informations sont structurées sur une entité réseau tel qu'un routeur, un switch ou un serveur.Les MIBs ont une structure hiérarchique. Chaque information est un "object identifier" (OID) ; un suite de nombres séparés par des points, qui identifient cet OID de manière unique, et un nom indiqué dans le document, qui décrit ainsi la MIB.

Par exemple, 1.3.6.1.2.1.2.2.1.2 est l'object identifier ifDescr qui est la chaîne de caractères décrivant une interface réseau (comme eth0 sur GNU/Linux ou Ethernet0 sur un routeur Cisco).

Une des MIB les plus connues est MIB-II, décrite dans le RFC 1213, et qui est mise en œuvre dans quasiment tous les équipements TCP/IP.Elle compte 10 groupes, "system", "interfaces" (dont fait partie ifDescr), "Address Translation", "IP", "ICMP", "TCP", "UDP", "EGP", "transmission" et "SNMP".

Les MIB sont décrites en utilisant ASN.1. Par exemple, ifDescr est décrite par :

ifDescr OBJECT-TYPESYNTAX DisplayString (SIZE (0..255))ACCESS read-onlySTATUS mandatoryDESCRIPTION

"A textual string containing information about theinterface. This string should include the name ofthe manufacturer, the product name and the version

of the hardware interface."::= { ifEntry 2 }

V. 11-1214 T. Perrin Page 5 / 45

Page 9: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 2.3. M.I.B.

Pour trouver les MIB correspondant au matériel qu'on souhaite superviser,on peut utiliser le moteur de recherche dédié disponible à l'adresse suivante (payant) :http://www.mibdepot.com/cgi-bin/xsearch_index3.cgiOn peut aussi tenter de les récupérer sur les sites des constructeurs.Dans le cas présent, il nous faudra des MIBs Alcatel et 3com.

Avant d'importer une MIB, il faut s'assurer que le fabricant existe dans la base, sinon le créer.

Le projet Net-SNMP gère une grande quantité de matériel :http://www.net-snmp.org et http://www.net-snmp.org/wiki/

2.4. Documentation

Les documentations technique et administrateur seront des versions épurées de ce rapport de stage, accompagnées d'une FAQ et d'un glossaire.

La documentation utilisateur ne traitera que de la partie "utilisation", associée à une FAQ ainsi qu'un glossaire.La documentation administrateur contiendra les identifiants, mots de passe, nom d'hôte et adresses IP des matériels supervisés. Cette documentation administrateur sera à l'usage exclusive du bureau Administration Réseaux et Systèmes Informatiques

V. 11-1214 T. Perrin Page 6 / 45

Page 10: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3. Mise en place du serveur de supervision

3. Mise en place du serveur de supervision

Les mots de passe, noms de périphériques et adresses qui suivent ne sont utilisés qu'à des fins de tests et seront bien sûr modifiés lors de la mise en production.Les valeurs réelles ne figureront alors que sur le document administrateur qui ne sera fournit qu'à Messieurs Thierry Lepage – chef des services SIC , Lionel Mourre et Jean-Claude Weingaertner – administrateurs réseau et systèmes informatiques.La mise en place s'effectue au préalable sur un serveur de test sous Virtualbox.Tenir compte du temps nécessaires à la mise en production effective :

Mise en place et premiers résultats : 1 semaine.Configuration avancé et stabilisé + pérennisation : plusieurs semaines

3.1. Installation et configuration de la distribution FAN

3.1.1. Installation du système d'exploitation

Après avoir récupéré la version qui nous intéresse à l'adresse http://fannagioscd.sourceforge.net, on commence l'installation.L'application permettant l'installation est en mode semi-graphique et utilise une interface ncurse.Pour passer des champs de choix à ceux de validation/annulation, on peut utiliser la touche <TAB>.

Installation par disque USB, CD/DVD ou PXE.A la fenêtre d'accueil il suffit d'appuyer sur la touche <Entrée> - ou <Enter> - (--install or upgrade in graphical mode).

On choisit ensuite la langue : French et le type de clavier : fr-latin1.

V. 11-1214 T. Perrin Page 7 / 45

Page 11: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.1.1. Installation du système d'exploitation

Attention !Pour le partitionnement des disques, on choisira de supprimer TOUTES les partitions existantes et d'utiliser celui par défaut.Il convient donc d'insister sur le fait que toutes les données présentes sur le(s) disque(s) seront supprimées et perdues.

Le reste de l'installation se fait tout seul, il vous sera seulement demandé d'entrer un mot de passe pour root, puis de le confirmer en le tapant une seconde fois.Pour notre test nous choisissons Provence130.

Après redémarrage du système on se connecte en CLI avec le compte root et le mot de passe définit précédemment.Important :Après avoir taper "root", puis <Entrée>, rien ne s'affichera lorsque vous rentrerez le mot de passe.

C'est un fonctionnement tout à fait normal sur les machines GNU/Linux-BSD.Après avoir taper le mot de passe, validez, vous êtes connecté. V. 11-1214 T. Perrin Page 8 / 45

Page 12: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.1.2. Configuration du réseau

3.1.2. Configuration du réseau

Au lancement il nous est proposé de configurer l'authentification, le réseau, le DNS et …, mais il est préférable de le faire comme proposé dans le reste de la documentation.

Interface réseauL'utilitaire de configuration du réseau peut également être lancé avec la commande system-config-network ou encore :

~# nano /etc/sysconfig/networking/devices/ifcfg-eth0

DEVICE=eth0ONBOOT=yesHWADDR=01:23:45:AB:CD:EFTYPE=EthernetNETMASK=255.255.252.0IPADDR=10.13.vv.zzzGATEWAY=10.13.xx.yyy

On appuie sur les touches <Ctrl> + <x> pour quitter puis <o> pour valider l'enregistrement des modifications.Il est bien sûr possible d'utiliser Emacs, Vi ou Vim pour l'édition de fichiers.Se reporter aux documentations des applications et/ou aux pages de man.

Les routesPour que les routes soient prises en compte au démarrage il faut les inscrire dans un fichier texte :

~# nano /etc/sysconfig/network-scripts/route-eth0

GATEWAY0=10.13.xx.yyyNETMASK0=255.255.252.0ADDRESS0=10.13.vv.zzz

Le DNSOn édite ensuite le fichier resolv.conf pour lui indiquer l'adresse du DNS principal et des DNS secondaires :

~# nano /etc/resol.conf

nameserver 10.113.xx.yyynameserver 10.221.vv.wwwnameserver 10.235.uu.zzz

V. 11-1214 T. Perrin Page 9 / 45

Page 13: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.1.2. Configuration du réseau

Le nom de machinePar commodité et souci de clarté nous allons renommer la machine faisant office de serveur Nagios (Variable HOSTNAME) :

~# nano /etc/sysconfig/network

NETWORKING=yesNETWORKING_IPV6=noHOSTNAME=PREF13-nagios # ou PREF13-nagios est le nouveau nom

Sauvegarde et restauration de la config réseauSauvegarde :

~# system-config-network-cmd -e > ~/network-config

Restauration :

~# system-config-network-cmd -i -c -f ~/network-config

avec -i : importation des données, -c : suppression de la configuration existante avant import et -f : spécifie le fichier à importer.

MàJ et nouveaux paquets : proxyLes mises à jour et l'installation de nouveaux paquets nécessite l'ajout de l'adresse de proxy dans le fichier de configuration de yum.On le rajoute donc en fin de fichier, juste avant les dépôts supplémentaires :

~# nano /etc/yum.conf

...installonly_limit = 5

# Configuration proxyproxy=http://10.253.xx.yyy:pppp/proxy_username=le_loginproxy_password=le_mot-de-passe

# PUT YOUR REPOS HERE OR IN separate files named file.repo# in /etc/yum.repos.d...

V. 11-1214 T. Perrin Page 10 / 45

Page 14: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.2. Configuration du système d'exploitation

3.2. Configuration du système d'exploitation

Si pour une obscure raison, la nécessité d'avoir une interface graphique sur le serveur se fait trop pressante, voici un remède :

~# yum groupinstall "Xfce" "X Window System"~# startx~# system-config-display # pour configurer l’affichage

ou bien encore :

~# yum --exclude=nautilus-sendto groupinstall "GNOME Desktop Environment" "X Window System"~# startx~# system-config-display # pour configurer l’affichage

V. 11-1214 T. Perrin Page 11 / 45

Page 15: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3. Configuration de Nagios et Centreon

3.3. Configuration de Nagios et Centreon

3.3.1. Configuration de Nagios

La configuration de Nagios se fait au travers de Centreon, il n'est donc normalement pas nécessaire d'éditer directement les fichiers de configuration.Néanmoins, connaître leur structure aide toujours en cas de problème.

Les fichiers de configurations principaux/etc/nagios Répertoire contenant les fichiers de configuration.

cgi.cfg : fichier de configuration des CGI.ndomod.cfg : fichier de configuration du broker Ndo utilisé dans le nagios.cfg.resource.cfg : possibilité de définir des informations sensibles (login, passwd…)command-plugins.cfg : définition des commandes "check".nagios.cfg : fichier de configuration principal de Nagios.send_nsca.cfg : fichier de configuration de nsca.nrpe.cfg : fichier de configuration du serveur nrpe.htpasswd.users : stocke les utilisateurs et mot de passe (en crypté) ayant accès à Nagios. ndo2db.cfg : fichier de configuration de démon ndo2db.nsca.cfg : fichier de configuration du serveur nsca.

/etc/nagios/objects localhost.cfg : définition de l’host "localhost" (i.e de Nagios).commands.cfg : définition des commandes (commandes de "check" et de notifications).contacts.cfg : définition des contacts.printer.cfg : définition des imprimantes.switch.cfg : définition des switches.templates.cfg : définition des modèles.timeperidos.cg : définition des périodes.

/usr/lib/nagios Répertoire contenant les fichiers CGI et plu-gins Nagios./usr/share/nagios Répertoire contenant les fichiers de l'interface web.

V. 11-1214 T. Perrin Page 12 / 45

Page 16: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3.1. Configuration de Nagios

Exemples de fichiers de configuration :Attention, les commentaires doivent être précédés d'un point-virgule ";" à l'intérieur des accolades "{" et "}".

serveurs_pref13.cfg

#déclaration d’un serveurdefine host {

host_name SRV01 ; le nom de l’élémentalias Serveur Pref13 01 ; un aliasaddress 10.13.yy.xxx ; adresse IPuse generic-host ; le type d’élément

}

#déclaration d’un serveurdefine host {

host_name Serveur-Faxalias Serveur de Faxaddress 10.13.yy.xxxuse generic-host

}

routeurs_ pref13.cfg (switches_pref13.cfg et imprimantes_pref13.cfg ont le même type de configuration)

#déclaration d’un routeurdefine host {

host_name ASA-5505alias Routeur Cisco ASA-5505address 10.13.yy.xxxuse generic-host

}

#déclaration d’un routeurdefine host {

host_name googlealias Moteur de recherche bien pratique address www.google.comuse generic-hostparents ASA-5505 ; élément dont il dépend géographiquement (status_map)

}

hostgroups.cfg

#Tous les élémentsdefine hostgroup {

hostgroup_name allalias Tous les élémentsmembers *

}

# déclaration d’un groupedefine hostgroup {

hostgroup_name Serveurs GNU/LINUX ; nom du groupealias Serveurs GNU/LINUX Axians; aliasmembers nagios ; membres du groupe, correspond au host_name

}

V. 11-1214 T. Perrin Page 13 / 45

Page 17: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N.

# déclaration d’un groupedefine hostgroup {

hostgroup_name Serveurs WINDOWSalias Serveurs WINDOWS Axiansmembers SRV01, Serveur-Fax

}

services.cfg

define service{use generic-service ; template utiliséhost_name nagios ; nom de l'hôte concernéservice_description Nombre Utilisateur ; nom du servicecheck_command check_users!20!50 ; commande utilisée (dans commands.cfg)

}

define service{use generic-servicehostgroup_name srv-gnu/linux ; nom du groupe concernéservice_description Total Processuscheck_command check_procs!400!800

}

define service{use generic-servicehost_name nagiosservice_description Charge courantecheck_command check_load!5.0!4.0!3.0!10.0!6.0!4.0

}

generic-host.cfg

define host{name generic-host ; Nom de ce modèle d'hôtenotifications_enabled 1 ; Notifications d'hôteevent_handler_enabled 1 ; Gestionnaire d'événementsflap_detection_enabled 1 ; Détection des variationsfailure_prediction_enabled 1 ; Prédiction de défaillanceprocess_perf_data 1 ; Données de performance des processusretain_status_information 1 ; Conservation des informations d'état au

redémarrageretain_nonstatus_information 1 ; Conservation des informations d'état non-

inscrites au redémarragecheck_command check-host-alive ; commande de test par défaut (ping)max_check_attempts 10notification_interval 0notification_period 24x7notification_options d,u,rcontact_groups adminsregister 0

}

V. 11-1214 T. Perrin Page 14 / 45

Page 18: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N.

generic-service.cfg

define service{name generic-service ; Nom de ce modèle de serviceactive_checks_enabled 1 ; Contrôle des services actifs activépassive_checks_enabled 1 ; Contrôle des services passifs activé/acceptéparallelize_check 1 ; Le contrôle des services actifs devrait être

"parallélisés" (en désactivant tout ce qui peut provoquer des problèmes majeurs de performance)

obsess_over_service 1 ; On devrait être obsédé par ce service(activé si nécessaire)

check_freshness 0 ; Par défaut, on NE VERIFIE PAS la "fraîcheur" des services

notifications_enabled 1 ; Notifications des servicesevent_handler_enabled 1 ; Gestionnaire d'événements des servicesflap_detection_enabled 1 ; Détection des variationsfailure_prediction_enabled 1 ; Prédiction de défaillancesprocess_perf_data 1 ; Données de performance des processusretain_status_information 1 ; Conservation des informations d'état au

redémarrageretain_nonstatus_information 1 ; Conservation des informations d'état non-

inscrites au redémarragenotification_interval 0 ; Par défaut envois de notifications seulement au

changement d'étatis_volatile 0check_period 24x7normal_check_interval 5retry_check_interval 1max_check_attempts 4notification_period 24x7notification_options w,u,c,rcontact_groups adminsregister 0

}

extinfo.cfg

define hostextinfo{hostgroup_name Serveurs GNU/LINUXnotes Serveurs GNU/LINUXicon_image base/debian.pngicon_image_alt Debian GNU/Linuxvrml_image debian.pngstatusmap_image base/debian.gd2

}

time-period.cfg

define timeperiod{timeperiod_name workhoursalias Standard Work Hoursmonday 09:00-17:00tuesday 09:00-17:00wednesday 09:00-17:00thursday 09:00-17:00friday 09:00-17:00

}

V. 11-1214 T. Perrin Page 15 / 45

Page 19: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N.

dependances.cfg

define hostdependency {host_name ASA-5505 dependent_host_name googlenotification_failure_criteria d ; d = down

}

Donc si ASA-5505 est down, aucune notifications ne sera envoyées concernant l'élément google (qui est son "fils").

Test de la configurationIl est utile et fortement recommandé de tester la nouvelle configuration de Nagios avant de l'appliquer :

~# nagios -v /etc/nagios/nagios.cfg

V. 11-1214 T. Perrin Page 16 / 45

Page 20: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3.2. Configuration de Centreon

3.3.2. Configuration de Centreon

Après l'installation de F.A.N., Centreon est immédiatement opérationnel. Il se configure au travers de son interface web.Passer l'interface en français :cf à l'adresse suivante : http://en.doc.centreon.com/Setup:Language/fr Nécessite que F.A.N. puisse se connecter au réseau (proxy?).

Les fichiers de configurationLes fichiers utiles de Centreon se trouvent dans les sous-dossiers du répertoire /usr/share/centreon.Toutefois nous ne les modifieront pas directement, l'interface web de Centreon est en effet conçue à cette intention.Tout se passe dans l'onglet maître "Configuration".Nous verrons la partie "Administration" ultérieurement.

ModèlesLes "template" sont des modèles type qui serviront de base pour les configurations des différents hôtes, services, etc, tout du moins dans un premier temps.Les modèles d'hôtes et de services disponibles par défaut :

V. 11-1214 T. Perrin Page 17 / 45

Page 21: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3.2. Configuration de Centreon

Création d'un modèle d'hôteConfiguration > Hosts > Templates > Add

RelationsPermet d'associer un ou plusieurs services au modèle. Il suffit de faire passer les services souhaités dans la colonne de droite.

Data ProcessingPermet de modifier la configuration relative aux données des processus.

Host Extended InfosPermet d'écrire un commentaire sur le modèle et de modifier les options avancés (icône et place sur la carte nagios par exemple).

V. 11-1214 T. Perrin Page 18 / 45

Page 22: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3.2. Configuration de Centreon

Création d'un modèle de serviceConfiguration > Services > Template > Add

La configuration générale est la même que pour les modèles d'hôtes sauf pour :

Check Command : choisir la commande lié au service

Args : placer les arguments en fonction de la commande

HôtesConfiguration > Hosts > Add

Pour modifier un hôte, il suffit de le sélectionner en cliquant dessus puis de modifier les champs voulus.Pour créer un nouvel hôte on peut soit partir de zéro en remplissant les champs manuellement, soit partir d'un modèle, ou encore en dupliquant un hôte existant.La duplication est un copié/coller de la configuration dans laquelle il suffit bien souvent de ne modifier que le nom et l'adresse IP :

Onglet " Configuration de l'hôte " Les champs principaux et nécessaires sont :Host Name (Nom de l'hôte), Alias, IP Adresse / DNS, Monitored from (Surveillé depuis) et Host Templates (Modèle d'hôte).Un hôte peut avoir plusieurs modèles, toutefois leur ordre est primordial, le premier de la liste est prioritaire sur les suivants.

Onglet " Relations " Sélectionner un groupe et éventuellement un(des) parent(s) et/ou enfant(s)Hôtes parents et hôtes enfants permettent de créer une arborescence, ainsi pour un switch définit comme "père", tous les serveurs fils ne seront plus supervisés si il tombe.

V. 11-1214 T. Perrin Page 19 / 45

Page 23: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3.2. Configuration de Centreon

IMPORTANT

Lorsqu'on sauvegarde les modifications effectuées dans Centreon, celles-ci ne sont présentent que dans la configuration de Centreon.Centreon ne fait pas de supervision, cette tâche est dévolue à Nagios, il convient donc d'exporter la configuration sur le serveur nagios pour que les modifications soient prises en compte :

Ne pas oublier de cocher "Move Export Files" pour que les fichiers soient déplacés physiquement dans l'arborescence de Nagios et choisir la méthode pour que Nagios prenne en compte la configuration (en général Restart est préféré à Reload).

Groupe d'hôteConfiguration > Hosts > Hosts Group

On peut grouper les hôtes comme on le souhaite (par OS, type de matériel, marque, localisation, …).Il suffit de compléter la page en spécifiant le nom du groupe, son alias et ses membres.Les groupes ne sont pas figés et peuvent donc être modifiés ultérieurement

ServicesConfiguration > Services > Add

Le principe est le même que pour les hôtes; on sélectionne un modèle ou on remplit les champs manuellement.Dans l'onglet "Relations", sélectionner les hôtes ou groupes d'hôtes liés au service.Les services peuvent être classés par hôte ou groupe d'hôtes.

V. 11-1214 T. Perrin Page 20 / 45

Page 24: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3.2. Configuration de Centreon

CommandeConfiguration > Commandes > Checks

Sur cette page s'affiche toutes les commandes déjà connues et modifiables. Il suffit de sélectionner la (ou les) commande(s) souhaitée(s) et de cliquer sur "ajouter".Nom de la commande :Ligne de commande :Exemple d'arguments :Type de commande :Modèle de graphique :

Utilisateurs / ContactsConfiguration > Users > Contacts/Users > Add

Cette section permet également de gérer les plages horaires et commandes de notification (mais pas les notifications elles-même).Pour ajouter un utilisateur, il convient de remplir les champs suivant :Full Name (Nom complet), Alias/Login, Email, Pager, Linked to Contact Groups (groupe de contact parent).

Groupe de contactsConfiguration > Users > Contact Groups > Add

Dans "Général information" choisir un nom pour le groupe ainsi qu'un alias. Ensuite choisir les relations voulues, puis mettre un commentaire si besoin.

V. 11-1214 T. Perrin Page 21 / 45

Page 25: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3.2. Configuration de Centreon

PériodesConfiguration > Users > Time Periods > Add

Les plages horaires d'une même journée sont délimitées par une virgule ",".Une plage horaire doit toujours s'écrire sous la forme HH:MM-HH:MM sur 24 heures.Pour exclure une journée entière il suffit de ne pas lui définir de période :

NotificationsConfiguration > Notifications > Escalations > Add

Avec la configuration ci-dessus, la deuxième notification sera une notification par SMS.Les notifications prendront fin après la 3ème (1 par mail et 2 par SMS), avec un délai de 30 minutes entre 2 SMS.Et ces notifications seront envoyées aux contacts membres des groupes admin_sms et admin_mail.

V. 11-1214 T. Perrin Page 22 / 45

Page 26: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3.2. Configuration de Centreon

Bases de donnéesAdministration > Databases

Cette partie nous permet simplement de surveiller la taille de la base de données NDO.Cela offre la possibilité de réagir lorsque la base devient trop imposante (réduisant donc les performances).

MIBs

Les MIBs récupérées sur les sites des fabricants (par exemple) sont à placer dans le répertoire des MIBs, généralement il s'agit du répertoire /usr/share/snmp/mibs/ (et /usr/local/share/snmp/mibs/ sur les versions plus anciennes).

Il faut ensuite ajouter le nom du fabricant dans la liste des constructeur :Configuration > Services > Manufacturer > Add

Puis il faut faire l'import de la MIB voulu sous Centreon afin de la "traduire".Configuration > Services > MIBs et choisir le fabricant ainsi que le fichier correspondant à la MIB.

V. 11-1214 T. Perrin Page 23 / 45

Page 27: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 3.3.2. Configuration de Centreon

Status Map

Le module "Status Map" est identique à celui installé par défaut dans Nagios.Il permet d’avoir une vue graphique du réseau, prenant compte des différents niveaux de l’architecture

Pour Centreon ≥ 2.2 On télécharge les sources et on décompresse l'archive :http://denis.herve.free.fr/trsfrt/

# wget http://denis.herve.free.fr/trsfrt/statusmap-2.5.zip# unzip NagiosStatusMap-2.5.zip# cp -r statusmap/ /usr/share/centreon/www/modules/

On se rend ensuite dans notre interface web, onglet Administration, puis Modules.Sur la ligne correspondant au nom "statusmap", on clique sur le nom du module (ici "statusmap") pour l'installer, puis sur "Install module".

On peut maintenant afficher la "Status Map" en se rendant sur l'onglet Monitoring, puis m_nagios_map.

Pour Centreon < 2.1 :

On télécharger les sources, on décompresse l'archive et on déplace le contenu de ce dossier vers le répertoire des modules de Centreon :

# wget http://download.centreon.com/index.php?id=60# tar zxvf NagiosStatusMap-1.1.tar.gz# cp -r statusmap/ /usr/share/centreon/www/modules/

On se rend ensuite dans notre interface web, onglet Administration, puis Modules.Sur la ligne correspondant au nom "statusmap", on clique sur le nom du module (ici "statusmap") pour l'installer, puis sur "Install module".

On peut maintenant afficher la "Status Map" en se rendant sur l'onglet Monitoring, puis m_nagios_map.

V. 11-1214 T. Perrin Page 24 / 45

Page 28: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 4. La supervision du réseau

4. La supervision du réseau

Les identifiant et mot de passe de connexion sont par défaut nagiosadmin et nagiosadmin.Il faut bien sûr les changer avant la mise en production.

4.1. Configurations supplémentaires

Clients Microsoft Windows

Windows étant peu bavard en ce qui concerne la remontée d'alerte, il est nécessaire d'installer un agent sur ces clients.NSClient++ sera notre agent pour cette mission.

On peut le télécharger à cette adresse : http://nsclient.org/nscp/downloadsOn décompresse, puis :

C:\...> Cd \NSClient++-<numéro_de_version>C:\...> nsclient++/install

Ensuite la documentation fourni avec NSClient++ recommande de modifier les options du service windows comme suit :

On vérifie si le service a les permissions nécessaires pour intéragir avec le bureau :Panneau de configuration → Outils d'administration → Services → NSClientpp (Nagios)Clique droit sur le service, puis dans l'onglet "Connexion" cocher la case "Autoriser le service à interagir avec le bureau".Bouton "Appliquer" puis "OK"

Maintenant il est nécessaire de modifier le fichier C:\NSClient++\NSC.INI(ou C:\Program Files[ (x86)]\NSClient++\NCS.ini suivant la méthode d'installation).

Pour démarrer ou redémarrer le service NSClientpp (Nagios) ; un clic droit dessus, puis "Toutes les tâches" et choisir l'action voulue.

V. 11-1214 T. Perrin Page 25 / 45

Page 29: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 4.1. Configurations supplémentaires

On édite donc les parties [modules] [NSClient] et [Settings] comme ci-dessous.

[modules];# NSCLIENT++ MODULES;# A list with DLLs to load at startup.; You will need to enable some of these for NSClient++ to work.; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !; * *; * N O T I C E ! ! ! - Y O U H A V E T O E D I T T H I S *; * *; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !FileLogger.dllCheckSystem.dllCheckDisk.dllNSClientListener.dllNRPEListener.dllSysTray.dllCheckEventLog.dllCheckHelpers.dll;CheckWMI.dll;...

On a décommenté les modules nous intéressant.

[NSClient]…port=12489...

Ici on a décommenté le port d'écoute, en laissant celui par défaut.

[Settings]…password=votre_mot_de_passeallowed_hosts= adresse_IP_serveur_Nagios...

Et là on a décommenté les lignes password et allowed_hosts pour ajouter l’adresse IP du serveur Nagios .Notez qu'il suffit de dé commenter la ligne "password" si on souhaite un mot de passe.

Il ne reste plus qu'à démarrer (ou redémarrer) le service et le client est prêt.

V. 11-1214 T. Perrin Page 26 / 45

Page 30: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 4.1. Configurations supplémentaires

Retournons sur l'interface de Centreon :Configuration > Commands > check_nt_disk (page 4)

Lors de la configuration de l'hôte, ne pas oublier de cliquer sur la petite flèche bleue pour entrer les arguments par défaut et modifier si besoin, particulièrement le mot de passe :

4.2. Visualisation

Il existe un addon pour Firefox qui affiche dans la barre d'état un indicateur des événements relevés par Nagios; il s'agit de "Nagios Checker" disponible à l'adresse : https://addons.mozilla.org/fr/firefox/addon/3607:

4.2.1. Les hôtes et les services

Par défaut sous Centreon, la visualisation (onglet "monitoring") n'affiche que les éléments ayant un problème, i.e les états "warning" et "critical".Il suffit donc de sélectionner "All Services" dans le menu gauche de cet onglet "monitoring" pour les voir tous :

V. 11-1214 T. Perrin Page 27 / 45

Page 31: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 4.2.2. Les graphiques

4.2.2. Les graphiques

Views > Graphs

Personnalisation des courbesViews > Graphs > Curves

V. 11-1214 T. Perrin Page 28 / 45

Page 32: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 4.3. Compte utilisateur en lecture seul

4.3. Compte utilisateur en lecture seul

4.3.1. Création du compte

Configuration > Users > AddRenseigner l'utilisateur comme sur la capture ci-dessous :

Puis sur l'onglet "Centreon Authentication", on l'autorise à accéder à l'interface web de Centreon. On en profite pour lui assigner un mot de passe :

V. 11-1214 T. Perrin Page 29 / 45

Page 33: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 4.3.1. Création du compte

Il faut maintenant attribuer les droits voulus à cet utilisateur.

4.3.2. Gestion des ACL

Création du groupe d'accèsLe compte nouvellement créé doit être rattaché à un groupe d'accès.Administration > ACL > Access Groups > Add

Déclarer ce nouveau groupe comme suit :

Paramétrage "lecture seule"Administration > ACL > Menus Access > Add

On nomme cette nouvelle liste, on l'active et on lui indique quel(s) groupe(s) lui est(sont) lié(s).

V. 11-1214 T. Perrin Page 30 / 45

Page 34: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 4.3.2. Gestion des ACL

Il suffit ensuite de sélectionner les pages auxquelles on souhaite autoriser l'accès à notre utilisateur comme sur l'exemple suivant :

V. 11-1214 T. Perrin Page 31 / 45

Page 35: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 4.3.2. Gestion des ACL

Paramétrage de la visualisation du contenuAdministration > ACL > Ressources Access > Add

Avec Centreon, il est possible d'autoriser un utilisateur à visualiser une ou plusieurs machines.Dans l'onglet "General Informations" on nomme et active la liste de contrôle d'accès aux ressources et on déclare un groupe pour qui le filtrage du Dans l'onglet contenu visible sera applicable.

Dans l'onglet "Hosts Ressources" on définit les hôtes ou groupes d'hôtes que l'utilisateur peut voir.

On fait de même dans l'onglet "Services Ressources" en sélectionnant les services visibles par l'utilisateur. V. 11-1214 T. Perrin Page 32 / 45

Page 36: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 5. Alertes automatiques

5. Alertes automatiques

5.1. Alertes automatiques par mail

Configuration de PostfixPostfix est le serveur de messagerie installé par défaut sur la distribution F.A.N. Sa configuration se fait en éditant le fichier /etc/postfix/main.cf. Décommenter et compléter en fonction des besoins.

[...]# INTERNET HOST AND DOMAIN NAMES#[…]myhostname = nom_machine.nom_domaine # nom du serveur nagios suivi du nom de \

domaine. ligne 70 ~[…]mydomain = nom_domaine # nom du domaine. ligne 77 ~

# SENDING MAIL#[...]myorigin = myhostname # ligne 92 ~#myorigin = $mydomain

# RECEIVING MAIL

[...]#relayhost = [mailserver.isp.tld]#relayhost = uucphostrealyhost = IP_serveur_messagerie # Les mails sont transmis au serveur de \

messagerie de la préfecture pour être \ envoyés. ligne 304 ~

[...]

On relance le service postfix :

~# /etc/init.d/postfix restart

Dans Nagios la commande de notification par mail est : host-notify-by-email.

Attention !Nagios enverra par défaut des mails à la moindre occasion : Service toujours OK, Service tombé, Service pas encore revenu, Hôte injoignable, Etc...Cela à multiplier par le nombre de machines et de services. Il conviendra donc d'appliquer des règles de tri au préalable, règles qui seront affinées durant les premiers jours de mise en production. V. 11-1214 T. Perrin Page 33 / 45

Page 37: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 5.2. Alertes automatiques par SMS

5.2. Alertes automatiques par SMS

Les câbles data du téléphone GSM doivent également servir à recharger le téléphone cellulaire via l'alimentation de la fiche USB.En effet, sur la plupart des mobiles, on ne peut pas connecter le cordon d'alimentation et le câble data en même temps. C'est un des points à surveiller dans le choix du GSM servant à la notification. Pour piloter le GSM, qui doit posséder un modem intégré répondant aux commandes AT, il est nécessaire d'installer la bibliothèque gsmlib, disponible dans le paquet gsm-utils.Note : La plupart des Nokia posent des problèmes de compatibilité dus à l'utilisation d'un protocole propriétaire.

Méthode classiqueTest :On connecte le GSM via son câble data à un des connecteurs USB. Le système Hotplug va charger le module usbserial et on verra un périphérique supplémentaire, /dev/ttyUSB0. Pour le vérifier :

~# ls -al /dev/ttyUSBx

Si il n'y a pas de ttyUSBx, il faut charger le module manuellement :

~# modprobe usbserial

Le paquet gsm-utils fournit quelques commandes pour dialoguer avec le GSM.On va vérifier que le GSM répond bien avec la commande suivante :

~# gsmctl -d /dev/ttyUSB0 ALL

Diverses informations disponibles sur le GSM s'affichent alors. On peut maintenant essayer d'envoyer un SMS :

~# gsmsendsms -d /dev/ttyUSB0 +33612345678 "Nagios - Test SMS OK ?"

Configuration de Nagios :Si le SMS est reçu, il ne reste plus qu'à configurer Nagios pour qu'il puisse envoyer des SMS.Il faut autoriser l'utilisateur nagios à utiliser les commandes modems en l'ajoutant au groupe d'utilisateur dialout.Puis configurer la commande permettant à Nagios d'envoyer des SMS.Exemple de commandes, pour les services et les hôtes, définies dans le fichier /etc/nagios3/misccommands.cfg :

define command{command_name notify-by-smscommand_line /usr/bin/gsmsendsms -d /dev/ttyUSB0 $CONTACTPAGER$ "Nagios

- $NOTIFICATIONTYPE$ : $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ ($OUTPUT$)"}

define command{command_name host-notify-by-smscommand_line /usr/bin/gsmsendsms -d /dev/ttyUSB0 $CONTACTPAGER$ "Nagios

- $NOTIFICATIONTYPE$ : Host $HOSTALIAS$ is $HOSTSTATE$ ($OUTPUT$)"}

V. 11-1214 T. Perrin Page 34 / 45

Page 38: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 5.2. Alertes automatiques par SMS

Avec smstool

Il est également possible d'envoyer des notifications par sms en cas de problème. Pour ce faire il est nécessaire d'avoir un modem gsm possédant une connexion USB. Il faut ensuite installer un logiciel permettant d'envoyer des sms depuis le serveur. Pour cela le logiciel smstool a été choisi. Simple de configuration, il est compatible avec un bon nombre de téléphones portables gsm.

Installation de smstool :

~# yum install build-essential /* On télécharger les pré-requis de compilation: ~# wget http://smstools.meinemullemaus.de/packages/smstools-2.2.20.tar.gz

/* On récupère l'archive~# tar xzf smstools-2.2.20.tar.gz /* On décompression de l'archive~# cd smstools~# make~# make install /* installation

Configuration de smstool :

La configuration de smstool se fait en éditant le fichier /etc/smsd.cf. Il faut au préalable connaître le nom du port sur lequel notre modem gsm est branché. Pour ce faire, il suffit de taper la commande dmesg après le branchement. Cette commande retourne l'adresse du dernier périphérique branchée sur le serveur. Une fois cette information connue on peut éditer le fichier de configuration de manière à obtenir:

devices = GSM1logfile = /var/log/smsd.logloglevel = 7[queues][provider][GSM1]device = /dev/ttyACM1incoming = nobaudrate = 9600rtscts= no

Il faut ensuite créer une nouvelle commande de notification dans nagios:

/usr/bin/printf "%b" "To: $CONTACTPAGER$\n\n**NAGIOS**\Type:$NOTIFICATIONTYPE$\Host:$HOSTNAME$\nState: $HOSTATE$\n\Info:$HOSTOUTPUT$\nTime:$SHORTDATETIMES$">"/var/spool/sms/outgoing/nagios-$CONTACTPAGER$-$HOSTNAME$- /bin/date +%s"

V. 11-1214 T. Perrin Page 35 / 45

Page 39: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 5.2. Alertes automatiques par SMS

Grâce à la commande /usr/bin/printf > /var/spool/sms/outgoing/ un fichier texte va être placé dans le dossier /var/spool/sms/outgoing/ qui contient les messages à envoyer avec smstool Le reste de la commande contient les informations qui seront affiché dans le message.Le message reçu sera de la forme suivante :

To: n° de téléphone du contactType: type du problème de l'hôteHost: Nom de l'hôteState: état de l'hôteDate: date et heure du problème

Un système d'escalade de notification par sms a ensuite été mis en place grâce à Nagios. Si un équipement devient indisponible, au bout de 5 min un mail contenant le type de problème, le nom et l'adresse de l'équipement, la date et l'heure est automatiquement envoyé à l'administrateur. Si au bout de 20 minutes l'état de l'hôte est toujours le même un sms contenant les même informations est envoyé.

Voici la référence des portables testés avec succès avec cette configuration:Sony Ericson W380i Sagem my700X

Attention !Comme pour les alertes par mail, le nombre d'alertes par SMS peut très vite devenir un problème. Là aussi des règles de tri sont nécessaires.

V. 11-1214 T. Perrin Page 36 / 45

Page 40: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 6. Sauvegardes

6. Sauvegardes

N'ayant pas trouvé de modules permettant une sauvegarde et une restauration aisées de Centreon, j'ai fait quelques scripts simples, en bash, à intégrer dans le cron du serveur (le fichier fan_backup_centreon.sh).La sauvegarde se fait ici sur la même machine. Il s'agit de scripts indicatifs, à modifié en conséquences.Une archive sera prochainement disponible à l'adresse : http://apps.tdey.org/monit/fan_pref13.tar.gzJe n'ai pas trouvé d'inos sur la nécessité ou non de stopper les services pendant la sauvegarde, je les arrête donc par défaut (il faut en tenir compte lors de la définition de l'horaire de sauvegarde du cron).

#!/bin/sh

## fan_services.sh## Rôle : Arrêt et démarrage des services relatifs à F.A.N.#

case "$1" instart)

echo -e "\n\tDémarrage des services nécessaires à F.A.N.\n\n"/etc/init.d/nagios start/etc/init.d/centcore start/etc/init.d/centstorage start

;;

stop)echo -e "\n\tArrêt des services nécessaires à F.A.N.\n\n"/etc/init.d/nagios stop/etc/init.d/centcore stop/etc/init.d/centstorage stop

;;

restart)echo -e "\n\tRedémarrage des services nécessaires à F.A.N.\n\n"$0 stop$0 start

;;

status)echo -e "\n\États des services nécessaires à F.A.N.\n\n"/etc/init.d/nagios status/etc/init.d/centcore status/etc/init.d/centstorage status/etc/init.d/mysqld status

;;

*)echo -e "\n\tUsage:\tfan_services.sh {start|stop|restart|status}\n\n"exit 1

;;esac

V. 11-1214 T. Perrin Page 37 / 45

Page 41: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 6.1. Sauvegarde des configurations et données

6.1. Sauvegarde des configurations et données

#!/bin/sh

## fan_backup_centreon.sh## Rôle : Arrêt des services de FAN "si nécessaire"#

### VARIABLES ###JOUR=`date +%Y%m%d`USERFAN=`whoami`

fan_services.sh stop

### Archivage des fichiers de configurationmkdir ~/backupcd ~/backuptar cf logs_nagios.tar /var/log/nagiostar cf logs_centreon.tar /var/log/centreontar cf cfg_nagios.tar /etc/nagiostar cf cfg_centreon.tar /etc/centreontar cf cfg_centreon2.tar /usr/share/centreon/filesGeneration /usr/share/centreon/libtar cf cfg_cron.tar /etc/cron.d/centreon /etc/cron.d/centstoragetar cf cfg_init.tar /etc/init.d/centcore /etc/init.d/centstorage /etc/init.d/nagios /etc/init.d/ndo2dbtar cf vues_centreon.tar /var/lib/centreon

### Sauvegarde des bases de donnéesmysqldump -u root --opt centreon2 > backup_bdd-centreon2.sqlmysqldump -u root --opt centreon2_storage > backup_bdd-centreon2_storage.sqlmysqldump -u root --opt nagios > backup_bdd-nagios.sql

### Redémarrage des servicesfan_services.sh start

### Compression des fichiers de sauvegardeif [ -e $HOME/FAN-cfg_$JOUR.tar.gz ]; then

rm $HOME/FAN-cfg_$JOUR.tar.gzfitar czvf $HOME/FAN-cfg_$JOUR.tar.gz ~/backup/logs_nagios.tar ~/backup/logs_centreon.tar ~/backup/cfg-nagios.tar ~/backup/cfg_centreon.tar ~/backup/cfg_centreon2.tar ~/backup/cfg_cron.tar ~/backup/cfg_init.tar ~/backup/vues_centreon.tar ~/backup/backup_bdd-centreon2.sql ~/backup/backup_bdd-centreon2_storage.sql ~/backup/backup_bdd-nagios.sql

### Suppression du dossier temporaire et modification des droitscd $HOMErm -Rf ~/backupchmod 750 $HOME/FAN-cfg_$JOUR.tar.gzchown $USERFAN:$USERFAN $HOME/FAN-cfg_$JOUR.tar.gz

V. 11-1214 T. Perrin Page 38 / 45

Page 42: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 6.2. Restaurations des configurations et données

6.2. Restaurations des configurations et données

#!/bin/bash

## fan_import_centreon.sh## Rôle : Import des configurations et données# Renommer votre fichier de sauvegarde en Centreon.tar.gz#

if [ -ne $1 ]; thenecho -e "\n\n\tUsage : fan_import_centreon.sh

<fichier>.tar.gz\n\tou\n\t\tfan_import_centreon.sh <fichier>.zip"fi

### VARIABLES ###FICH_SAVE=`$1`

# Décompressiontar xzvf $HOME/$FICH_SAVE

# Arrêt des servicesfan_services.sh stop

# Import des fichiers de conftar xf ~backup/logs_nagios.tartar xf ~backup/logs_centreon.tartar xf ~backup/cfg_nagios.tartar xf ~backup/cfg_centreon.tartar xf ~backup/cfg_centreon2.tartar xf ~backup/cfg_cron.tartar xf ~backup/cfg_init.tartar xf ~backup/vues_centreon.tar

# Importation de la base de donnéesmysql -u root < ~backup/backup_bdd-centreon2.sqlmysql -u root < ~backup/backup_bdd-centreon2_storage.sqlmysql -u root < ~backup/backup_bdd-nagios.sql

# Redémarrage des servicesfan_services.sh start

# Suppressionsrm $HOME/$FICH_SAVErm -r /~backup

V. 11-1214 T. Perrin Page 39 / 45

Page 43: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. 6.2. Restaurations des configurations et données

#!/bin/bash

## fan_restore_centreon.sh## Rôle : Restaurer la configuration de Centreon#

### VARIABLES ###REP=`pwd`

echo -e "\n\n\tRestauration de la configuration.\n\n"

# Sélection du fichierecho -e "Fichiers de sauvegarde disponibles :"ls -l FAN-cfg_*read -p "Date de sauvegarde à importer (YYYYmmjj) : " JOURC

# Arrêt des servicesfan_services.sh stop

# Décompressioncd /tar xzf $REP/FAN-cfg_$JOURC.tar.gztar xf ~/backup/logs_nagios.tartar xf ~/backup/logs_centreon.tartar xf ~/backup/cfg-nagios.tartar xf ~/backup/cfg_centreon.tartar xf ~/backup/cfg_centreon2.tartar xf ~/backup/cfg_cron.tartar xf ~/backup/cfg_init.tartar xf ~/backup/vues_centreon.tar

# Import des bases de donnéescd /~backupmysql -u root centreon2 < backup_bdd-centreon2.sqlmysql -u root centreon2_storage < backup_bdd-centreon2_storage.sqlmysql -u root nagios < backup_bdd-nagios.sql

# Suppressioncd $REPrm -r /~backup

# Redémarrage des servicesfan_services.sh startecho -e "\n\n\\tRestauration terminée\n"

V. 11-1214 T. Perrin Page 40 / 45

Page 44: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. Conclusion

Conclusion

Technique

Personnel

V. 11-1214 T. Perrin Page 41 / 45

Page 45: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. FAQ

FAQ

Modification du mot de passe par défautLe mot de passe de nagiosadmin est défini (et à redéfinir) 2 fois :

Dans le compte Centreon (Configuration > Users > "Clic sur le login à modifier" > Onglet Centreon Authentication).Dans le fichier /etc/nagios/htpasswd.users où on ne le modifie pas directement, mais via la commande :

~# htpasswd -c /etc/nagios/htpasswd.users nagiosadmin

Mise à jour de la distribution

~# yum update

Utilisation de Nagvis avec plusieurs collecteursNagvis n'affiche que les hôtes du nagios central. Il faut donc ajouter un "backend" correspondant à chaque nouvelle instance de Nagios.La ligne dbinstancename= de /etc/nagios/nagvis.ini.php correspond à la ligne instance_name du fichier /etc/init.d/ndomod.cfg.Un exemple du code à ajouter au fichier /etc/nagios/nagvis.ini.php :

[backend_ndomy_2] # Nom du backend ; type of backend - MUST be set ;backendtype="ndomy" ; hostname for NDO-db ;dbhost="localhost" ; portname for NDO-db ;dbport=3306 ; database-name for NDO-db dbname="nagios" ; username for NDO-db ;dbuser="root" ; password for NDO-db dbpass="" ; prefix for tables in NDO-db ;dbprefix="nagios_" ; instace-name for tables in NDO-db dbinstancename="Nagios2" # Nom de l'instance ; maximum delay of the NDO Database in Seconds ;maxtimewithoutupdate=180 ; path to the cgi-bin of this backend ;htmlcgi="/nagios/cgi-bin"

V. 11-1214 T. Perrin Page 42 / 45

Page 46: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. Glossaire

Glossaire

M.I.B. Template

V. 11-1214 T. Perrin Page 43 / 45

Page 47: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. Crédits

Crédits

Tristan Laisné FAN (Fully Automated Nagios) http://fannagioscd.sourceforge.net/wordpress/Nagios http://www.nagios.org/Centreon http://www.centreon.com/fr/NagVis (Nagios Visualization) http://nagvis.org/homeNaReTo (Nagios Reporting Tools) http://www.nareto.org/

V. 11-1214 T. Perrin Page 44 / 45

Page 48: Étude et mise en place d'une solution de supervision …nareth.hean.free.fr/Docs Oliv/Rapport_Ted.pdf · Étude et mise en place d'une solution de supervision basée sur F.A.N. pour

Supervision avec F.A.N. Remerciements

Remerciements

Je tiens à remercier :Thierry Lepage - Chef de service SRDSIC, pour m'avoir accueilli alors que la "date de péremption" était proche.Lionel Mourre - Bureau administration réseau et systèmes informatiques, pour toutes les infos qu'il m'a fourni, sa patience et ses bonnes pistes.Georges Efthimiades - , pour m'avoir supporté dans son bureau, chaque jour, du matin au soir.Philippe Gentet - Bureau Matériels Informatiques, pour avoir dû désinfecter ma machine sous windows au moins une fois.Anne-Marie Corradi - Secrétaire de Thierry Lepage, pour avoir pris en charge, entre autre, l'envoi des fax chaque fin de semaines et géré la partie administrative.Maurice Ravetllat et Mireille Meucci-Michaud - Section Gestion administrative et financière, pour les mêmes raisons.

Et le reste des membres du SRDSIC, pour leur accueil, leur bonne humeur et leur disponibilité, avec dans le désordre :Département informatiqueMME Charroux Bureau administration réseau et systèmes informatiquesJean-Claude WEINGAERTNERBureau applications, web et SIGGeneviève CHARROL, Marie-Christine FORAY, Richard RICHTERBureau matériels informatiquesAntoine EVORA, Daniel IVALDI, Éric JECHOUX, Gilles MARDIROSSIANDépartement télécommunicationsPatrick BARRAUDBureau téléphoneJean-Pierre ANFRIANI, Jean-Étienne GORI, Nathalie NOBILI, Standard PréfectureYasmina ATOUI, Hélène BIGAZZI, Brigitte BOUCHERET, Michèle BRUNEL, Marc FIASSE, Diane GANGAI, Franck GIRAUD, Catherine KHELIA, Sandra KERLOC'H, Mireille MEUCCI-MICHAUD.SurveillanteRose SEGHIERI.Cellule d'accueilPierrette JAILLE, Brigitte PISSOCHER, Régis SAUBESTY.

Je remercie également mes camarades de la session 2011 des TSGERI de l'Afpa de Marseille Saint-Jérôme pour avoir été présents pour répondre à mes questions et supportés mes blagues pas toujours drôles.

Un grand Merci à Oscar Logger, notre formateur qui a fait de nous des "documenteurs" hors pair.

Et pour finir, merci à Sabine, ma petite femme, pour m'avoir toujours soutenu.

V. 11-1214 T. Perrin Page 45 / 45