**Nagios**
# Introduction
## Objectif
* Installer et configurer Nagios
## Notes
* Les commandes précédées de "`$`" signifient que vous devez exécuter la commande en tant qu'utilisateur général - et non en tant qu'utilisateur root.
* Les commandes précédées de "#" signifient que vous devez travailler en tant qu'utilisateur root.
* Les commandes comportant des lignes de commande plus spécifiques (par exemple "rtrX" ou "mysql>") signifient que vous exécutez des commandes sur des équipements à distance, ou dans un autre programme.
# Nagios, partie I
Ouvrez une session sur votre PC ou ouvrez une fenêtre de terminal en tant qu'utilisateur sysadm.
## Installation de Nagios version 3
~~~
$ sudo apt install nagios3 nagios3-doc
~~~
Il vous sera demandé de donner un mot de passe pour l'utilisateur "nagiosadmin". Donnez lui le mot de passe standard utilisé dans l'atelier.
Sauf si vous avez déjà un agent MTA installé, nagios3 va installer postfix en tant que dépendance. Sélectionnez l'option "Internet Site".
## Configuration de base de Nagios
Ouvrez un navigateur et accédez à votre machine de la façon suivante :
~~~
http://pcN.ws.nsrc.org/nagios3/
~~~
À l'invite de connexion, répondez comme indiqué ci-dessous :
~~~
username: nagiosadmin
pass: <_MOT DE PASSE DE L'ATELIER_>
~~~
Cliquez sur le lien "Hosts" dans le menu à gauche pour voir ce qui est déjà configuré.
## Ajout de routeurs, PC et commutateurs
Nous allons créer 3 fichiers :
~~~
routers.cfg switches.cfg pcs.cfg
~~~
... et créer des définitions pour le matériel qui se trouve dans notre atelier.
### Création du fichier switches.cfg
~~~
$ cd /etc/nagios3/conf.d (pour être certains)
$ sudo touch routers.cfg switches.cfg pcs.cfg
$ sudo editor switches.cfg
~~~
Dans ce fichier ajoutez une entrée pour cet élément :
~~~
define host {
use generic-host
host_name sw
alias Backbone switch
address 100.64.0.253
}
~~~
Sauvegardez le fichier et quittez l'éditeur.
### Création du fichier routers.cfg
Nous avons au maximum 10 routeurs. Ceci sont rtr1-rtr9 et calss-gw. Nous allons créer des définitions pour chacun d'entre eux.
Nous définission ci-dessous les 4 premiers, à vous d'ajouter le reste !
~~~
$ sudo editor routers.cfg
~~~
~~~
define host {
use generic-host
host_name gw
alias Routeur de backbone
address 10.10.0.254
}
define host {
use generic-host
host_name rtr1
alias Routeur de groupe 1
address 10.10.1.254
}
define host {
use generic-host
host_name rtr2
alias Routeur de groupe 2
address 10.10.2.254
}
~~~
Pas besoin d'ajouter tous les routeurs maintenant! Vous pouvez revenir plus tard et le faire ...
On ajoute ici aussi le point d'accès sans-fil :
~~~
define host {
use generic-host
host_name ap1
alias Wireless Access Point 1
address 100.64.0.251
}
~~~
Sauvegardez le fichier et quittez l'éditeur.
### Création du fichier pcs.cfg
Nous allons maintenant créer les définitions pour toutes les machines virtuelles (PC) dans notre atelier. Ci-dessous vous trouverez les quelques premières définitions. Vous devez compléter ce fichier comme vous l'avez fait ci-dessus pour les routeurs, et ajouter autant de PCs que vous le désirez.
Au minimum, nous vous demandons de créer les 4 PCs du groupe dont vous êtes le membre, et au moins 1 PC d'un autre groupe.
~~~
$ sudo editor pcs.cfg
~~~
~~~
define host {
use generic-host
host_name noc
alias Le NOC atelier
address 10.10.0.250
}
#
# Group 1
#
define host {
use generic-host
host_name pc1
alias pc1
address 10.10.1.1
}
define host {
use generic-host
host_name pc2
alias pc2
address 10.10.1.2
}
# Un PC d'un autre groupe (exemple, en choisir un autre!)
define host {
use generic-host
host_name pc20
alias pc20
address 10.10.5.20
}
~~~
Vous pouvez sauvegarder et quitter le fichier à ce stade, et continuer à ajouter d'autres PCs pour les autres groupes.
***LES ÉTAPES SUIVANTES DE 2.4.1 À 2.4.3 DOIVENT ÊTRE RÉPÉTÉES À CHAQUE MISE À***
***JOUR DE LA CONFIGURATION !***
## Mise à jour de configuration
### Vérification
Toujours vérifier que votre configuration est OK après l'avoir modifiée :
~~~
$ sudo nagios3 -v /etc/nagios3/nagios.cfg
~~~
Vous devriez voir quelques avertisemments (mais rien de critique) comme :
~~~
Checking services...
Checked 7 services.
Checking hosts...
Warning: Host 'gw' has no services associated with it!
Warning: Host 'rtr1' has no services associated with it!
Warning: Host 'rtr2' has no services associated with it!
etc....
Total Warnings: N
Total Errors: 0
Things look okay - No serious problems were detected during the check.
~~~
Nagios essaie de nous dire que c'est inhabituel de vouloir surveiller une machine pour laquelle on n'a pas configuré de service - c'est à dire autre chose que le ping.
### Recharger/redémarrer Nagios
~~~
$ sudo systemctl restart nagios3
~~~
ASTUCE : Vous allez devoir répéter cette opération à plusieurs reprises. Si vous regroupez l'ensemble sur une seule ligne, comme ci-dessous, alors vous pourrez utiliser la touche de déplacement vers le haut et relancer le tout en une seule fois :
~~~
$ sudo nagios3 -v /etc/nagios3/nagios.cfg && sudo systemctl restart nagios3
~~~
Le '&&' garantit que le redémarrage ne se passe que si la configuration est valide.
### Vérification via l'interface web
Rendez-vous sur votre interface web (http://pcN.ws.nsrc.org/nagios3/) et vérifiez que les machines que vous avez ajoutées sont désormais visible via l'interface web.
Cliquer sur "Host Detail" dans le menu sur la gauche pour voir ceci. Vous verrez peut-être des machines en état "PENDING" (en cours) pendant que Nagios vérifie l'état des serveurs.
## Visualisation des détails des machines et de la cartographie
Rendez-vous sur http://pcN.ws.nsrc.org/nagios3/
Cliquer sur "Host Detail" dans le menu sur la gauche. Est-ce que toutes les machines que vous avez définies sont listées ? Sont-elle "up" (en marche) ?
Cliquer sur "Status Map" dans le menu de gauche. Vous devriez y voir vos machines, avec le processus Nagios figurant au milieu.