Instalar nagios en ubuntu

15
Instalar Nagios en Ubuntu lunes 26 de abril de 2010 Hoy vamos a explicar cómo instalar Nagios en Ubuntu. Nagios es un sistema de monitorización de redes de código abierto. Vigila los equipos (hardware) y servicios (software) 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, posibilidad de monitorización remota mediante túneles SSL cifrados ó SSH, y la posibilidad de programar plugins específicos para nuevos sistemas. Para instalar Nagios en Ubuntu lo primero que debemos hacer es descargar los archivos de la página oficial de Nagios en este caso vamos a instalar la versión 3.2.1. Debemos descargar dos paquetes: nagios-3.2.1.tar.gz nagios-plugins-1.4.14.tar.gz También podéis descargarlos por línea de comandos: wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios- 3.2.1.tar.gz wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios- plugins-1.4.14.tar.gz Si quieres leer el resto del manual para instalar Nagios en Ubuntu sigue leyendo. Paso 1 - Prerrequisitos Antes de empezar a instalar Nagios en Ubuntu es necesario

description

 

Transcript of Instalar nagios en ubuntu

Instalar Nagios en Ubuntu lunes 26 de abril de 2010

Hoy vamos a explicar cómo instalar Nagios en Ubuntu.

Nagios es un sistema de monitorización de redes de código abierto. Vigila los equipos (hardware) y servicios (software) 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, posibilidad de monitorización remota mediante túneles SSL cifrados ó SSH, y la posibilidad de programar plugins específicos para nuevos sistemas.

Para instalar Nagios en Ubuntu lo primero que debemos hacer es descargar los archivos de la página oficial de Nagios en este caso vamos a instalar la versión 3.2.1. Debemos descargar dos paquetes:

nagios-3.2.1.tar.gz nagios-plugins-1.4.14.tar.gz

También podéis descargarlos por línea de comandos:

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.1.tar.gzwget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.14.tar.gz

Si quieres leer el resto del manual para instalar Nagios en Ubuntu sigue leyendo.

Paso 1 - Prerrequisitos

Antes de empezar a instalar Nagios en Ubuntu es necesario instalar otro paquetes, es posible que ya tengas instalado algunos de estos paquetes:

Apache 2 PHP GCC: librerías de desarrollo y compilación GD: librerías de desarrollo

Para instalar Apache 2 ejecutamos:sudo apt-get install apache2

Instalamos PHP:sudo apt-get install libapache2-mod-php5

Instalamos GCC:sudo apt-get install build-essential

Por último, instalamos GD:Para versión anteriores a la 6.10 (ésta incluida): sudo apt-get install libgd2-dev

A partir de la 7.10: sudo apt-get install libgd2-xpm-dev

Paso 2 - Crear información de cuenta de usuario

Después, para poder instalar Nagios en Ubuntu lo primero que debemos hacer es entrar como root o por el contrario podéis poner sudo delante de todos los comandos:sudo -s

Creamos una nueva cuenta de usuario "nagios" y contraseña:/usr/sbin/useradd -m -s /bin/bash nagios

Con la opción "/bin/bash" indicamos que intérprete de comandos usaremos.Le damos un password, que introduciremos dos veces:passwd nagios

Para versiones anteriores a la 6.01 es necesario crear un grupo (los que tenéis versiones posteriores podeis saltaros y pasar a crear el siguiente grupo, ya que Ubuntu lo hace automáticamente)/usr/sbin/groupadd nagios/usr/sbin/usermod -G nagios nagios

Creamos un nuevo grupo nagcmd, para permitir comandos externos:/usr/sbin/groupadd nagcmd

Metemos al usuario nagios en el grupo nagcmd:/usr/sbin/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:/usr/sbin/usermod -a -G nagcmd www-data

Paso 3 - Compilar e Instalar Nagios en Ubuntu

Una vez que ya hemos preparado el sistema para instalar Nagios en Ubuntu podemos empezar con la compilación e instalación del mismo. En este punto debo decir que en la página oficial de Nagios podéis encontrar los paquetes ya compilados y listos para instalar Nagios en Ubuntu. Sin embargo, éstos no siempre son los de la última versión, por eso yo prefiero compilarlos yo misma.

Vamos a donde hemos instalado los paquetes. Descomprimimos el paquete

de nagios:tar xzf nagios-3.2.1.tar.gz

Accedemos a la carpeta que acabamos de descomprimir:cd nagios-3.2.1

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 configuracion:make install-config

Dar permisos al directorio de comandos externos:make install-commandmode

Paso 4 - Personalizar la configuración

Una vez que hemos instalado Nagios en Ubuntu, podemos ir al directorio "usr/local/nagios/etc" donde tenemos los ficheros de configuración de Nagios que podemos modificar para personalizar la configuración.En este caso 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:vim /usr/local/nagios/etc/objects/contacts.cfg

Si no eres muy hábil con vim puedes usar gedit:gedit /usr/local/nagios/etc/objects/contacts.cfg

Cambiamos la dirección de correo de la línea 35 por la dirección de correo electrónico a la que queremos que nos manden las notificaciones.

Paso 5 - Configurar la Interfaz Web

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

NOTA: no olvidar el password ya que lo necesitaremos luego

Reiniciamos apache para que los cambios surtan efecto:/etc/init.d/apache2 reload

Paso 6 - Compilar e Instalar los plugins de Nagios

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 a la carpeta que acabamos de descomprimir:cd nagios-plugins-1.4.14/

Compilamos e instalamos los plugins:./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl=/usr/bin/openssl --enable-perl-modules

Con "with openssl" habilitamos el soporte para SSL.Con "enable-perl-modules"  habilitamos los módulos de perl para poder trabajar con perl.

Por último, instalamos:makemake install

Paso 7 - Inicio de Nagios en Ubuntu

Ahora vamos a configurar Nagios para que se inicie automáticamente junto con Ubuntu. Para ello 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, si hubieramos configurado algo mal durante la instalación sería en este punto donde aparecerían los errores:/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Si no tenemos errores iniciamos Nagios:/etc/init.d/nagios start

Paso 8 - Entrar en la interface Web

Si todo ha ido bien ahora 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 en el paso 5.Si todo ha ido bien deberíamos ver la página de inicio de Nagios.

Si vamos a "Services" (lo podéis encontrar en el menú izquierdo) veremos el estado de los servicios que se están ejecutando.Si SSH no está instalado el estado será "CRITICAL" como podeís ver en la imagen:

Para solucionarlo instalamos SSH:sudo apt-get install ssh

Tras la instalación si esperais unos minutos el estado debería cambiar a OK.

Paso 9 - Otras Modificaciones

En el paso 4, tras la instalación de Nagios en Ubuntu, hemos cambiado la dirección de e-mail a la que nos llegarán las notificaciones de Nagios. Sin embargo, para recibir dichas notificaciones es necesario instalar algún servidor de correo. En este caso vamos a instalar postfix como servidor de correo:apt-get install postfix

En este caso instalaremos postfix con la opción de "Internet con <smarthost>", con esta opción indicamos que vamos a usar un servidor de correo externo para enviar los emails.

El nombre del sistema de correos introducimos "nagios.local"Por último, introducimos la ip del servidor externo de correo que vamos a usar.

Por otro lado necesitamos instalar mailx para enviar emails por línea de comandos:apt-get install mailx

ahora solo queda que probemos el servidor de correo:echo "PRUEBA" | mail -s "ASUNTO" [email protected]

Para más información podéis visitar el post sobre como instalar un servidor de correo en Ubuntu.

Ahora reiniciamos Nagios:sudo /etc/init.d/nagios restart

Ya tenemos instalado Nagios en Ubuntu y funcionando a la perfección, por lo que hasta aquí llega este manual. Espero que este manual de cómo instalar Nagios en Ubuntu os haya resultado de utilidad.

Configurar Nagios en Ubuntu En un post anterior publiqué un completo manual para instalar Nagios en Ubuntu. En este caso, partiendo de que Nagios ya este instalado, voy a explicar como configurar Nagios en Ubuntu.

Inicialmente Nagios sólo monitoriza la máquina local. Sin embargo, es obvio que lo que queremos es monitorizar otros dispositivos.Lo primero es conocer la estructura de carpetas de Nagios. Nagios está instalado en "/usr/local/nagios". Dentro de esta carpeta está la siguiente estructura:

bin: Están los ejecutables de Nagios etc: Contiene los archivos de configuración

o objects: Archivos de configuración para los distintos dispositivos a monitorizar

libexec: Son los scripts para monitorizar

El archivo de configuración general está en "/usr/local/nagios/etc/nagios.cfg". Es es este archivo donde definimos todos los archivos de configuración que se van a incluir aparte de otras configuraciones, de manera que debemos descomentar aquellos que vayamos a usar.

Ahora vamos a centrarnos en los archivos de configuración dentro de la carpeta "/usr/local/nagios/etc/objects". En cada archivo de configuración se define lo que se quiere mirar de cada tipo de dispositivo (router, switch, servidores windows, etc.).

En el fichero commands.cfg se definen los comandos a utilizar. Por ejemplo, podemos definir que nos manden los emails de aviso en un formato de correo específico. La variable $USER1$ (usada en commnands.cfg) indica donde están los script de nagios.

Los scritps como ya he dicho antes están en la carpeta libexec. Para saber como usar los scripts ponemos el nombre del script seguido de -h para ver la ayuda:

check_smtp -h

En el archivo contacts.cfg están los contactos. Por ejemplo, está la dirección de email que introducimos para enviar los emails de aviso en el post instalar Nagios en Ubuntu.

En el archivo template.cfg hay plantillas para crear nuevos archivos de configuración. Hay plantillas para hosts, contactos, etc.

Aparte, están los archivos localhost.cfg, switch.cfg, windows.cfg en los que definiremos nuevos dispositivos y servicios a monitorizar.

Sigue leyendo para ver como configurar Nagios en Ubuntu.

Añadir un nuevo Host

Vamos al archivo windows.cfg porque vamos a añadir un servidor Windows. Copiamos el ejemplo de host que aparece y cambiamos los parámetros, además vamos a meterlo en el grupo "windows-servers":

define host{

use windows-server

host_name win2K3

alias Servidor DGSC

address 172.17.110.203

hostgroups windows-servers

}

Añadir un nuevo Servicio

Ahora vamos añadir un servicio para el nuevo Host que acabamos de definir. Para ello al final del archivo windows.cfg veremos algunos ejemplos de servicios. En este caso vamos a monitorizar HTTP.

define service{

use generic-service

host_name Win2K3

service_description HTTP Win2K3

check_command check_http

}

Los servicios en Nagios tienen 4 estados diferentes: OK: Todo en orden WARNING: Se ha alcanzado el umbral de alerta, pero no se ha llegado

al umbral de crítico CRITICAL: Se ha superado el umbral crítico o el plugin interrumpe el

test después de un tiempo UNKNOWN: Ha ocurrido un error en el plugin. Por ejemplo, se ha

utilizado un parámetro erróneo

Antes de definir un servicio podemos probar el script manualmente mediante línea de comandos.

root@nagios:/usr/local/nagios/libexec# ./check_dns -s 172.17.14.1 -H www.google.com

Si el resultado es correcto y tenemos que definir muchos servicios con el mismo script y parámetro similares podemos crear un comando en el archivo commands.cfg.

# 'check_dns' command definitiondefine command{command_name check_dnscommand_line $USER1$/check_dns -s $HOSTADDRESS -H www.google.com

De esta forma la definición del servicio será más fácil:

define_service{

use generic-service

host_name DNS_externo

service_description DNS

check_command check_dns

}

Guardar los cambios

Para que los cambios surtan efecto, como ya he dicho antes, hay que descomentar el fichero de configuración de windows (windows.cfg) en el fichero nagios.cfg:# Definitions for monitoring a Windows machine

cfg_file=/usr/local/nagios/etc/objects/windows.cfg

Antes de poner en marcha las nuevas configuraciones debemos asegurarnos de que los cambios que hemos hechos no provocan errores. Para ello debemos ejecutar el binario nagios con la opción -v.

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

Reiniciamos Nagios:

sudo /etc/init.d/nagios restart

Al igual que hemos hecho con el servidor de Windows, podemos monitorizar otros dispositivos, como routers y switches vía SNMP. Para ello debemos habilitar el archivo de configuración switch.cfg en nagios.cfg.

Interfaz Web de Nagios

La interfaz web muestra el estado actual de todos los sistemas monitorizados. Podemos ver el estado de los Host. La columna Duration especifica desde cuándo ha sido visto, desde que ha sido añadido o desde que se ha recuperado de una caída.

También podemos ver el estado de los sevicios.

Incluso un mapa con las dependencias entre todos los dispositivos monitorizados.

Por defecto los iconos del mapa no aparecen. Para ello debemos descargarnos dos paquetes de iconos:

Base images Cook images

Debemos descomprimir los dos paquetes en la carpeta "/usr/local/nagios/share/images/logos". Ahora solo debemos definir para cada host el icono (statusmap_image, icon_image) y quien es el padre del mismo (parents) para que la conexiones en el mapa se muestren adecuadamente.

define host{

use windows-server ; Inherit default values from a template

host_name Nostromo ; The name we're giving to this host

alias Host Nostromo ; A longer name associated with the host

address 172.17.110.203 ; IP address of the host

hostgroups windows-servers

statusmap_image win40.gd2

icon_image win40.gif

parents Default_gateway

}

Con esto ya hemos configurado Nagios en Ubuntu. Ahora podemos seguir incluyendo nuevos dispositivos que queramos monitorizar.