Nagios sobre Ubuntu

Como nos dicen en www.nosolounix.com, Nagios es un sistema de monitorización de redes de código abierto. Vigila los servicios y equipos especificados, alertando cuando el comportamiento de los mismos no sea el deseado. Entre sus características principales están la monitorización de servicios de red (SMTP, POP3, HTTP, SNMP, etc), la monitorización de los recursos de sistemas hardware (carga del procesador, uso de los discos, memoria,estado de los puertos…), independencia de sistemas operativos y la posibilidad de monitorización remota mediante túneles SSL cifrados o SSH.

Ahora vamos a aprender como instalar Nagios 3.4.4 + nagios-plugin-1.4.16 + Vautour Style + NRPE en equipos remotos.

Para empezar, lo primero que necesitamos son los paquetes de Nagios que podemos descargar desde el sitio del proyecto, nosotros en primer lugar utilizaremos:

Antes de comenzar la instalación y para que no tengamos problemas a la hora de empezar, debemos tener instalados otros paquetes que son necesarios (si estas aquí muchos de ellos ya los tendrás), estos paquetes son;

  • Apache2
  • PHP
  • GCC (librerías de desarrollo y compilación)
  • GD (librerías de desarrollo)

Para poder instalar Nagios creamos una cuenta de usuario “nagios” con su contraseña.

# useradd -m -s /bin/bash nagios

Le damos un password, que introduciremos dos veces:

# passwd nagios

Creamos un nuevo grupo nagcmd, para permitir comandos externos:

# groupadd nagcmd

Metemos al usuario nagios en el grupo nagcmd:

# usermod -a -G nagcmd nagios

Metemos al usuario de apache www-data en el grupo nagcmd, ya que la aplicación lo necesita para hacer sus gestiones:

# usermod -a -G nagcmd www-data

Una vez hemos preparado el sistema para instalar Nagios en Ubuntu, podemos empezar con la compilación e instalación. En la página oficial de Nagios podéis encontrar los paquetes ya compilados y listos para instalar. Sin embargo, éstos no siempre son los de la última versión, por eso vamos a compilarlos nosotros mismos.

Vamos a donde hemos instalado los paquetes. Descomprimimos el paquete de nagios:

# tar xzf nagios-3.2.1.tar.gz

En la carpeta que se ha creado ejecutamos el script de configuración de Nagios pasándole el nombre del grupo que acabamos de crear:

# ./configure --with-command-group=nagcmd

Compilamos el código fuente de Nagios:

# make all

Por último, instalamos los archivos binarios de Nagios en Ubuntu:

# make install

Ahora vamos instalar otros scripts y configuraciones que nos serán de utilidad más adelante.

Instalar script de inicio:

# make install-init

Instalar ejemplos de ficheros de configuración:

# make install-config

Dar permisos al directorio de comandos externos:

# make install-commandmode

Ahora podemos decir que Nagios esta instalado, para proceder a su configuración nos dirigiremos al directorio “usr/local/nagios/etc”.

En primer lugar vamos a modificar la dirección de e-mail que usaremos para las notificaciones de Nagios, para ello abrimos contacts.cfg con un editor de textos:

# nano /usr/local/nagios/etc/objects/contacts.cfg

Ahora debemos configurar Nagios para poder acceder a él vía interfaz web.

Instalamos el archivo de configuración de Nagios para Apache. Con esto conseguimos poder ver la interfaz web de Nagios en Apache:

# make install-webconf

Creamos un usuario (nagiosadmin) que pueda acceder vía web a Nagios:

# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Reiniciamos apache para que los cambios surtan efecto:

# /etc/init.d/apache2 reload

Una vez que hemos configurado e instalado Nagios en Ubuntu vamos a la carpeta donde tenemos el paquete de los plugins y descomprimimos el paquete de la misma forma que lo hemos hecho antes para poder instalarlos:

# tar xzf nagios-plugins-1.4.14.tar.gz

Entramos en la carpeta que se crea para compilar e instalar los plugins:

# ./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl=/usr/bin/openssl --enable-perl-modules
# make
# make install

Para hacer que Nagios se inicie junto a Ubuntu usamos el script que hemos generado antes con “make install-init”:

# ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

Verificamos que las configuraciones e instalación de Nagios en Ubuntu están bien:

# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Si todo ha ido bien iniciamos Nagios:

# /etc/init.d/nagios start

Una vez iniciado tendríamos que poder entrar a Nagios por un explorador Web. Abrimos un explorador web y entramos en: http://localhost/nagios/

Nos pedirá el nombre de usuario (nagiosadmin) con la contraseña que hemos elegido, y con esto podremos entrar en la página de inicio de Nagios.

Cuando hayamos realizado los pasos anteriores ya tendremos Nagios instalado.

Ahora vamos a ver como podemos modificar la apariencia del frontend instalando un estilo diferente al que tiene por defecto. El que he elegido se llama Vantour Style.

  • Vautour Style

Para instalar simplemente tendremos que descomprimir en el directorio de nagios “/usr/local/nagios/share/”

# unzip vautour_style.zip -d /usr/local/nagios/share/

Todo esto nos vale para monitorizarel servidor donde tenemos instalado Nagios pero, ¿que ocurre si queremos monitorizar otros elementos de la red como puedan ser otros servidores o clientes o incluso switchs?. Para eso necesitamos NRPE y es lo que vamos a ver a continuación.

NRPE es el software que nos permite la monitorización de otros equipos de la red.

Para que esto sea posible tendremos que instalar NRPE tanto en el servidor como en el equipo remoto.

Instalación en el host remoto.

Como hicimos al instalar Nagios, tenemos que crear el usuario “nagios” y el grupo “nagios”

# adduser nagios
# adduser nagios nagios

Descargamos e instalamos el plugin de Nagios. Una vez descargado.

# tar xzf nagios-plugins-1.4.16.tar.gz
# ./configure
# make
# make install

Instalamos «Xinetd» para el Dameon del nuevo servicio NRPE

# apt-get install xinetd

Descargamos e instalamos NRPE. Una vez descargado.

# tar xzf nrpe-2.12.tar.gz
#./configure
#make all
#make install-plugin
#make install -daemon
#make install-daemon-config
#make install-xinetd

Editamos el archivo “/etc/xinet.d/nrpe para que solo acepte peticiones de nuestro servidor Nagios

only_from = 127.0.0.1 192.168.1.10 (IP del servidor Nagios)

Añadimos a “/etc/services/” el puerto que utiliza NRPE

nrpe 5666/tcp # NRPE

Reiniciamos xinetd

# /etc/init.d/xinetd restart

Pruebas de funcionamiento

# netstat -ant | grep 5666
tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN
# /usr/local/nagios/libexec/check_nrpe -H localhost
NRPE v2.13

También debemos instalar NRPE en el servidor Nagios, esto lo hacemos de la siguiente manera.

Descomprimimos el paquete de NRPE

# tar xvf nrpe-2.13.tar.gz

Desde el directorio que se ha creado compilamos.

#./configure –prefix=/opt –with-nagios-user=nagios –with-nagios-group=nagios
# make all
#make install-plugin

Comprobamos que funciona.

# netstat -at | grep nrpe
tcp 0 0 *:nrpe *:* LISTEN

Con esto solo faltaría editar los archivos de configuración de Nagios para añadir los equipos que queramos monitorizar, para no hacer mas extenso este tutorial os dejo un enlace donde se explica muy bien.

http://www.nosolounix.com/2010/06/configurar-nagios-en-ubuntu.html