GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer et configurer Nagios sous Linux

Nagios est une application populaire et open source utilisée pour la surveillance continue des systèmes, des réseaux, des services et des applications. Il surveille en permanence l'état des machines et des différents services. En cas de problème, il fournit un avertissement précoce afin que l'administrateur puisse prendre les mesures requises. Nagios effectue toutes les vérifications sur les machines locales et hôtes à l'aide de programmes externes appelés plugins. Il vous fournit également une interface Web qui permet de visualiser l'état des hôtes et des services, l'historique, les journaux et de générer des rapports.

Dans cet article, nous expliquerons comment installer et configurer Nagios sur Linux et surveiller la santé des autres serveurs Linux. Nous utiliserons les deux serveurs Debian 10 (Buster); les deux sur le même réseau. Sur le serveur de surveillance, nous allons installer le noyau Nagios, le plugin Nagios et le plugin check_nrpe. Sur l'hôte distant, nous allons installer le plugin Nagios et NRPE.

Terminologies

Comprenons quelques terminologies qui vous aident à comprendre les configurations :

Hébergeur  :Il s'agit d'un périphérique qui doit être surveillé, tel qu'une machine physique, un poste de travail ou un périphérique réseau.

Service :Il s'agit du service ou de la ressource surveillée sur l'hôte, comme HTTP, SMTP, POP, DNS, le nombre d'utilisateurs connectés, l'utilisation de la mémoire, etc.

Plug-in Nagios : Ce sont des scripts qui vérifient l'état d'un hôte ou d'un service et vérifient s'ils fonctionnent correctement. Certains plugins prédéfinis peuvent vérifier les ressources de base telles que la charge du processeur, l'utilisation du disque, les taux de ping, etc. Les plugins sont généralement situés dans /usr/local/nagios/libexec répertoire.

Module complémentaire NRPE (Nagios Remote Plugin Executor) : Le module complémentaire NRPE exécute les plugins sur les hôtes Linux distants, ce qui permet ensuite à Nagios de garder un œil sur les ressources locales (espace disque, utilisation de la mémoire, etc.). Le module complémentaire NRPE comprend :

  • Démon NRPE – Il s'exécute sur des hôtes Linux/Unix distants qui doivent être surveillés
  • Plug-in check_nrpe – Il est utilisé par le serveur de supervision Nagios

Vous devez avoir les privilèges sudo sur les deux serveurs. Les détails de nos machines sont les suivants :

Serveur de surveillance Nagios :

  • Nom d'hôte :nagios-server,
  • Adresse IP :192.168.72.158

Hôte Nagios :

  • Nom d'hôte :client
  • Adresse IP :192.168.72.159

Étape 1 - Installer Nagios Core sur Monitoring Server

Sur le serveur de surveillance Nagios, suivez les étapes ci-dessous pour télécharger et installer le noyau Nagios.

1. Installation des prérequis

Tout d'abord, nous devrons installer les prérequis sur le serveur de surveillance Nagios. Pour ce faire, mettez à jour la liste des packages à l'aide de la commande ci-dessous dans Terminal :

Mise à jour $ sudo apt

Installez ensuite les packages requis :

$ sudo apt install -y autoconf gcc libc6 make wget unzip apache2 php libapache2-mod-php7.4 libgd-dev openssl libssl-dev

2. Télécharger la source Nagios

Accédez à /tmp répertoire :

$ cd /tmp

Téléchargez ensuite le code source de Nagios en utilisant le wget commande. Nous allons télécharger la dernière version actuellement disponible de Nagios qui est 4.4.6 . Vous pouvez visiter les téléchargements de Nagios pour rechercher la version stable actuelle.

$ wget -O nagios.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.6.tar.gz

Le fichier téléchargé sera enregistré sous nagios.tar.gz dans le /tmp répertoire.

3. Compiler la source

Extraire l'archive téléchargée nagios.tar.gz en utilisant la commande ci-dessous :

$ tar -xzf nagios.tar.gz

Déplacez-vous dans le dossier extrait à l'aide du cd commande :

$ cd nagioscore-nagios-4.4.6/

Exécutez la configuration script et spécifie le chemin d'accès au répertoire de configuration du serveur Apache :

$ ./configure --with-httpd-conf=/etc/apache2/sites-enabled

Une fois le script de configuration exécuté, vous verrez le résumé ci-dessous à la fin de la sortie :

Votre configuration le script peut échouer en cas de prérequis manquant. Dans ce cas, installez les prérequis manquants et relancez le script.

Compilez maintenant Nagios en utilisant la commande ci-dessous :

$ font tout

4. Créer un utilisateur et un groupe

Créez maintenant un utilisateur et un groupe pour Nagios.

$ sudo make install-groups-users 

La commande ci-dessus créera un utilisateur système et un groupe Nagios.

Nous devrons également ajouter l'utilisateur "www-data ” aux nagios groupe.

$ sudo usermod -a -G nagios www-data

5. Installation des binaires

Ensuite, pour installer les binaires, utilisez la commande ci-dessous :

$ sudo make install

6. Installer le service/démon

Pour installer les fichiers de service, utilisez la commande ci-dessous :

$ sudo make install-daemoninit

7. Installer le mode de commande

Pour installer et configurer le fichier de commande externe, utilisez la commande ci-dessous :

$ sudo make install-commandmode

8. Installer les fichiers de configuration

Ensuite, pour installer l'exemple de configuration Nagios, utilisez la commande ci-dessous :

$ sudo make install-config

9. Installer les fichiers de configuration Apache

Cela installe les fichiers de configuration Apache, utilisez la commande ci-dessous :

$ sudo make install-webconf

Activez maintenant les modules Apache à l'aide des commandes ci-dessous :

réécriture de $ sudo a2enmod
sudo a2enmod cgi

Créer un compte utilisateur Nagiosadmin pour l'interface Web :

Nous allons maintenant créer un compte utilisateur Apache pouvant accéder à l'interface Web de Nagios.

$ sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Définissez maintenant le mot de passe pour le nagiosadmin compte d'utilisateur. Ce mot de passe sera utilisé pour accéder à l'interface web de Nagios.

Redémarrez ensuite Apache pour que les changements de configuration prennent effet :

$ sudo systemctl restart apache2

Nous avons maintenant installé avec succès le moteur principal de Nagios.

Étape 2 – Installer le plug-in Nagios sur le serveur de surveillance

Pour que le noyau Nagios fonctionne correctement, vous devrez installer le plugin Nagios.

Télécharger le plugin Nagios

Sur le serveur Nagios, accédez à /tmp répertoire :

$ cd /tmp

Téléchargez ensuite le code source du plugin Nagios en utilisant le wget commande. Nous allons télécharger la dernière version actuellement disponible du plugin Nagios qui est 2.3.3. Vous pouvez visiter la page Github pour trouver la version stable récente.

$ wget -O Nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/releases/download/release-2.3.3/nagios-plugins-2.3.3.tar. gz

Le fichier téléchargé sera enregistré sous Nagios-plugins.tar.gz dans le /tmp répertoire.

Compiler

Extraire l'archive téléchargée Nagios-plugins.tar.gz en utilisant la commande ci-dessous :

$ tar zxf nagios-plugins.tar.gz

Accédez au dossier extrait à l'aide du cd commande :

$ cd nagios-plugins-2.3.3/

Exécutez la configuration script :

$ sudo ./configure

Compilez maintenant le plugin Nagios en utilisant la commande ci-dessous :

$ sudo make 
$ sudo make install

Étape 3 – Installer le plug-in check_nrpe sur le serveur de surveillance

Nous allons maintenant installer check_nrpe plugin sur notre serveur Nagios.

Télécharger la source du plug-in

Sur le serveur Nagios, accédez à /tmp répertoire :

$ cd /tmp

Téléchargez ensuite le code source de check_nrpe à l'aide de la commande wget. Nous allons télécharger la dernière version disponible de check_nrpe qui est 4.0.3. Vous pouvez visiter la page Github pour trouver la version stable récente.

$ wget -O Nagios-nrpe.tar.gz https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-4.0.3/nrpe-4.0.3.tar.gz

Le fichier téléchargé sera enregistré sous Nagios-nrpe.tar.gz dans le /tmp répertoire.

Compilation des sources

Extraire l'archive téléchargée nagios.tar.gz en utilisant la commande ci-dessous :

$ tar -xzf Nagios-nrpe.tar.gz

Accédez au dossier extrait à l'aide du cd commande :

$ cd nrpe-4.0.3/

Exécutez la configuration script :

$ sudo ./configure

Compilez maintenant le check_nrpe en utilisant la commande ci-dessous :

$ sudo make check_nrpe

$ sudo make install-plugin

Étape 4 - Configuration de Nagios

Maintenant, nous allons configurer le fichier de configuration principal de Nagios. Editez le fichier de configuration de Nagios nagios.cfg en utilisant la commande ci-dessous :

$ sudo nano /usr/local/nagios/etc/nagios.cfg

Trouvez maintenant la ligne ci-dessous dans le fichier et décommentez-la en supprimant le # caractère à partir du début de la ligne.

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

La ligne ci-dessus spécifie le répertoire qui contient un fichier de configuration pour tous les hôtes que le serveur Nagios surveillera. Maintenant, enregistrez et fermez le fichier de configuration.

Nous allons maintenant créer le répertoire dans le chemin défini ci-dessus :

$ sudo mkdir /usr/local/nagios/etc/servers

Configurer les contacts de messagerie

Nous allons maintenant configurer les contacts qui doivent être notifiés en cas d'événement. Modifiez la configuration des contacts Nagios à l'aide de la commande ci-dessous :

Afin de recevoir des alertes du serveur de surveillance Nagios, vous devrez configurer les contacts. Ouvrez les contacts fichier de configuration, et indiquez l'adresse e-mail à laquelle vous souhaitez recevoir les e-mails de Nagios :

$ sudo nano /usr/local/nagios/etc/objects/contacts.cfg

Dans la directive email, remplacez [email protected]localhost avec votre propre adresse e-mail, puis enregistrez et fermez le fichier.

Configurer check_nrpe

Maintenant, pour utiliser check_nrpe plugin, nous ajouterons une nouvelle commande dans la commande fichier de configuration. Modifiez le fichier de configuration de la commande commands.cfg en utilisant la commande ci-dessous :

$ sudo nano /usr/local/nagios/etc/objects/commands.cfg  

Ajoutez les lignes suivantes à la fin de commands.cfg fichier, puis enregistrez-le et fermez-le :

define command{

nom_commande check_nrpe

ligne_commande $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

}

Démarrez maintenant le service Nagios :

$ sudo systemctl start Nagios.service

Étape 5 - Accéder à l'interface Web de Nagios

Accédez maintenant à l'interface Web de Nagios en visitant l'adresse ci-dessous dans n'importe quel navigateur Web :

http://nagios-server-ip/nagios

Dans notre scénario, ce serait :

http://192.168.72.158/nagios

Dans le champ Authentification requise boîte de dialogue, tapez nagiosadmin comme nom d'utilisateur et mot de passe que vous avez définis précédemment.

Une fois connecté à l'interface Web, vous verrez la page Web par défaut de Nagios. Accédez aux Hôtes onglet dans la barre latérale gauche pour afficher les hôtes surveillés.

À l'heure actuelle, vous ne verrez qu'un seul hôte "localhost ” qui est le serveur Nagios lui-même. Afin de surveiller d'autres hôtes, vous devrez installer le NRPE démon sur eux.

Étape 6 - Configuration de l'hôte à distance

Maintenant, vous devrez installer le plugin Nagios et NRPE sur les hôtes qui doivent être surveillés sur le serveur Nagios.

1. Installer le plugin Nagios sur l'hôte distant

Dans l'hôte distant (client) qui doit être surveillé, suivez les étapes ci-dessous pour installer le plugin Nagios.

1. Tout d'abord, mettez à jour l'apt :

Mise à jour $ sudo apt

2. Lancez ensuite la commande ci-dessous pour installer les packages requis :

$ sudo apt install autoconf gcc libmcrypt-dev make libssl-dev dc build-essential gettext

3. Maintenant, accédez à /tmp et téléchargez le plugin Nagios.

$ cd /tmp
$ wget -O Nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/releases/download/release-2.3.3/nagios-plugins-2.3.3.tar. gz

4. Extrayez l'archive téléchargée :

$ tar -zxf nagios-plugins.tar.gz

5. Déplacez-vous dans le dossier extrait et exécutez la configuration script :

$ cd nagios-plugins-2.3.3// 
$ sudo ./configure

6. Compilez le plugin :

$ sudo make 
$ sudo make install

2. Installer le démon NRPE sur l'hôte distant

Suivez les étapes ci-dessous pour installer NRPE sur l'hôte distant.

1. Tout d'abord, mettez à jour l'apt :

Mise à jour $ sudo apt

2. Exécutez la commande ci-dessous pour installer les prérequis :

$ sudo apt install -y autoconf automake gcc libc6 libmcrypt-dev make libssl-dev

3. Accédez maintenant à /tmp et téléchargez NRPE.

$ cd /tmp 
$ wget -O nrpe.tar.gz https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-4.0.3/nrpe-4.0.3.tar. gz

4. Extrayez l'archive téléchargée :

$ tar xzf nrpe.tar.gz

5.  Déplacez-vous dans le dossier extrait et exécutez le script de configuration :

$ sudo ./configure --enable-command-args

6. Compilez le NRPE avec les commandes suivantes :

$ sudo fait tout
$ make install-groups-users

$ sudo make install

$ sudo make install-config

$ sudo make install-init

3. Configurer le pare-feu

Maintenant, si un pare-feu s'exécute sur votre hôte distant, vous devrez ouvrir le port 5666 (utilisé par NRPE) via celui-ci.

$ sudo ufw allow 5666/tcp

4. Mettre à jour la configuration NRPE

Ouvrez maintenant le fichier de configuration NRPE dans l'hôte distant :

$ sudo nano /usr/local/nagios/etc/nrpe.cfg

Vous devrez rechercher et modifier les entrées ci-dessous :

Ajouter l'adresse IP du client :

server_address=192.168.72.159

Ajouter l'adresse IP du serveur Nagios :

allowed_hosts=127.0.0.1,192.168.72.158

Remplacez également /dev/vda1 avec votre système de fichiers racine :

commande[check_disk]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1

Lancez ensuite le service NRPE :

$ sudo systemctl start nrpe.service

Vérifiez maintenant si le service NRPE fonctionne correctement :

$ sudo systemctl status nrpe.service

L'actif (en cours d'exécution) dans la sortie ci-dessous indique que le service fonctionne correctement sans aucun problème. Vous pouvez également voir que le NRPE autorise la connexion depuis 192.168.72.158 qui est l'adresse IP du serveur Nagios.

Maintenant, pour vérifier si le check_nrpe sur le serveur Nagios peut communiquer avec le NRPE sur l'hôte distant , lancez cette commande sur le serveur Nagios :

$ /usr/local/nagios/libexec/check_nrpe -H remote_host_ip

Vous devriez recevoir la sortie similaire suivante (numéro de version NRPE).

Étape 7 - Ajouter la configuration de l'hôte au serveur Nagios

Maintenant dans le serveur de supervision Nagios, vous devrez créer des fichiers de configuration séparés dans le répertoire /usr/local/nagios/etc/servers / pour tous les hôtes distants que vous devez surveiller.

Pour notre machine hôte, nous allons créer un nouveau fichier de configuration client.cfg :

$ sudo nano /usr/local/nagios/etc/servers/client.cfg

Remplacer client avec le nom de votre hébergeur :

Ajoutez maintenant la définition d'hôte au nouveau fichier de configuration en remplaçant la valeur de host_name avec le nom d'hôte distant, alias avec une courte description et l'adresse avec l'adresse IP de l'hôte distant.

Cette configuration vérifiera si la machine hôte est en marche ou en panne.

 définir l'hôte {

utiliser linux-server

nom_hôte client

alias machine cliente

adresse 192.168 .72.159

max_check_attempts 5

}

Ajoutez maintenant une définition de service au fichier de configuration pour surveiller l'hôte distant. Remplacez la valeur de host_name avec le nom d'hôte distant.

Remarque : Ces définitions de service utiliseront les commandes préconfigurées dans le /usr/local/nagios/etc/nrpe.cfg fichier sur l'hôte distant.

Ajoutez le bloc de service suivant pour surveiller la charge du processeur sur l'hôte distant

define service {

use generic-service

host_name client

service_description CPU Load

check_command check_nrpe ! check_load

}


c sur l'hôte distant :
define service{

use generic-service

host_name client

service_description Nombre total de processus

check_command check_nrpe ! check_total_procs

}

Ajoutez le bloc de service suivant pour surveiller l'utilisation du disque sur l'hôte distant :

define service { 
use generic-service     

host_name                      client
      service_description             Check Disk
      check_command                   check_nrpe!check_disk

}

Ajoutez le bloc de service suivant pour surveiller le nombre d'utilisateurs actuellement connecté sur l'hôte distant :

define service { 
use generic-service     

host_name                      client
      service_description             Utilisateurs actuels
      check_command                   check_nrpe!check_users }
}
pré>

Maintenant, enregistrez et fermez le fichier de configuration.

Redémarrez le service Nagios pour appliquer les changements de configuration :

$ sudo systemctl redémarrer Nagios

Accédez maintenant à l'interface Web en utilisant le http://nagios-server-ip/nagios. Attendez un moment et votre hôte distant sera ajouté à l'interface Web de Nagios.

Accédez à Hôtes dans la barre de navigation de gauche et vous verrez votre hôte distant y être répertorié.

Allez ensuite dans les Services et vous verrez l'état de tous les services pour un hôte que vous avez configuré pour la surveillance.

Dans cet article, nous avons expliqué comment installer et configurer la solution de supervision Nagios sous Linux. Nous avons également expliqué comment configurer des hôtes distants pour la surveillance. Vous pouvez désormais surveiller facilement la santé des hôtes Linux et des services qui y sont exécutés.

Cliquez ici si vous souhaitez surveiller vos serveurs avec Zabbix.


Debian
  1. Comment installer et configurer Nagios sur Ubuntu 18.04

  2. Comment installer et configurer Nagios sur CentOS 7

  3. Comment installer et configurer Elasticsearch sur Rocky Linux 8

  4. Comment installer et configurer samba sur Linux Ubuntu ?

  5. Comment installer et configurer EMC PowerPath sous Linux

Comment installer et configurer Memcached sur Ubuntu Linux

Comment installer et configurer Redis sur le système Linux

Comment installer et configurer Nagios dans Ubuntu Linux

Comment installer et configurer TeamViewer sur Ubuntu Linux

Comment installer et configurer Flameshot sur Ubuntu Linux

Comment installer et configurer le serveur DNS sous Linux