Description
Nagios est un moniteur d’hôtes et de services conçu pour vous informer sur vos machines clientes, utilisateurs finaux ou gestionnaires.
Le démon de surveillance exécute des contrôles intermittents sur les hôtes et les services que vous spécifiez à l’aide de “plugins” externes qui retournent les informations d’état à Nagios. En cas de problèmes, le démon peut envoyer à des contacts administratifs dans une variété de pays différents par différents biais (courriel, messagerie instantanée, SMS, etc.) des informations sur l’état actuel ; les rapports peuvent tous être consultés par l’intermédiaire d’un navigateur Web.
- Site web : https://www.nagios.org/projects/
- Version : 4.3.1
- OpenBSD : 6.6
- Services : httpd + slowcgi + nagios + php73_fpm
Documentation
Il est toujours utile de lire les documentations pkg-readmes
fournies ; celles disponibles sont dans /usr/local/share/doc/pkg-readmes/
, à-propos de :
- femail-chroot
- nagios
- php-7.3
Installation du serveur Nagios
Afin de fonctionner avec le serveur web natif à OpenBSD, dixit
httpd(8)
, installez les paquets nagios-*-chroot
spécifiques pour l’usage avec ce serveur web natif :
Code : sh
Le répertoire web par défaut est /var/www/nagios
; des scripts CGI sont installés dans /var/www/cgi-gin/nagios/
.
Femail-chroot
Code : sh
Test config nagios
La commande de test de la configuration de nagios est :
Code : sh
Exemple :
Code : sh
Ensuite, penser à activer et démarrer le service nagios
avec le contrôleur
rcctl(8)
.
PHP-FPM
- Le service se nomme :
php73_fpm
- L’outil pour tester la configuration est :
php-fpm-73
avec l’option-t
, par exemple.
httpd configuration
Le fragment de configuration
pour httpd
nécessaire est expliqué dans mon article présentant httpd.
Activer les modules
Les commandes suivantes sont à exécuter à chaque installation d’un module PHP, pecl, et opcache :
Code : sh
OpenSSL Functions
Du fait de la prison /var/www
:
Code : sh
slowcgi
- Le service se nomme tout simplement :
slowcgi
. - Les scripts cgi fournis dans
/var/www/cgi-bin/
sont accessibles grâce à slowcgi(8) . Ceux de nagios sont fournis dans le répertoire enfantnagios/
.
httpd
Ici, je vous renvoie à mon article de découverte du serveur httpd, et tout particulièrement aux informations d’utilisations .
Modification du fichier de configuration /etc/httpd.conf
pour y ajouter :
Code :
Création du fichier de config du serveur pour nagios /etc/httpd.d/nagios.conf
:
Code :
Il est hautement recommandé de créer une authentification web avec accès restreint !
Création de l’authentification web
Sachant que le compte admin par défaut est nagiosadmin
, utilisons l’outil htpasswd
:
Code : sh
Réfléchissez bien avant de vouloir changer de nom d’administrateur, car il faudra le modifier au moins dans le fichier objects/contacts.cfg
…
Ensuite, il faut lui donner des droits d’exécution 0400
, et utilisateur web www
, autrement l’authentification ne se fera pas.
Il est ensuite possible de configurer d’autres utlisateurs, de la même manière auquels un rôle sera attribué, tel que celui d’operator
.
Configuration
Tous les fichiers de configuration se trouvent dans /etc/nagios
- qui se trouve être un alias de /var/www/etc/nagios
:
cgi.cfg
- Option
use_authentication
: Seulement le temps de tester que tout fonctionne, il est possible de mettre la valeur àO
pour désactiver l’authentification - ATTENTION, c'est une très mauvaise idée de fonctionner sans authentification ! - Les options
authorized_for_*
: si vous avez paramétré un rôle particulier, ou tout autre nom d’utilisateur, vous pouvez l’ajouter selon ce qui est désirable d’être utilisé par ce rôle, ou cet utilisateur. - Option
show_context_help
: utile pour avoir une aide contextuelle - Il peut être intéressant de configurer les options
*_sound
qui émettront un son caractéristique lié à l’erreur remontée. - Laissez l’option
lock_author_names
sur la valeur1
permet d’empêcher le changement de nom d’utilisateur.
nagios.cfg
- Option
admin_email
: remplacer la valeur par défaut, par votre courriel. - Option
date_format
: choisir la valeureuro
- Option
use_timezone
: paramètrerEurope/Paris
Les fichiers de configuration se trouvent dans le répertoire enfant objects
:
contacts.cfg
- Définition
alias
: remplacer par un alias d’administration personnalisé, si besoin. - Définition
contact_name
: remplacer par votre identifiant - Définition
email
: remplacer par votre courriel administrateur
Dépannage
Erreur : not have permission to view
Citation :
- Êtes-vous sûr d’avoir créé un utilisateur qui a/aura les droits de regarder la vue en question ?
- Si oui, êtes-vous sûr d’avoir autorisé l’utilisateur dans les fichiers de configuration, tel celui de
cgi.cfg
, cf les optionsauthorized_*
? - Si oui, êtes-vous sûr d’avoir relancé les différents services, tel httpd ou nagios ?
Cherchez votre oubli !
Autres moniteurs réseaux :
- Icinga2
- LibreNMS : https://www.librenms.org
- Zabbix : https://www.zabbix.com