guia instalacion y configuracion nagios

Upload: pedroaldiz

Post on 02-Nov-2015

95 views

Category:

Documents


3 download

DESCRIPTION

Guía de instalación y configuración de Nagios paso. Muy util para controlar los servidores o equipos en general de tu empresa.Creada por Pedro Alcaraz Díaz, registrado mediante creative commons (CC), leer las bases antes de modificar o compartir el documento por favor.

TRANSCRIPT

  • Pedro Alcaraz Daz Pgina 18 de 18

    Instalacin y configuracin de Nagios

    Instalacin y configuracin de Nagios

    Nagios core versin 4.0.4

    Pedro Alcaraz Daz

    Abril de 2014

  • Pedro Alcaraz Daz Pgina 1 de 18

    Instalacin y configuracin de Nagios

    Contenido

    Introduccin ............................................................................................... 2

    Qu es Nagios? Para qu sirve? ............................................................................................ 2

    Antes de empezar ...................................................................................... 2

    Instalacin de apache2 .............................................................................................................. 2

    Instalacin de php5 ................................................................................................................... 2

    Libreras necesarias ................................................................................................................... 2

    Instalacin de Nagios ................................................................................. 3

    Creamos usuarios y grupos ....................................................................................................... 3

    Instalacin de Nagios Core ........................................................................................................ 4

    Instalacin de Nagios Plugins .................................................................................................... 5

    Aadir nagios al inicio del sistema ............................................................................................ 6

    Configuracin de la interfaz Web .............................................................................................. 6

    Configuracin de los equipos ................................................................... 10

    Configuracin de equipos Windows ....................................................................................... 10

    Agregar el equipo al servidor .................................................................................................. 10

    Aadir los grupos .................................................................................................................... 11

    Agregarle servicios para monitorizar ...................................................................................... 11

    Crear nuevos tipos de servicios ............................................................................................... 13

    Periodos de tiempo ................................................................................................................. 14

    Activar las alertas por correo electrnico ................................................. 14

    Instalacin de mailutils ............................................................................................................ 14

    Instalacin y configuracin de SSMTP ..................................................................................... 14

    Comprobacin del correcto funcionamiento .......................................................................... 15

    Utilizacin de nagios ................................................................................ 16

    Visualizar por grupos ............................................................................................................... 16

    Bibliografa: ................................................................................................ 0

    Creative Commons ..................................................................................... 0

  • Pedro Alcaraz Daz Pgina 2 de 18

    Instalacin y configuracin de Nagios

    Introduccin Antes de nada deciros que este documento est basado en gran parte de un tutorial

    desarrollado por Guille Rodrguez el cual dio permiso para modificar y publicar su obra.

    Podis encontrar un enlace al final del documento en la bibliografa.

    En este documento, explicaremos como instalar y configurar un servidor Nagios core, con los

    plugins necesarios corriendo sobre un deban 7.4 desde cero.

    Qu es Nagios? Para qu sirve? Nagios es un sistema de monitorizacin de redes de cdigo abierto ampliamente utilizado, que

    vigila los equipos (hardware) y servicios (software) que se especifiquen, alertando cuando el

    comportamiento de los mismos no sea el deseado. Entre sus caractersticas principales figuran

    la monitorizacin de servicios de red (SMTP, POP3, HTTP, SNMP, etc.), la monitorizacin de los

    recursos de sistemas hardware (carga del procesador, uso de los discos, memoria, estado de

    los puertos, etc.), independencia de sistemas operativos, posibilidad de monitorizacin remota

    mediante tneles SSL cifrados o SSH, y la posibilidad de programar plugins especficos para

    nuevos sistemas.

    Antes de empezar Antes de la instalacin de Nagios, deberemos de instalar los siguientes paquetes. Adems de

    configurarle una IP esttica.

    Instalacin de apache2 Comprobamos que la instalacin funciono correctamente escribiendo en nuestro navegador

    http://ip_de_nuestro_equipo y veremos una pgina web que dice It works!.

    Instalacin de php5 Ahora procedemos a instalar una librera para php, que necesitaremos para ver correctamente

    el contenido php de las pginas:

    Libreras necesarias Tambin necesitaremos la librera gd que la descargaremos de su source, la compilaremos e

    instalaremos. Crearemos una carpeta donde guardar todo lo necesario.

    :~# apt-get install apache2

    :~# apt-get install php5

    :~# apt-get install libapache2-mod-php5

    :~# apt-get install make gcc g++ sudo libgd2-xpm libgd2-xpm-

    dev libpng12-dev libjpeg62-dev libgd-tools libpng3-dev

  • Pedro Alcaraz Daz Pgina 3 de 18

    Instalacin y configuracin de Nagios

    Ahora procedemos a instalar la librera gd

    Procedemos a su instalacin

    Instalacin de Nagios

    Creamos usuarios y grupos Como siempre en Linux, es mejor crear un usuario para cada servicio, de manera que si

    por algn motivo un usuario llegara a poder acceder al sistema a travs de Nagios,

    solamente afectara al usuario Nagios y tendra solo los permisos de este usuario. Creamos el

    usuario:

    A continuacin nos pedir unos datos, a nivel de informacin, se pueden dejar en blanco sin

    problemas (excepto la contrasea que la deberemos de recordar)

    Procedemos a crear el grupo, para aadir al usuario Nagios y tambin al usuario www-

    data (servidor web) al grupo. Generalmente el grupo se crea al crear el usuario y este

    estar en l, pero aun as lo haremos, en el caso de que exista solo nos avisar

    :~# mkdir /temporales

    :~# cd /temporales

    :~# wget http://www.boutell.com/gd/http/gd-2.0.33.tar.gz

    :~# tar -zxvf gd-2.0.33.tar.gz

    :~# cd gd-2.0.33/

    :~# ./configure

    :~# make && make install

    :~# cd ..

    :~# adduser nagios

    :~# groupadd nagios

    :~# usermod -G nagios nagios

    :~# usermod -G www-data,nagios www-data

  • Pedro Alcaraz Daz Pgina 4 de 18

    Instalacin y configuracin de Nagios

    Instalacin de Nagios Core Lo primero que vamos a hacer es entrar en la web de Nagios y buscar su ltima versin de

    Nagios Core, as que entramos en www.nagios.org/download/core/thanks donde encontramos

    la versin Latest stable release y la Previous stable release, copiamos el enlace de la Latest

    stable release.

    En nuestro caso vamos a elegir la versin gratuita y nos pedirn unos datos opcionales que

    nosotros nos saltaremos.

    Ahora copiaremos la ruta del enlace a la versin estable ms reciente

    Nos vamos al servidor y descargamos, descomprimimos e instalamos

    Y ya tenemos instalado Nagios Core

    :~# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-

    4.0.4.tar.gz

    :~# tar zvfx nagios-3.4.3.tar.gz

    :~# cd nagios

    :~#./configure prefix=/usr/local/nagios with-

    cgiurl=/nagios/cgi-bin with-htmurl=/nagios/ with-nagios-

    user=nagios with-nagios-group=nagios with-command-

    group=nagios

    :~# make all

    :~# make install

    :~# make install-init

    :~# make install-commandmode

    :~# make install-config

    :~# cd ..

  • Pedro Alcaraz Daz Pgina 5 de 18

    Instalacin y configuracin de Nagios

    Instalacin de Nagios Plugins Nagios plugins es un aadido que nos permite conectar con servicios ms especficos si

    queremos conectar con un ordenador Windows y saber su carga de CPU, RAM, disco duro y

    otros muchos ms servicios o dispositivos.

    Volvemos a la web de Nagios pero en su seccin http://nagios.org/download/plugins y

    repetimos los mismos pasos que con el nagios core. Descargndonos la ltima estable.

    Una vez terminado, comprobaremos si se han instalado correctamente en el

    directorio /usr/local/nagios/libexec/

    Si nos muestra una lista de archivos, en principio todo est correcto, en el caso de que est

    vaca significar que no se instal correctamente1

    Tambin podemos probar insertando el siguiente comando

    1Durante la instalacin de los plugins, la pantalla se queda parada varias veces, no tocad nada o no se

    instalar correctamente (lo digo por experiencia)

    :~# wget http://nagios-plugins.org/download/nagios-plugins-

    2.0.tar.gz

    :~# tar -zxvf nagios-plugins-HEAD.tar.gz

    :~# cd nagios-plugins-

    :~#./configure

    :~# make && make install

    :~# ls/usr/local/nagios/libexec

    :~# /usr/local/nagios/libexe/check_ssh -h

  • Pedro Alcaraz Daz Pgina 6 de 18

    Instalacin y configuracin de Nagios

    Y nos saldr una pantalla como esta:

    Aadir nagios al inicio del sistema Crearamos un enlace simblico, por si algn da el archivo se borra quede inservible este

    enlace. Para ello ejecutamos la siguiente orden.

    Y para evitar que nos salga un error como este: insserv: warning: script S99nagios missing

    LSB tags and overrides editamos /etc/init.d/nagios y aadimos lo siguiente debajo de

    #!/bin/sh

    Ahora al ejecutar insserv nagios, no debera salirnos ningn error

    Configuracin de la interfaz Web Ya lo tenemos instalado, ahora nos queda poder ver o monitorizar los servicios. Para ello,

    debemos de crear un sitio en apache2

    Al no existir, nos lo creare y dentro deberemos de pegar el siguiente texto, no hace falta

    cambiar las rutas siempre y cuando no las hayamos modificado durante la instalacin.

    :~# ln s /etc/init.d/nagios /etc/rcS.d/S99nagios

    ### BEGIN INIT INFO

    # Provides: Nagios

    # Required-Start: $syslog

    # Required-Stop: $syslog

    # Default-Start: 2 3 4 5 S

    # Default-Stop: 0 1 6

    # Short-Description: Nagios Boot Script

    # Description:

    #

    ### END INIT INFO

    :~# nano /etc/apache2/sites-available/nagios

  • Pedro Alcaraz Daz Pgina 7 de 18

    Instalacin y configuracin de Nagios

    Guardamos el archivo y activamos el sitio mediante la siguiente orden.

    Definimos la contrasea para el usuario nagiosadmin que es el usuario que viene por

    defecto. La usaremos despus para acceder al panel web de Nagios.

    Y revisamos que el archivo /usr/local/nagios/etc/cgi.cfg disponga de use_authentication=1

    La manera ms rpida y sencilla con nano, seria pulsar Ctrl + w y escribir

    use_authentication pulsamos Intro y si aparece ms de una vez, solo tendramos que pulsar

    Ctrl + w y luego Intro.

    ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin

    Options ExecCGI

    AllowOverride None

    Order allow,deny

    Allow from all

    AuthName Nagios Access

    AuthType Basic

    AuthUserFile /usr/local/nagios/etc/htpasswd.users

    Require valid-user

    Alias /nagios /usr/local/nagios/share

    Options None

    AllowOverride None

    Order allow,deny

    Allow from all

    AuthName Nagios Access

    AuthType Basic

    AuthUserFile /usr/local/nagios/etc/htpasswd.users

    Require valid-user

    :~# a2ensite nagios

    :~# nano /usr/local/nagios/etc/cgi.cfg

  • Pedro Alcaraz Daz Pgina 8 de 18

    Instalacin y configuracin de Nagios

    En caso de no tener previamente configurado el servidor apache2. Procederemos a crear un re

    direccionamiento de la pgina por defecto (Esa que nos aparece si ponemos en el navegador la

    IP de nuestro equipo) hacia la de Nagios

    Y escribimos lo siguiente:

    Con esto lo que conseguimos es que en un periodo de 5 segundos redirija automticamente a

    httl://ip_del_equipo/nagios

    Y ahora reiniciamos Apache2

    Ya podemos abrir nuestro navegador y comprobar su funcionamiento

    :~# nano /var/www/index.html

    Redirigiendo a nagios...

    Redirigiendo a nagios...

    En el caso de no llegar a la siguiente pgina, avise

    al administrador del sitio

    :~# service apache2 restart

    :~# service nagios restart

  • Pedro Alcaraz Daz Pgina 9 de 18

    Instalacin y configuracin de Nagios

    Veremos algo como lo siguiente:

    Ya solo nos queda configurar los equipos a configurar.

  • Pedro Alcaraz Daz Pgina 10 de 18

    Instalacin y configuracin de Nagios

    Configuracin de los equipos

    Configuracin de equipos Windows Antes de nada necesitamos descargarnos un cliente para nagios. Para ellos vamos a la pgina

    http://www.nsclient.org/download/ y nos descargamos la versin que nos interese (x86 o x64)

    siempre que podamos deberamos instalarnos la ltima estable, ya que en ella suelen

    corregirse bugs y fallos de seguridad. En nuestro caso la versin 0.4.0.102, pero todas son

    muy parecidas.

    Le damos a siguiente, luego aceptamos los trminos. Y elegimos en nuestro caso la instalacin

    completa.

    Agregar el equipo al servidor Una vez hemos instalado el cliente solo nos faltara agregarlo al servidor.

    Para ello a /usr/local/nagios/etc/objects/windows.cfg (en el caso de que sea un Windows) o

    /usr/local/nagios/etc/objects/switch.cfg en el caso de que sea un Linux, un switch

    En nuestro caso configuraremos un Windows. Por eso vamos a editar el fichero

    /usr/local/nagios/etc/objects/windows.cfg, le realizamos una copia antes de modificar nada

    con el comando

    :~# cd /usr/local/nagios/etc/objects/

    :~# cp windows.cfg windows.cfg_ORIGINAL

  • Pedro Alcaraz Daz Pgina 11 de 18

    Instalacin y configuracin de Nagios

    Ahora ya podemos proceder a modificar el archivo

    Vemos unos serie de recuadros hechos con #, que nos indican que solo son para organizar ya

    que son comentarios. Nos vamos debajo de HOST DEFINITION y definimos el host al que

    acabamos de instalar el NSCLIENT++

    1. Hereda los valores por defecto de una plantilla llamada windows-server

    2. En el definimos un nombre para referirnos al equipo (no tiene por qu ser el real)

    3. Es lo que nos mostrar en la web

    4. Escribimos la direccin de nuestro servidor

    5. Es el nombre del grupo donde lo queremos meter (la definiremos despus)

    Aadir los grupos Para aadir los grupos, debemos de aadir la siguiente informacin en el archivo switch.cfg o

    Windows.cfg ( o en los dos)

    1. Definimos el nombre del grupo (Es el que utilizaremos para agregarlos al grupo)

    2. Le decimos el nombre del grupo que nos mostrar en la web

    Agregarle servicios para monitorizar Ahora pasamos a configurar los servicios que queremos monitorizar.

    1. Es el servicio que vamos a utilizar, en todos nuestros casos sern generic-service

    2. El nombre que le pusimos anteriormente al servidor

    3. Podemos poner una pequea descripcin

    4. Escribimos el comando que se va a ejecutar para ver el recurso

    :~# nano windows.cfg

  • Pedro Alcaraz Daz Pgina 12 de 18

    Instalacin y configuracin de Nagios

    Nosotros queremos definiremos los siguientes servicios, podemos encontrar ms informacin

    en la siguiente direccin web: http://nagios.sourceforge.net/docs/3_0/monitoring-

    windows.html

    define service{

    use generic-service

    host_name winserver

    service_description NSClient++ Version

    check_command check_nt!CLIENTVERSION

    }

    define service{

    use generic-service

    host_name winserver

    service_description Uptime

    check_command check_nt!UPTIME

    }

    define service{

    use generic-service

    host_name winserver

    service_description CPU Load

    check_command check_nt!CPULOAD!-l 5,80,90

    }

    define service{

    use generic-service

    host_name winserver

    service_description Memory Usage

    check_command check_nt!MEMUSE!-w 80 -c 90

    }

    define service{

    use generic-service

    host_name winserver

    service_description C:\ Drive Space

    check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90

    }

  • Pedro Alcaraz Daz Pgina 13 de 18

    Instalacin y configuracin de Nagios

    Y tenemos todo completamente configurado. Ahora podemos retocarlos a nuestro gusto, por

    ejemplo a la hora de que nos alerte con el espacio de disco. check_command

    check_nt!USEDDISKSPACE!-l c -w 80 -c 90, podemos poner

    diferentes porcentajes (80,90 son los porcentajes por defecto).

    Crear nuevos tipos de servicios Tambin podemos crear otro tipo de servicios en lugar de generic-

    service, para ello editamos el archivo

    Buscamos la definicin de generic service y la copiamos entera,

    modificndole el nombre por el que nos guste, en mi caso lo llamar

    generic-services-low-priority

    Y modificamos por ejemplo notification_option para que solo nos

    notifique u,c,r

    Opciones:

    - o: Funcionando correctamente

    - w: Alerta

    - u: Estado desconocido

    - c: Estado critico

    - r: Recuperacin del servicio

    - f: Flapping (cuando se inicia y se detiene)

    - n: Ninguna notificacin

    Procedemos a modificar notification_interval a 120 minutos, esto har que avise solo cada 2

    horas, adems, como se trata de unos servicios de baja prioridad, cambiamos

    notification_period, de 24x7 a workhours. Para que solo nos avise en horario de trabajo.

    (Lo veremos en el siguiente paso)

    define service{

    use generic-service

    host_name winserver

    service_description W3SVC

    check_command check_nt!SERVICESTATE!-d SHOWALL -l

    W3SVC

    }

    define service{

    use generic-service

    host_name winserver

    service_description Explorer

    check_command check_nt!PROCSTATE!-d SHOWALL -l

    Explorer.exe

    }

    nano /usr/local/nagios/etc/objects/templates.cfg

  • Pedro Alcaraz Daz Pgina 14 de 18

    Instalacin y configuracin de Nagios

    Periodos de tiempo En este apartado, podremos modificar las horas y das que queremos recibir notificaciones,

    pudiendo adaptarlos a nuestro horario de trabajo, das de vacaciones, etc.

    Para esto, modificaremos timeperiods.cfg.

    Aqu podremos definir un nuevo periodo de tiempo, o modificar los existentes. En nuestro

    caso y puesto que en el punto anterior lo utilizamos, adaptaremos workshours.

    Modificndole las horas, para que deje de notificar a las 21:00

    En el archivo, podemos ver otros muchos ejemplos de configuracin.

    Activar las alertas por correo electrnico Para activar las alertas por correo electrnico, deberemos instalar y configurar los siguientes

    paquetes:

    - mailsutils

    - ssmtp

    Instalacin de mailutils

    Instalacin y configuracin de SSMTP

    :~# apt-get install mailutils

    nano /usr/local/nagios/etc/objects/timeperiods.cfg

  • Pedro Alcaraz Daz Pgina 15 de 18

    Instalacin y configuracin de Nagios

    Una vez instalado, procedemos a configurar los archivos /etc/ssmtp/revaliases y

    /etc/ssmtp/smtp.conf

    En revaliases, debemos de escribir la siguiente lnea:

    Por ejemplo:

    Y ssmtp.conf de la siguiente manera (leed las lneas del fichero original comentadas, por si

    cambia mucho la configuracin de vuestro caso en particular):

    Comprobacin del correcto funcionamiento Podemos comprobar el correcto funcionamiento del envo de mensajes mediante el comando:

    - Nos pedir un CC. el cual podemos dejar en blanco

    - Un asunto

    - Y luego escribimos el mensaje

    - Acabamos con un Intro

    - Un punto y otro Intro

    Por cada error nos dar un mensaje como el siguiente:

    :~# apt-get install ssmtp

    local_account:outgoing_address:mailhub

    Nagios:[email protected]:smtp:midominio.com:25

    [email protected]

    mailhub=ssmtp.midominio.com:25

    rewriteDomain=

    hostname=localhost

    UseTLS=Yes

    UseSTARTTLS=Yes

    [email protected]

    AuthPass=1q2w3e4r5t

    FromLineOverride=No

    mail [email protected]

  • Pedro Alcaraz Daz Pgina 16 de 18

    Instalacin y configuracin de Nagios

    Como podis ver, yo me lo he enviado a m mismo, cada uno ya lo enva a quien quiera.

    Utilizacin de nagios Para comenzar a utilizar nagios, abriremos el navegador, he ingresaremos

    http://ip_del_servidor/nagios

    Visualizar por grupos La manera ms fcil de tener controlados todos los equipos es dndole en la parte izquierda de

    la pantalla a GrId, dentro de Hostgroups

  • Pedro Alcaraz Daz Pgina 17 de 18

    Instalacin y configuracin de Nagios

    Y veremos algo as, pero con los servidores que hayas montado:

    El resto est en las manos de cada uno de seguir investigando.

  • Pedro Alcaraz Daz Pgina 18 de 18

    Instalacin y configuracin de Nagios

    Bibliografa: Tutorial de Guille Rodrguez: http://www.driverlandia.com/instalar-nagios-core-y-nagios-

    plugins-en-debian-paso-a-paso-desde-source/

    http://www.wikipedia.org

    http://www.nagios.org/

    http://www.desarrolloweb.com

    Creative Commons Este documento est protegido, por licencia Creative Commons, para ms informacin visite el

    siguiente link:

    http://creativecommons.org/licenses/by-nc-sa/4.0/