18
Nagios 3 sur Debian Installation & Configuration 29/11/2013 BOUGHABA / MICHEL / ADOLPHE / HOXHA SIO2

Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Embed Size (px)

Citation preview

Page 1: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian Installation & Configuration 29/11/2013 BOUGHABA / MICHEL / ADOLPHE / HOXHA SIO2

Page 2: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 2

Table des matières Présentation ............................................................................................................................................ 3

Explication .................................................................................................................................. 4

Moniteur de supervision :.............................................................................................. 4

Ordonnanceur et analyseur gérant les actions :............................................................ 5

Installation ............................................................................................................................................... 5

Pré-Requis................................................................................................................................... 5

Installation Nagios ...................................................................................................................... 6

Installation Nagios-Plugins ......................................................................................................... 7

Librairies complémentaires ........................................................................................... 7

Compilation ................................................................................................................... 7

Configuration ........................................................................................................................................... 7

Ajout d’un nouvel hôte ............................................................................................................... 7

Pour Windows ............................................................................................................... 7

Pour linux .................................................................................................................................. 12

Sur le Serveur nagios ................................................................................................... 12

Sur le client linux ...................................................................................................................... 13

Ajout d’un switch a surveillé .................................................................................................... 17

Page 3: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 3

Présentation

Nagios est un logiciel de supervision destiné à vous informez de problèmes éventuels dans votre

système d’informations avant que vos clients, utilisateurs ou managers ne le fassent. Il est prévu

pour fonctionner sur système d’exploitation Linux.

Le démon de supervision effectue des contrôles sur les hôtes et services que vous spécifiez en

utilisant des plugins externes qui retournent un statut d’état à Nagios. Quand des problèmes

surviennent, il peut envoyer des notifications à des contacts administratifs de façons différentes

(email, SMS, messagerie instantanée, etc…). Les informations d’états courants, les historiques et les

rapports peuvent être consultés à partir d’un simple navigateur.

L’interface de Nagios core 3.2.0

Page 4: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 4

Explication

Moniteur de supervision :

La supervision consiste à surveiller le fonctionnement d’un système. Elle permet donc de contrôler,

détecter les fonctionnements des machines.

vérification des services réseau (SMTP, HTTP, …etc.). surveillance des ressources des hôtes (charge CPU, espace disque, …etc.). contrôle des équipements réseau (CPU, ventilateurs, …etc.).

Chaque test renvoi un état particulier:

1. #OK (tout va bien) 2. #WARNING (le seuil d’alerte est dépassé) 3. #CRITICAL (le service a un problème) 4. #UNKNOWN (impossible de connaître l’état du service)

Nagios est composé de 3 parties : Un ordonnanceur (charger de contrôler, quand, et dans quel ordre les contrôles des services effectués), des plugins (des modules externe), et une interface web (vus précédemment).

Page 5: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 5

Ordonnanceur et analyseur gérant les actions :

système complet de notification fonction du service, de l’heure et de la date. gestion des escalades (enchainement des évènements par notification). possibilité de paramétrer des évènements automatiquement. possibilité de définir des gestionnaires d’événements. Système de modules/plugins de vérification fonctionne tels des programmes externes. permet de développer ses propres modules. Une interface Web avec gestion des droits pour la consultation. Rapports de surveillance.

Installation Le tutorial suivant est exécuté avec l’utilisateur système root.

Pré-Requis

Effectuez les commandes suivantes :

apt-get update apt-get upgrade apt-get install openssh-server

Ces commandes mettent à jour l’ensemble de la distribution installée et installe le serveur ssh pour la prise en main à distance.

Dépôts apt pour l’installation

vi /etc/apt/sources.list

Veuillez modifier le contenu du fichier par les renseignements suivant :

deb http://ftp.fr.debian.org/debian/ wheezy main deb-src http://ftp.fr.debian.org/debian/ wheezy main … deb http://security.debian.org/ wheezy /updates main deb-src http://security.debian.org/ wheezy /updates main … # wheezy -updates, previously known as 'volatile' deb http://ftp.fr.debian.org/debian/ wheezy -updates main deb-src http://ftp.fr.debian.org/debian/ wheezy -updates main

Quitter le mode Vi, et installer l’utilitaire de base pour le serveur de supervision :

apt-get install php5-gd postfix fping snmp ntp smbclient nmap saidar traceroute php5-snmp curl gettext

Installer l’environnement de compilation

apt-get install build-essential

Page 6: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 6

Installation Nagios

Création d’un l’utilisateur nagios

groupadd -g 9000 nagios groupadd -g 9001 nagcmd useradd -u 9000 -g nagios -G nagcmd -d /usr/local/nagios -c "Nagios Admin" nagios

Avant de pouvoir compiler Nagios, il faut installer les librairies de développement :

apt-get install libperl-dev libgd2-xpm-dev libltdl3-dev linux-headers-`uname -r`

Pour la version 3 de Nagios, ajouter la librairie libglib2

apt-get install libglib2.0-dev

Ensuite : compilation de Nagios, des plugins, de NRPE et NSCA.

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.3.1.tar.gz tar -xzf nagios-3.3.1.tar.gz cd nagios-3.3.1 ./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-command-user=nagios --with-command-group=nagcmd --enable-event-broker --enable-nanosleep --enable-embedded-perl --with-perlcache

Nagios 3.3.1 : Si vous rencontrez une erreur lors de la compilation, du style :

/usr/bin/install: omitting directory `includes/rss/extlib' /usr/bin/install: omitting directory `includes/rss/htdocs' /usr/bin/install: omitting directory `includes/rss/scripts' make[1]: *** [install] Error 1 make[1]: Leaving directory `/srv/d_bilbo/install/nagios/nagios/html' make: *** [install] Error 2

En cas d’Erreur, il suffit d’effectuer les modifications ci-dessous (juste après. /Configure) :

$ sed -i 's/for file in includes\/rss\/\*\;/for file in includes\/rss\/\*\.\*\;/g' ./html/Makefile $ sed -i 's/for file in includes\/rss\/extlib\/\*\;/for file in includes\/rss\/extlib\/\*\.\*\;/g' ./html/Makefile

Ensuite continuez la compilation.

make all make install make install-init make install-commandmode make install-config make install-webconf

Création du fichier d’utilisateur

Page 7: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 7

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin chown nagios:nagcmd /usr/local/nagios/etc/htpasswd.users

Ajouter l’utilisateur apache au groupe nagcmd pour pouvoir exécuter les commandes externes de Nagios depuis l’interface (ex : nagcmd:x:9001:www-data)

adduser www-data nagcmd /etc/init.d/apache2 restart

Pour que Nagios démarre automatiquement au boot de la machine :

chmod +x /etc/init.d/nagios update-rc.d nagios defaults

Vous n’avez plus qu’à démarrer Nagios en faisant la commande suivante :

/etc/init.d/nagios start

Installation Nagios-Plugins

Librairies complémentaires

apt-get install libgnutls-dev libmysqlclient15-dev libssl-dev libsnmp-perl libkrb5-dev libldap2-dev libsnmp-dev libnet-snmp-perl gawk libwrap0-dev libmcrypt-dev fping snmp gettext smbclient dnsutils

Compilation

wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz tar -xzf nagios-plugins-1.4.15.tar.gz cd nagios-plugins-1.4.15/ ./configure --with-nagios-user=nagios --with-nagios-group=nagios --enable-libtap --enable-extra-opts --enable-perl-modules make make install

Configuration

Ajout d’un nouvel hôte

Pour Windows

Télécharger NSCLIENT

http://nsclient.org/nscp/downloads

NSClient++-0.3.9-Win32.msi ou NSClient++-0.3.9-Win64.msi

Comme sur l’image ci-dessous.

Page 8: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 8

Veuillez installer le logiciel.

Cliquez sur Suivant jusqu'à atteindre cette fenêtre. Veuillez la remplir convenablement:

Page 9: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 9

Continuez à cliquer sur suivant, jusqu'à finir l’installation en cochant la case « Start service » et

veuillez cliquez sur Finish.

Une fois démarré, faites clique droit Activer le NSClient

Page 10: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 10

Démarrer le fichier dans les propriétés du service NSClient ++

Page 11: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 11

Aller ensuite dans connexion, cochez le bouton radio : compte système local. Et Autoriser le service à

interagir avec le Bureau.

Page 12: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 12

Pour linux

Sur le Serveur nagios

Tout d’abord sur le serveur nagios vous devais installer NRPE

cd /usr/local/src/

wget http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-

2.15/nrpe-2.15.tar.gz

tar -zxf nrpe-2.15.tar.gz

cd nrpe-2.15

./configure --enable-command-args

make all

make install-plugin

make install-daemon

make install-daemon-config

make install-xinetd

Commençons par créer un répertoire serveurs_linux où déposer notre fichier servprod.cfg

mkdir /usr/local/nagios/etc/serveurs_linux/

Rajoutons le chemin de ce répertoire dans nagios.cfg.

cfg_dir=/usr/local/nagios/etc/serveurs_windows

cfg_dir=/usr/local/nagios/etc/serveurs_linux

Ouvrons le fichier "commandes.cfg"

/usr/local/nagios/etc/objects/commands.cfg

Et rajoutons l'objet commande pour nos requêtes NRPE.

# 'check_nrep' command definition

define command{

command_name check_nrpe

command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -u -c $ARG1$ -a $ARG2$ $ARG3$

$ARG4$ $ARG5$ $ARG6$

}

Page 13: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 13

Maintenant, créons un fichier « groupe_serveurs_linux.cfg » dans lequel on définira notre groupe de

serveurs Linux. Ainsi, à chaque rajout de serveur Linux, on fera la modification dans ce fichier.

# Define a hostgroup for Linux machines

# All hosts that use the linux-server template will automatically be a member of this group

define hostgroup{

hostgroup_name linux-servers ; The name of the hostgroup

alias Serveurs Linux ; Long name of the group

members servprod ; separes par des virgules

Créons notre fichier "servprod.cfg".

Vi /usr/local/nagios/etc/serveurs_linux/servprod.cfg

Redémarrage de Nagios.

/etc/init.d/nagios restart

Sur le client linux

apt-get update

apt-get upgrade

apt-get install make gcc build-essential wget libssl-dev snmpd snmp scli xinetd

Plaçons-nous dans le répertoire /usr/local/src

cd /usr/local/src/

wget http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz

wget https://www.nagios-plugins.org/download/nagios-plugins-1.5.tar.gz

Création d'un compte et groupe nagios

Page 14: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 14

groupadd nagios && useradd nagios -g nagios -p nagios

Décompressons les archives

tar -xzf nagios-plugins-1.5.tar.gz && tar -xzf nrpe-2.15.tar.gz

Compilation et installation de nagios-plugins

cd nagios-plugins-1.5/ ./configure make && make install

Compilation et installation de NRPE

cd /usr/local/src/nrpe-2.15 ./configure --enable-command-args make all

Installons maintenant les plugins NRPE :

Installation NRPE

make install-plugin make install-daemon make install-daemon-config

Installation du démon NRPE comme service sous xinetd (que vous avez déjà installé).

daemon nrpe - xinetd make install-xinetd /usr/bin/install -c -m 644 sample-config/nrpe.xinetd /etc/xinetd.d/nrpe

Modification du fichier /etc/xinetd.d/nrpe pour définir le service

Modifions le fichier :

vi /etc/xinetd.d/nrpe

Page 15: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 15

Ajouter les ligne :

service nrpe { flags = REUSE socket_type = stream port = 5666 wait = no user = nagios group = nagios server = /usr/local/nagios/bin/nrpe server_args = -c /usr/local/nagios/etc/nrpe.cfg --inetd log_on_failure += USERID disable = no only_from = 127.0.0.1 « ip nagios }

Modifions le fichier « /etc/services » et rajoutons la ligne :

nrpe 5666/tcp # Nagios Remote Plugin Executor

Il se peut qu'elle soit déjà présente.

Modifions le fichier de configuration pour activer la prise d'arguments

vi /usr/local/nagios/etc/nrpe.cfg

dont_blame_nrpe=1

Redémarrage de xinetd :

/etc/init.d/xinetd restart

On teste que NRPE est bien à l'écoute et ouvert :

# netstat -at | grep nrpe

tcp 0 0 *:nrpe *:* LISTEN

Effectuons des tests

Effectuons un test localement

/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1

Page 16: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 16

Si nous obtenons ce message d'erreur

CHECK_NRPE: Received 0 bytes from daemon. Check the remote server logs for error messages.

Effectuons

ls -alh /usr/local/nagios/etc/nrpe.cfg -rw------- 1 root root 7.1K Jan 17 16:32 /usr/local/nagios/nrpe.cfg

En effet, Nagios ne peut pas lire le fichier, changeons les droits du fichier.

chmod 664 /usr/local/nagios/etc/nrpe.cfg chown nagios.nagios /usr/local/nagios/etc/nrpe.cfg

Effectuons un nouveau test

Effectuons un autre test afin de compter le nombre de processus.

servprod:/usr/local/src/nagios-plugins-1.5 # /usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_total_procs PROCS OK: 93 processes

Tout fonctionne parfaitement, paramétrons NRPE afin de pouvoir lire l'espace disque.

vi /usr/local/nagios/etc/nrpe.cfg

Il faut décommentter la ligne ci-dessous

command[check_disk]=/usr/local/nagios/libexec/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$

/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 NRPE v2.15

Page 17: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 17

Ajout d’un switch a surveillé

Nagios. Il existe un fichier d'exemple de configuration pour les switches

(/usr/local/nagios/etc/objects/switch.cfg), créons un répertoire/usr/local/nagios/etc/switches,

rajoutons ce fichier à l'intérieur.

cp /usr/local/nagios/etc/objects/switch.cfg /usr/local/nagios/etc/switches/switchDlink.cfg

Dans nagios.cfg, par défaut la ligne définissant le chemin où trouver les fichiers de configuration des

switches existe déjà mais elle est commentée, il suffit donc de la décommenter.

/usr/local/nagios/etc/nagios.cfg

Comme ceci.

# directive as shown below:

cfg_dir=/usr/local/nagios/etc/serveurs_windows

cfg_dir=/usr/local/nagios/etc/serveurs_linux

#cfg_dir=/usr/local/nagios/etc/servers

#cfg_dir=/usr/local/nagios/etc/printers

cfg_dir=/usr/local/nagios/etc/switches

#cfg_dir=/usr/local/nagios/etc/routers

Maintenant, modifions notre fichier /usr/local/nagios/etc/switches/switchDlink.cfg en précisant

l'adresse IP du switch. Enlevez la section hostgroup pour le mettre dans un fichier à part. Nos fichiers

ressembleront à :

/usr/local/nagios/etc/switches/switchdlink.cfg

/usr/local/nagios/etc/switches/hostgroup_switch.cfg

Page 18: Nagios 3 sur Debian - erduanhoxha.weebly.com€¦ · Nagios 3 sur Debian BOUGHABA / MICHEL / ADOLPHE Page 3 Présentation Nagios est un logiciel de supervision destiné à vous informez

Nagios 3 sur Debian

BOUGHABA / MICHEL / ADOLPHE Page 18

Dans le fichier /usr/local/nagios/etc/switches/hostgroup_switch.cfg copier ceci :

# HOST GROUP DEFINITIONS

# Create a new hostgroup for switches

define hostgroup{

hostgroup_name switches ; The name of the hostgroup

alias Les Switches ; Long name of the group

}

Il ne reste plus qu'à redémarrer Nagios.

/etc/init.d/nagios stop; pkill nagios; /etc/init.d/nagios start