Está en la página 1de 24

IÉRCOLES, 23 DE ABRIL DE 2014

Cómo instalar y configurar Nagios 3


Nagios es un sistema de monitorización de redes open source (código abierto)
que nos permite monitorizar y controlar tanto equipos (hardware)
como servicios (software), recibiendo alertas y avisos cuando existan anomalías
en los mismos o el comportamiento no sea el deseado.

En este tutorial vamos a aprender cómo instalar y configurar Nagios3 para


monitorizar los siguientes servicios y aspectos hardware de los equipos.

 Que todos los equipos del esquema estén funcionando correctamente (no
estén caídos).
 Que el servicio HTTP de Willy esté funcionando correctamente.
 Que el servicio SSH de DesOrden, willy y Mireal estén funcionando
correctamente.
 Monitoriza el número de procesos y carga del procesador de willy.

1) Escenario

Nuestro escenario para mostrar la instalación, configuración y monitorización de


Nagios la realizaremos con máquinas virtuales, optando por la gratuita Virtual Box.
En el siguiente esquema de red podemos ver las IPs asignadas en cada máquina
virtual. Tenemos 3 máquinas Debian: Nagios, DesOrden y willy.
2) Simulación con Máquinas Virtuales

Interfaces Máquina Real


En Virtual BoxVirtualBox nos vamos a ir a Archivo > Preferencias > Red y vamos a
crear una nueva interfaz de solo anfitrión con dirección 10.0.0.1 y máscara
255.255.255.0 que se llamará Host-Only Adapter #2.
Si hacemos un ipconfig en nuestra máquina real, veremos que tenemos 3
Adaptadores de red: la conexión de área local, la Host-Only Network (que se crea
por defecto al instalar Virtual Box) y Host-Only Network #2 que es la que
acabamos de crear ahora mismo.
Interfaces Máquina Nagios
La configuración de red en Virtual Box de nuestra máquina Nagios será la
siguiente:

Adaptador 1
Conectado a: Adaptador sólo-anfitrión
Nombre: VirtualBox Host-Only Ethernet Adapter #2
Editando el archivo /etc/network/interfaces vamos a configurar nuestra máquina
Nagios de la siguiente forma:

nano /etc/network/interfaces

auto eth0
iface eth0 inet static
address 10.0.0.100
netmask 255.255.255.0
gateway 10.0.0.1

Guardamos el archivo y reiniciamos nuestros servicios de red.

service networking restart


Interfaces Máquina willy
La configuración de red de nuestra máquina willy en Virtual Box será la misma que
en la máquina Nagios que hemos visto arriba
Editando el archivo /etc/network/interfaces vamos a configurar nuestra máquina willy
de la siguiente forma:

nano /etc/network/interfaces

auto eth0
iface eth0 inet static
address 10.0.0.2
netmask 255.255.255.0
gateway 10.0.0.1

Guardamos el archivo y reiniciamos nuestros servicios de red.

service networking restart

Interfaces Máquina DesOrden


La configuración de red de nuestra máquina DesOrden en Virtual Box también será
la misma que en la máquina Nagios que hemos visto arriba.
Editando el archivo /etc/network/interfaces vamos a configurar nuestra máquina
DesOrden de la siguiente forma:

nano /etc/network/interfaces

auto eth0
iface eth0 inet static
address 10.0.0.3
netmask 255.255.255.0
gateway 10.0.0.1

Guardamos el archivo y reiniciamos nuestros servicios de red.

service networking restart


Comprobar que se hacen ping
Comprobaremos que nuestra máquina de Nagios se ve con Mireal, willi y DesOrden.
Para ello haremos ping a 10.0.0.1, 10.0.0.2 y 10.0.0.3.

3) Instalación de Nagios3
Para instalar Nagios en nuestra máquina virtual llamada Nagios, lo primero que
haremos será crear las dependencias. Para ello escribiremos en la terminal lo
siguiente.

apt-get install php5 libapache2-mod-php5

También es más que recomendable actualizar nuestro Debian.

apt-get update
apt-get upgrade

Por último, vamos a instalar Nagios3

apt-get install Nagios3

Pasos a seguir

Introducir la contraseña, en mi caso nagios


Elegir un nombre para el dominio o grupo de trabajo

Comprobamos desde Mireal que nagios se ha instalado correctamente entrando al


navegador e introduciendo la ip que hemos dado a Nagios
: 10.0.0.100/nagios3. Para loguearnos, usaremos de nombre de usuario
administrador, nagiosadmin y de contraseña nagios.

Si hemos introducido de forma correcta nuestro usuario y contraseña nos saldrá algo
como esto...

3) Configuración de Nagios3

Para configurar Nagios tenemos que personalizar los archivos de configuración de


Nagios, que podemos encontrar en /etc/nagios3, a donde vamos a ir y donde vamos
a crear la carpeta ejemplos
cd /etc/nagios3
mkdir ejemplos

A continuación, vamos al directorio /etc/nagios3/conf.d y copiamos todo el contenido


de la carpeta a nuestra carpeta que acabamos de crear llamada ejemplos para tener
una copia o backup de los archivos originales, para tirar de ellos en caso de que la
"caguemos".

cd /etc/nagios3/conf.d
cp * /etc/nagios3/ejemplos

Estando en la carpeta /etc/nagios3/conf.d vamos a copiar el archivo


localhost_nagios2.cfg y al archivo nuevo le llamaremos equipos.cfg

cp localhost_nagios2.cfg equipos.cfg

Editaremos este nuevo archivo y dejaremos sólo la configuración para los host, es
decir, uno para la propia máquina de Nagios (localhost), otra para Mireal, otra
para willy y otra para DesOrden.

nano /etc/nagios3/conf.d/equipos.cfg
Ahora volvemos a copiar el archivo localhost_nagios2.cfg pero ahora le vamos a dar
el nombre servicios.cfg al nuevo archivo.

cp localhost_nagios2.cfg servicios.cfg

Ahora editaremos este nuevo archivo llamado servicios.cfg y lo que haremos será
borrar la configuración de los hosts, dejando sólo la configuración de los servicios
como vamos a ver en la siguiente imagen. (Te recomiendo borrar los comentarios y
poner los tuyos propios #)

nano servicios.cfg
Ahora vamos a borrar el archivo localhost_nagios2.cfg ya que no nos va a servir
más

rm localhost_nagios2.cfg

A continuación, vamos a redireccionar el contenido del archivo services_nagios2.cfg


a nuestro fichero servicios.cfg que añadirá más servicios a nuestro archivo de la
imagen de arriba.

cat services_nagios2.cfg >> servicios.cfg

Ojo! cuidado de escribir >> y no > ya que si no machacaríamos el archivo


servicios.cfg

Tras añadir este contenido podremos ver que en nuestro archivo servicios.cfg se ha
agregado la siguiente información.
A continuación renombramos el archivo hostgroups_nagios2.cfg a grupos.cfg. En
este archivo crearemos diferentes grupos según las funciones, sistemas operativos,
servicios...

mv hostgroups_nagios2.cfg grupos.cfg

Ahora vamos a renombrar los archivos que contienen las plantillas de configuración
de equipos y servicios, por si posteriormente queremos agregar más servicios.

mv generic-host_nagios2.cfg plantilla_equipos.cfg
mv generic-service_nagios2.cfg plantilla_servicios.cfg

Por último ejecutaremos el comando nagios3 -v para cargar la configuración al


archivo /etc/nagios3/nagios.cfg que es el archivo que contiene la configuración de
Nagios. Los demás archivos nos sirven para tenerlo todo mejor controlado, pero
gracias a este archivo podemos comprobar que no hay ningún error, por tanto
ejecutaremos en nuestra máquina de Nagios el siguiente comando.

nagios3 -v /etc/nagios3/nagios.cfg
En mi caso me daba un error relacionado con el archivo equipos.cfg, ya que
localhost estaba definido tanto en equipos.cfg como en el archivo hosts.cfg. Por
tanto lo he solucionado eliminando el archivo hosts.cfg

rm /etc/nagios3/conf.d/hosts.cfg

Tras esto volveríamos a ejecutar el comando nagios3 -v /etc/nagios3/nagios.cfg y si


todo es correcto, nos debería de devolver algo como esto. Aunque sería mejor sin
tener Warnings =D.

Para finiquitar reiniciaremos nagios.

service nagios3 restart

4) Monitorización de servicios con Nagios3

a) La primera tarea que vamos a ver es que todos los equipos


del esquema estén funcionando correctamente (no estén
caídos).
Para comprobar esto, simplemente nos loguearemos desde la máquina real
(Mireal) en Nagios (si no lo recuerdas ve al punto 2 de este artículo) y nos iremos
al apartado Hosts. Si en Status tenemos todo en verde (UP) será que nuestro
servidor Nagios está haciendo ping a todas las máquinas y por consiguiente está
encendidas.
b) La segunda tarea será que el servicio HTTP de Willy esté
funcionando correctamente.
Para ello en la máquina willy tendremos que instalar un servidor http, que
podremos hacerlo con el siguiente comando.

apt-get install apache2

Es necesario tener conexión a internet, para ello lo más cómodo si estamos


usando máquinas virtuales, es abrirle un adaptador de red (eth1) en adaptador
puente y deshabilitarlo al terminar de descargar.

Editaremos el archivo grupos.cfg e incluiremos a willy dentro del grupo HTTP


servers
Para comprobar que el servicio HTTP funciona de forma correcta en willy,
simplemente nos iremos a Nagios > Host Groups y veremos que en el grupo HTTP
servers nuestro servidor HTTP en willy está OK.

c) La tercera tarea que vamos a ver es que el servicio SSH de


DesOrden, willy y Mireal estén funcionando correctamente.
Para ello editaremos nuevamente el archivo grupos.cfg e incluiremos en el grupo
SSH servers como nuevos "members" a los equipos DesOrden, willy y Mireal. Yo
lo he solucionado poniendo un asterisco, lo cuál incluye a todos los hosts.
Obviamente, es necesario tener instalado SSH en las máquinas sobre las que
queremos monitorizar el estado de SSH, en mi caso voy a proceder a instalar en
willy y DesOrden el servidor SSH. Por tanto nuevamente, será necesario tener
internet para realizar la instalación con el siguiente comando.

apt-get install ssh

En la máquina Mireal no voy a instalar el servidor SSH para poder ver que cómo
Nagios nos avisa cuando un servicio no funciona correctamente.

Para ver que la monitorización de los servidores SSH es correcta nuevamente en


Nagios > Host Groups podremos ver el grupo SSH servers, donde vemos que el
servicio SSH está OK en DesOrden, localhost y willy, y en estado CRITICAL en
Mireal, puesto que como he dicho antes no he instalado en esta máquina el servidor
SSH.
d) Por último monitorizaremos el número de procesos y carga
del procesador de willy.
Para poder monitorizar servicios como el número de procesos o la carga de
procesador, lo primero que debemos hacer será instalar el servidor NRPE que nos
permitirá que Nagios pueda monitorizar los servicios locales de las diferentes
máquinas, en nuestro caso de willy. Para ellos tendremos que instalar paquetes
tanto en nuestro host remoto (willy) como en nuestro servidor (Nagios).

En willy

Instalaremos el siguiente paquete (recordamos que debemos tener internet)

apt-get install nagios-nrpe-server

A continuación, comprobaremos que el servicio está a la escucha

netstat -natup|grep nrpe


Ahora editaremos el archivo nrpe.cfg y buscaremos la directiva "allowed_hots" y
vamos a añadir la IP del servidor Nagios.

nano /etc/nagios/nrpe.cfg

Guardamos el fichero y reiniciaremos el servicio nrpe

service nagios-nrpe-server restart

En servidor Nagios

Una vez configurado el host (willy) vamos a instalar un plugin en nuestro servidor
Nagios

apt-get install nagios-nrpe-plugin

Ahora comprobaremos que nos podemos comunicar con el host remoto de la


siguiente forma

/usr/lib/nagios/plugins/check_nrpe -H 10.0.0.2
El resultado debe ser como el de la imagen de arriba, mostrandonos NRPE y la
versión.

Una vez reazlizada esta configuración en el servidor Nagios, ahora toca decirle a
nuestro archivo servicios que queremos ver el número de procesos y la velocidad
de carga de willy. Para ello nos vamos a ir al archivo servicios.cfg y añadiremos a
willy en Total Processes y Current Load

nano /etc/nagios3/conf.d/servicios.cfg

Por último, guardaremos el archivo, cargaremos los cambios y reiniciaremos nuestro


servicio.

nagios3 -v /etc/nagios3/nagios.cfg
service nagios3 restart
Ya sólo nos queda irnos a nuestra Mireal, máquina real, y ver en nuestro menú de
administración de Nagios que estamos monitorizando la carga del procesador y el
número de procesos de willy.

Espero que te haya servido este tutorial, si es así compártelo y si tienes alguna duda,
déjame un comentario