Table des matières
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/ <Directory /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 </Directory> <Directory /usr/local/www/nagios/cgi-bin> Options ExecCGI AllowOverride None Order allow,deny Allow from all AuthName "Nagios Admin" AuthType Basic AuthUSerFile /chemin/vers/le/fichier/.htpasswd Require valid-user </Directory>
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