El addon NRPE consta de dos partes:
- NRPE
Es la parte del paquete que se ejecuta en el host remoto, encargado de procesar los requerimientos de la otra parte del paquete, el plugin check_nrpe que se ejecuta en el servidor Nagios. NRPE recibe el pedido de ejecución desde el check_nrpe, ejecuta la sentencia asociada al pedido recibido y devuelve la salida de la ejecución al plugin.
- check_nrpe (PLUGINS)
Es el plugin que corre en el server que ejecuta Nagios y que se comunica con el NRPE instalado en los hosts remotos. El plugin usa la salida de la ejecución remota y el return code para mostrar el estado del host remoto en la interfaz del Nagios.
Seguramente los que tengan conocimiento del plugin check_by_ssh (permite la ejecución remota de plugins a través de SSH) se preguntarán para que usar NRPE si SSH es más seguro. La razón es de performance, el uso de SSH genera bastante carga de CPU, tanto en el host remoto como en el servidor. Esto no es un tema menor cuando tenemos que monitorear cientos de host.
Tenemos que crear en el host remoto un usuario sin privilegios para la ejecución del NRPE:
Deben bajar la última versión del pluggin NRPE este es el enlace más reciente que hay a día de hoy:
http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gzSi el siguiente enlace no funciona aquí está la pagina principal de Nagios:
http://www.nagios.org
root@zimbra6:/# cd /home/user/Downloads/nrpe-2.12/
chown -R nagios.nagios /usr/local/nagios/libexec
make all
make install-plugin
make install-daemon
make install-daemon-config
make install-xinetd (este paso es opcional pero recomendable y solo funcionara en caso que este instalado Xinetd en nuestro servidor.)
Vamos a editar el archivo /etc/services y agregamos la siguiente opción:
Nota: si no existe en el directorio /etc/xinet.d/ ningún archivo nrpe nos hemos olvidado de lanzar el último comando make install-xinetd
Este es el contenido de mi archivo /etc/xinet.d/nrpe
flags = REUSE
socket_type = stream
port = 5666 (por defecto este es el Puerto)
wait = no
user = nagios (Usuario que hemos creado al principio)
group = nagios (Grupo que hemos creado al principio)
server = /usr/local/nagios/bin/nrpe
server_args = -c /usr/local/nagios/etc/nrpe.cfg –inetd
log_on_failure += USERID
disable = no
only_from = 127.0.0.1
}
# See the manual pages hosts_access(5) and hosts_options(5).
#
# Example: ALL: LOCAL @some_netgroup
# ALL: .foobar.edu EXCEPT terminalserver.foobar.edu
#
# If you’re going to protect the portmapper use the name “portmap” for the
# daemon name. Remember that you can only use the keyword “ALL” and IP
# addresses (NOT host or domain names) for the portmapper, as well as for
# rpc.mountd (the NFS mount daemon). See portmap(8) and rpc.mountd(8)
# for further information.
#
ALL: 10.0.0.0/24
Descarga de los plugins:
http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gzcd Nagios-plugins-1.415/
Al finalizar la configuración sin ningún error compilaremos nuestros plugins de la siguiente forma: