Ceci est une ancienne révision du document !
Table des matières
Nagios
Installation du serveur
Pré-requis
Packages :
- apache
- gcc
- kernel-devel
Création des utilisateurs et groupes pour nagios :
/usr/sbin/useradd -u 706 nagios passwd nagios /usr/sbin/groupadd nagcmd /usr/sbin/usermod -G nagcmd nagios /usr/sbin/usermod -G nagcmd apache
Compilation et installation
tar xzf nagios-3.0.tar.gz cd nagios-3.0 ./configure --with-command-group=nagcmd --disable-statuswrl make all make install make install-init make install-config make install-commandmode
Installer l'extension de configuration pour apache
make install-webconf
Extrait du fichier de configuration /etc/httpd/conf.d/nagios.conf copié
# SAMPLE CONFIG SNIPPETS FOR APACHE WEB SERVER # Last Modified: 11-26-2005 # # This file contains examples of entries that need # to be incorporated into your Apache web server # configuration file. Customize the paths, etc. as # needed to fit your system. ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin" <Directory "/usr/local/nagios/sbin"> # SSLRequireSSL Options ExecCGI AllowOverride None Order allow,deny Allow from all # Order deny,allow # Deny from all # Allow from 127.0.0.1 AuthName "Nagios Access" AuthType Basic AuthUserFile /usr/local/nagios/etc/htpasswd.users Require valid-user </Directory> Alias /nagios "/usr/local/nagios/share" <Directory "/usr/local/nagios/share"> # SSLRequireSSL Options None AllowOverride None Order allow,deny Allow from all # Order deny,allow # Deny from all # Allow from 127.0.0.1 AuthName "Nagios Access" AuthType Basic AuthUserFile /usr/local/nagios/etc/htpasswd.users Require valid-user </Directory>
Créer le compte utilisateur pour l'interface Web :
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Configurer le démarrage automatique de nagios:
chkconfig --add nagios chkconfig nagios on
Compilation et installation des plugins
Ajout des principaux plugins
tar xvzf nagios-plugins-1.4.11.tar.gz cd nagios-plugins-1.4.11 ./configure --with-nagios-user=nagios --with-nagios-group=nagios make make install
Ajout du plugin NRPE (Nagios Remote Plugin Executor)
cd /usr/local/src tar xvzf nrpe-2.12.tar.gz cd nrpe-2.12 ./configure make all make install mkdir /usr/local/nagios/etc chown nagios:nagios /usr/local/nagios/etc cp ./sample-config/nrpe.cfg /usr/local/nagios/etc/ chown nagios:nagios /usr/local/nagios/etc/nrpe.cfg
Installation des scripts de démarrage
cp init-script /etc/init.d/nrpe chmod 755 /etc/init.d/nrpe
Configuration du lancement automatique
chkconfig --add nrpe chkconfig --level 2345 nrpe on
Ajout du plugin NSCA (Nagios Service Check Acceptor)
Installation NSCA
tar xvzf nsca-2.7.2.tar.gz cd nsca-2.7.2 ./configure make all mkdir /usr/local/nagios/nsca cp src/nsca /usr/local/nagios/nsca/ cp sample-config/nsca.cfg /usr/local/nagios/nsca/ cp init-script /etc/init.d/nsca chown -R nagios:nagios /usr/local/nagios/nsca/
Configuration du lancement automatique
chkconfig --add nsca chkconfig nsca on
Ajout du plugin NDO
Compilation
tar xvzf ndoutils-1.4b7.tar.gz cd ndoutils-1.4b7 ./configure make
Installation
cp src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o cp config/ndomod.cfg /usr/local/nagios/etc cp src/ndo2db-3x /usr/local/nagios/bin/ndo2db cp config/ndo2db.cfg /usr/local/nagios/etc
Editer le fichier /usr/local/nagios/etc/nagios.cfg et ajouter la ligne suivante :
broker_module=/usr/local/nagios/bin/ndomod.o config_file=/usr/local/nagios/etc/ndomod.cfg
Editer le fichier /usr/local/nagios/etc/ndo2db.cfg et modifier les lignes suivantes :
db_user=nagios db_pass=nagios
Création de base Mysql pour NDO :
mysql create database nagios; grant all privileges on nagios.* to nagios@localhost identified by 'nagios'; quit cd db ./installdb -u nagios -p nagios -d nagios
Pour démarrer NDO :
/usr/local/nagios/bin/ndo2db -c /usr/local/nagios/etc/ndo2db.cfg
Installation du client
Pré-requis
Création d'un user nagios, uid=706, gid=706, home=/home/nagios, password dans le fichier de conf.
adduser -u 706 -m nagios
Avant de commencer l'installation, installer les RPMs suivants :
- openssl
- openssl-devel
Installation
Installation du plugin NRPE
Compilation et installation :
cd /usr/local/src tar xvzf nrpe-2.12.tar.gz cd nrpe-2.12 ./configure make all make install mkdir /usr/local/nagios/etc chown nagios:nagios /usr/local/nagios/etc cp ./sample-config/nrpe.cfg /usr/local/nagios/etc/ chown nagios:nagios /usr/local/nagios/etc/nrpe.cfg
Installation des scripts de démarrage
cp init-script /etc/init.d/nrpe chmod 755 /etc/init.d/nrpe
Configuration du lancement automatique
chkconfig --add nrpe chkconfig --level 2345 nrpe on
Installation des principaux plugins
Installer les packages suivant :
- perl-Net-SNMP-4.1.2-9.0.el5.noarch.rpm
- perl-Digest-HMAC-1.01-2.2.el5.rf.noarch.rpm
- perl-Crypt-DES-2.05-3.2.el5.rf.x86_64.rpm
- perl-Digest-SHA1-2.11-1.el5.rf.x86_64.rpm
Dans le répertoire /usr/local/src, en compte root :
tar xvzf nagios-plugins-1.4.11.tar.gz chown -R nagios:nagios nagios-plugins-1.4.11/ cd nagios-plugins-1.4.11 ./configure --with-nagios-user=nagios --with-nagios-group=nagios make make install
Installation de NSCA
Pré-requis
Installation de libmcrypt nécessaire pour NSCA
Tar zxvf libmcrypt-2.5.8/ Cd libmcrypt-2.5.8/ ./configure make make check (pas d.erreur) make install
Ajout dans la lib dynamique :
creation du fichier /etc/ld.so.conf.d/local_lib.conf qui doit contenir /usr/local/lib
Recharge du cache de lien dynamique :
ldconfig /etc/ld.so.conf
Verification que libmcrypt est bien résolu :
ldconfig -p | grep libmcrypt
Installation de NSCA
tar xvzf nsca-2.7.2.tar.gz cd nsca-2.7.2 ./configure make all mkdir /usr/local/nagios/nsca cp src/send_nsca /usr/local/nagios/nsca cp sample-config/send_nsca.cfg /usr/local/nagios/nsca cd /usr/local/nagios/ chown -R nagios:nagios nsca/
Configuration du serveur
Les fichiers de configuration se trouvent dans /usr/local/nagios/etc/. Ce sont des fichiers avec l'extension .cfg.
Ci-dessous une description des fichiers de configuration :
cgi.cfg
Définition des paramètres des scripts CGI. Vous pouvez utiliser le fichier fourni par défaut par Nagios.
nagios.cfg
Fichier de configuration de Nagios. A modifier par vos soins selon votre configuration et l’arborescence choisie. Vous pouvez partir du fichier fourni en standard par Nagios et le modifier selon votre configuration.
resources.cfg
Définition des ressources externes. Vous pouvez utiliser le fichier fourni par défaut par Nagios.
objects/
C’est dans ce sous-répertoire que sont centralisé les définitions des machines et services à surveiller part votre serveur Nagios.
objects/commands.cfg
C’est là que nous allons définir les commandes utilisées par Nagios pour interroger vos machines. Vous pouvez partir du fichier fourni en standard par Nagios et le modifier selon votre configuration.
objects/contacts.cfg
Dans ce fichier, il faut configurer les contacts pouvant être prévenu en cas d’alerte. Vous pouvez partir du fichier fourni en standard par Nagios.
objects/hostclients.cfg
Ce fichier est à créer, il comportera la définition de toutes vos machines clients à surveiller (c’est à dire les postes utilisateurs). Ce fichier n’existe pas dans la structure de base de Nagios.
objects/hostservers.cfg
Ce fichier est à créer, il comportera la définition de toutes vos machines serveurs à surveiller (c’est à dire les serveurs Web, DNS, DB…). Ce fichier n’existe pas dans la structure de base de Nagios.
objects/localhost.cfg
Ce fichier est là pour que Nagios puisse surveiller le serveur sur lequel il est installé (localhost). Vous pouvez partir du fichier fourni en standard par Nagios.
objects/templates.cfg
C’est le fichier ou se trouve la définition des “templates”. Vous pouvez partir du fichier fourni en standard par Nagios.
objects/timeperiods.cfg
Ce fichier défini les périodes de temps. Vous pouvez partir du fichier fourni en standard par Nagios.
objects/network.cfg
Ce fichier est à créer, il comporte la définition de toutes les machines composant l’infrastructure de votre réseau (routeur, switch ou hub, borne Wifi …)
