====== Nagios ======
===== Installation =====
portugrade -N net-mgmt/nagios
Si besoin :
portupgrade -N net-mgmt/nagios-snmp-plugins
===== Configuration d'Apache =====
Ce qui suit est à insérer dans **/usr/local/etc/apache22/httpd.conf** ou dans **/usr/local/etc/apache22/extra/httpd-vhosts.conf** entre les balises d'un vhost existant :
ScriptAlias /nagios/cgi-bin/ /usr/local/www/nagios/cgi-bin/
Alias /nagios /usr/local/www/nagios/
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Admin"
AuthType Basic
AuthUSerFile /chemin/vers/le/fichier/.htpasswd
Require valid-user
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Admin"
AuthType Basic
AuthUSerFile /chemin/vers/le/fichier/.htpasswd
Require valid-user
L'accès à nagios se fera donc via **http://www.mon-domaine.com/nagios** ou **http://www.mon-vhost.com/nagios**
===== Configuration de Nagios =====
Les principaux fichiers de configurations sont situés dans **/usr/local/etc/nagios/**
Les autres fichiers de configurations sont situés dans **/usr/local/etc/nagios/objets/**
On commence par renommer tous les fichiers de configurations de "**.cfg-sample**" en "**.cfg**" :
cd /usr/local/etc/nagios/
for i in *-sample ; do finalname=`echo $i | sed -e 's/-sample//'` ; cp $i $finalname ; done
Idem pour les autres fichiers de configuration :
cd /usr/local/etc/nagios/objets/
for i in *-sample ; do finalname=`echo $i | sed -e 's/-sample//'` ; cp $i $finalname ; done
==== Fichier nagios.cfg ====
La seule chose à modifier ici est le format de la date, on renseigne donc la ligne suivante (par defaut "us") :
date_format=euro
==== Fichier cgi.cfg ====
Il permet de définir les droits des utilisateurs, Il doivent correspondre avec des utilisateurs existant dans votre fichier htpasswd.
Pour chaque type d'accès plusieurs utilisateurs peuvent être défini en les séparant pas des virgules.
authorized_for_system_information=user1,user2
authorized_for_configuration_information=user1,user2
authorized_for_system_commands=user1,user2
authorized_for_all_services=user1,user2
authorized_for_all_hosts=user1,user2
authorized_for_all_service_commands=user1,user2
authorized_for_all_host_commands=user1,user2
=== Création d'un utilisateur dans un fichier htpasswd ===
htpasswd -b /chemin/vers/le/fichier/.htpasswd user1 unmotdepasse
Le chemin d'accès pour le fichier "htpasswd" est défini dans la configuration d'apache pour nagios, il peut donc se trouver ailleurs que dans le répertoire de nagios, ce qui est utile si on a déja un fichier "htpasswd" contenant des users/password que l'on souhaite utiliser les mêmes.
==== Un fichier séparé pour les groupes d'hôtes ====
On trouve généralement la définition des groupes d'hôte dans le fichier objects/localhost.cfg, ce qui ressemble à ça :
define hostgroup{
hostgroup_name freebsd-servers ; The name of the hostgroup
alias FreeBSD Servers ; Long name of the group
members localhost,jade.sheltem.com ; Comma separated list of hosts that belong to this group
Il est possible de copier ces lignes dans un fichier objects/groups.cfg de façon à avoir un fichier séparé pour la définition des groupes d'hôtes, dans ce cas il faut penser à commenter/supprimer les lignes ci-dessus dans localhost.cfg, puis déclarer le nouveau fichier de configuration dans nagios.cfg en ajoutant cette ligne :
cfg_file=/usr/local/etc/nagios/objects/groups.cfg