Usando Linux para muchas cosas y disfrutando de videojuegos, en dispositivos moviles, consolas y pc. Using Linux for many things and enjoying video games, mobile devices, consoles and pc

Como instalar NRPE en Nagios paso a paso

DriveMeca instalando monitoreo remoto de Nagios con NRPE
No te conformas con solo verificar uptime de otros equipos por medio de Nagios, quieres hacerlo sin quitar tus firewalls? Entonces necesitas leer este articulo en el cual mostrare como instalar NRPE en Nagios paso a paso para monitorear un equipo Linux Ubuntu. Las siglas NRPE quieren decir Nagios Remote Plugin Executor que viene a ser ejecutor de plugin remoto Nagios.
NRPE se instala en el servidor Nagios y en los equipos (servidores y equipos desktop Linux) a los cuales no podemos acceder por firewall o  porque queremos sacar info como usuarios logeados, espacio en disco, etc lo cual normalmente solo es posible chequear localmente. Por tanto debemos instalar (compilar) lo mismo en el servidor que en el cliente.

Requerimientos para NRPE en servidor y cliente

  • Accesos de root al servidor Nagios
  • Accesos de root a los equipos monitoreados

IP's de equipos:

Servidor: 10.10.10.4
Cliente Ubuntu: 10.10.20.33

Primeros pasos en Servidor Nagios con NRPE

-Descargamos, descomprimimos y entramos a su directorio
wget -c http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz
tar xzvf nrpe-2.15.tar.gz
cd nrpe-2.15

-Compilamos e instalamos
./configure 
...
..
*** Configuration summary for nrpe 2.15 09-06-2013 ***:

 General Options:
 -------------------------
 NRPE port:    5666
 NRPE user:    nagios
 NRPE group:   nagios
 Nagios user:  nagios
 Nagios group: nagios

make all
cd ./src/; make ; cd ..
make[1]: Entering directory `/root/nrpe-2.15/src'
gcc -g -O2 -I/usr/include/openssl -I/usr/include -DHAVE_CONFIG_H -I ../include -I ./../include -o nrpe ./nrpe.c ./utils.c ./acl.c -L/usr/lib64  -lssl -lcrypto -lnsl -lwrap  
gcc -g -O2 -I/usr/include/openssl -I/usr/include -DHAVE_CONFIG_H -I ../include -I ./../include -o check_nrpe ./check_nrpe.c ./utils.c -L/usr/lib64  -lssl -lcrypto -lnsl 
make[1]: Leaving directory `/root/nrpe-2.15/src'

*** Compile finished ***

Pasos en equipo Ubuntu Linux a monitorear con NRPE

-Abrimos una consola e instalamos dependencias
sudo apt install libssl-dev apt-file xinetd

-Actualizamos cache y buscamos. OJO, en el caso de un equipo de 64bits, el path sera diferente, por eso es mejor buscarlo con apt-file
sudo apt-file update

sudo apt-file search libssl | grep libssl-dev
libssl-dev: /usr/lib/i386-linux-gnu/libssl.a
libssl-dev: /usr/lib/i386-linux-gnu/libssl.so
libssl-dev: /usr/lib/i386-linux-gnu/pkgconfig/libssl.pc
libssl-dev: /usr/share/doc/libssl-dev/changelog.Debian.gz
libssl-dev: /usr/share/doc/libssl-dev/changelog.gz
libssl-dev: /usr/share/doc/libssl-dev/copyright

-Descargamos, descomprimimos y entramos a su directorio
wget -c http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz
tar xzvf nrpe-2.15.tar.gz
cd nrpe-2.15

-Compilamos tomando el path para with-ssl-lib del paso anterior con apt-file
./configure --with-ssl=/usr/bin/openssl --with-ssl-lib=/usr/lib/i386-linux-gnu
...
..
*** Configuration summary for nrpe 2.15 09-06-2013 ***:

 General Options:
 -------------------------
 NRPE port:    5666
 NRPE user:    nagios
 NRPE group:   nagios
 Nagios user:  nagios
 Nagios group: nagios

-Terminamos de compilar
make all

-Nos creamos el usuario nagios para ejecutar nrpe cuidando de colocarle contraseña cuando lo pida
sudo adduser nagios

-Copiamos el nrpe binario y su cfg
sudo mkdir -p /usr/local/nagios/etc /usr/local/nagios/bin /usr/local/nagios/libexec
sudo cp sample-config/nrpe.cfg /usr/local/nagios/etc/
sudo cp src/nrpe /usr/local/nagios/bin/
sudo chown -R nagios.nagios /usr/local/nagios

-Modificamos el cfg para agregar la ip del servidor Nagios. En mi caso, el disco es un SATA (partición sda5) por lo cual modifico el comando para verificar espacio en disco. Salimos guardando
sudo vi /usr/local/nagios/etc/nrpe.cfg
allowed_hosts=127.0.0.1,10.10.10.4
command[check_sda5]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda5

-Habilitamos la conexión a través de iptables.  Salimos guardando
sudo vi /etc/hosts.allow
nrpe: 10.10.10.4
nrpe: 127.0.0.1

-Copiamos y configuramos el xinetd para ejecutar el nrpe
sudo cp sample-config/nrpe.xinetd /etc/xinetd.d/nrpe
sudo service xinetd reload

-Probamos funcione y salimos presionando Control ]
telnet localhost 5666
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
^]

telnet> quit

-Descargamos los plugins de Nagios y comenzamos a compilar
cd 
wget -c http://www.nagios-plugins.org/download/nagios-plugins-2.1.1.tar.gz
tar xzvf nagios-plugins-2.1.1.tar.gz
cd nagios-plugins-2.1.1
./configure

-Compilamos
make
sudo make install

Pasos para ejecutar NRPE en Nagios

-Copiamos el plugin y cambiamos sus atributos
cp src/check_nrpe /usr/local/nagios/libexec/
chown nagios.nagios /usr/local/nagios/libexec/check_nrpe
chmod 755 /usr/local/nagios/libexec/check_nrpe

-Creamos el comando para NRPE
vi /usr/local/nagios/etc/objects/commands.cfg
define command{
        command_name check_nrpe
        command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$
}

-Hacemos una copia de un cfg para crear el de nuestro equipo Linux Ubuntu y mas adelante de otros Linux
cp /usr/local/nagios/etc/objects/localhost.cfg /usr/local/nagios/etc/objects/ubuntu.cfg

-Modificamos el fichero y agregamos los datos del equipo ubuntu (host) y el servicio para chequear el disco /
vi /usr/local/nagios/etc/objects/ubuntu.cfg
define host{
        use                     linux-server
        host_name         bcksrv
        alias                   Servidor Ubuntu BackupPC
        address              10.10.20.33
        }

define service{
        use                             local-service         
        host_name                 ubuntu
        service_description   Disk
        check_command       check_nrpe!check_sda3
        }

-Activamos el nuevo grupo, colocamos nuestra zona horaria y el email del administrador
vi /usr/local/nagios/etc/nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/linux.cfg
use_timezone=America/Bogota
admin_email=admin@gmail.com

-Corregimos permisos
chown nagios.nagios /usr/local/nagios/etc/objects/*

-Verificamos y reiniciamos Nagios
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
service nagios reload

-Abrimos un browser y ya nos debe aparecer el equipo Ubuntu con NRPE. Ya seria agregar mas cosas a monitorear por medio de NRPE
DriveMeca instalando monitoreo remoto de Nagios con NRPE

Nagios es una potente herramienta de monitoreo de dispositivos, equipos, etc y una forma relativamente sencilla de agregarlos es por medio de NRPE para poder colocar mas chequeos locales. Que tal te pareció este articulo, ya usas Nagios con NRPE, como te va con la solución, escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark