InstallationServerEtAgentNRPEMise en oeuvre de NRPE sous CentOS : Sur le serveur NAGIOS : Si vous exécutez des connexions NRPE par connexion, certaines distributions, telles que Fedora Core 6, ne sont pas fournies avec xinetd installé par défaut. Installez-le avec la commande suivante : # yum install xinetd Installation de l'application de NRPE : # cd /opt # wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-3.2.1/nrpe-3.2.1.tar.gz # tar xzf nrpe-3.2.1.tar.gz # cd /nrpe-3.2.1 # ./configure Si vous avez l'erreur suivante lors de la compilation de NRPE : ... checking for type of socket size... size_t checking for SSL headers... SSL headers found in /usr checking for SSL libraries... configure: error: Cannot find ssl libraries Alors, installer le paquet suivant : # yum install openssl-devel # make all Créer les groupes et utilisateurs, si vous avez installé NAGIOS avant, cette commande vous indiquera que les groupes et utilisateurs existent : # make install-groups-users Installation du plugin NRPE, le démon et le fichier de configuration du démon : # make install # make install-config Si vous voulez exécuter NRPE par connexion sous inetd, xinetd, launchd, systemd, smf, etc, exécutez la commande suivante : # make install-inetd Si vous voulez exécuter NRPE tout le temps sous init, launchd, systemd, smf, etc., exécutez la commande suivante : # make install-init Redémarrer les différents services : # systemctl reload xinetd # systemctl enable nrpe && systemctl start nrpe Tester le démon NRPE localement : # netstat -at | egrep "nrpe|5666" ![]() Dans le fichier '''/etc/services, ajouter la ligne suivante : nrpe 5666/tcp # systemctl restart xinetd.service Vérifiez que le démon NRPE est bien fonctionnel : # /usr/local/nagios/libexec/check_nrpe -H localhost NRPE v3.2.1 Client NRPE sous debian : Installation de l'application NRPE : # apt-get install nagios-nrpe-server Modifier le fichier de configuration suivant : # vim /etc/nagios/nrpe.cfg log_file=/var/log/nrpe.log nrpe_user=nagios nrpe_group=nagios allowed_hosts=194.214.124.203 # adresse IP du serveur NAGIOS command[check_users]=/usr/lib/nagios/plugins/check_users -w 5 -c 10 command[check_load]=/usr/lib/nagios/plugins/check_load -w 15,10,5 -c 30,25,20 #command[check_hda1]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1 command[check_hda1]=/usr/lib/nagios/plugins/check_disk -u GB -w 20% -c 10% -p /dev/sda1 command[check_zombie_procs]=/usr/lib/nagios/plugins/check_procs -w 5 -c 10 -s Z command[check_total_procs]=/usr/lib/nagios/plugins/check_procs -w 150 -c 200</span> Sur le serveur NAGIOS : Tester la connexion avec un hôte distant : # /usr/local/nagios/libexec/check_nrpe -H 192.168.0.1 NRPE v3.0.1 Redémarrer le service nrpe : # systemctl status nagios-nrpe-server Client NRPE sous CentOS 6 : # yum install nrpe nagios-plugins-users nagios-plugins-load nagios-plugins-swap nagios-plugins-disk nagios-plugins-procs # vim /etc/nagios/nrpe.cfg Modifier et activer les attributs suivants : # vim /etc/nagios/nrpe.cfg log_file=/var/log/nrpe.log nrpe_user=nagios nrpe_group=nagios allowed_hosts=194.214.124.203 # adresse IP du serveur NAGIOS Pour le fichier de log, qui n'existe pas, créé le : # vim /var/log/nrpe.log # chmod 666 /var/log/nrpe.log Ajouter le port nrpe dans le fichier /etc/services Ouvrez le fichier et faites une recherche en tapant 5636 Ajouter la ligne suivante : nrpe 5666/tcp # NRPE Démarrer le service nrpe sur Centos 6 : # /etc/init.d/nrpe restart # chkconfig nrpe on Client NRPE sous CentOS 7 : # yum install nrpe nagios-plugins-users nagios-plugins-load nagios-plugins-swap nagios-plugins-disk nagios-plugins-procs # vim /etc/nagios/nrpe.cfg Modifier et activer les attributs suivants : # vim /etc/nagios/nrpe.cfg log_file=/var/log/nrpe.log nrpe_user=nagios nrpe_group=nagios allowed_hosts=194.214.124.203 # adresse IP du serveur NAGIOS Pour le fichier de log, qui n'existe pas, créé le : # vim /var/log/nrpe.log # chmod 666 /var/log/nrpe.log Ajouter le port nrpe dans le fichier /etc/services Ouvrez le fichier et faites une recherche en tapant 5636 Ajouter la ligne suivante : nrpe 5666/tcp # NRPE Créé le fichier /etc/nrpe.d/op5_commands.cfg et ajoutez le contenu suivant : ################################################################################ # # op5-nrpe command configuration file # # COMMAND DEFINITIONS # Syntax: # command[<command_name>]=<command_line> # command[users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10 command[load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20 command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20 command[swap]=/usr/lib64/nagios/plugins/check_swap -w 20% -c 10% command[root_disk]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p / -m command[usr_disk]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /usr -m command[var_disk]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /var -m command[zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z command[total_procs]=/usr/lib64/nagios/plugins/check_procs -w 190 -c 200 command[proc_named]=/usr/lib64/nagios/plugins/check_procs -w 1: -c 1:2 -C named command[proc_crond]=/usr/lib64/nagios/plugins/check_procs -w 1: -c 1:5 -C crond command[proc_syslogd]=/usr/lib64/nagios/plugins/check_procs -w 1: -c 1:2 -C syslog-ng command[proc_rsyslogd]=/usr/lib64/nagios/plugins/check_procs -w 1: -c 1:2 -C rsyslogd Démarrer le service nrpe sur Centos 7 : # systemctl restart nrpe.service # systemctl enable nrpe.service Créer les définitions de commande : # nano /usr/local/nagios/etc/objects/commands.cfg define command{ command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ } Vous êtes maintenant prêt pour ajouter des services afin de surveiller des serveurs distants. Créer une définition de hôte et service : define service{ use generic-service host_name remotehost service_description CPU Load check_command check_nrpe!check_load } define service{ use generic-service host_name remotehost service_description Current Users check_command check_nrpe!check_users } define service{ use generic-service host_name remotehost service_description /dev/hda1 Free Space check_command check_nrpe!check_sda1 } define service{ use generic-service host_name remotehost service_description Total Processes check_command check_nrpe!check_total_procs } define service{ use generic-service host_name remotehost service_description Zombie Processes check_command check_nrpe!check_zombie_procs } # /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg # systemctl restart nagios.service Attention : En fait, il faut renseigner le mot de passe dans le define command du plugin check_nt : |