Este documento proporciona una introducción a Nagios, un sistema de monitoreo de red de código abierto. Explica que Nagios monitorea equipos, servicios de red como SMTP, POP3, HTTP y SNMP, y recursos de hardware como CPU, memoria y discos. También describe cómo instalar y configurar Nagios en Ubuntu Server 12.04, incluyendo la creación de usuarios, descarga e instalación del software y configuración inicial.
Instalación y configuración de Nagios para monitoreo de red
1. REPÚBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DEL PODER POPULAR PARA LAEDUCACIÓN
UNIVERSITARIA
IUT DEL OESTE “MARISCAL SUCRE”
Prof.: Participantes:
Lic. MSc. Ángel Daniel Fuentes S Albert Silva
V- 21.089.726
Luigi Pereira
V- 19.293.470
Brian Molina
V- 22.020.336
Caracas, mayo 2013
NAGIOS
2. TABLA DE CONTENIDO
1. INTRODUCCIÓN................................................................................................................. III
2. NAGIOS..............................................................................................................................IV
3. SISTEMA DE MONITOREO. ................................................................................................VI
4. SERVICIOS.........................................................................................................................VII
4.1. SMTP.........................................................................................................................VII
4.2. POP3 .........................................................................................................................VII
4.3. HTTP:.........................................................................................................................VII
4.4. SNMP:......................................................................................................................VIII
5. CARACTERISTICAS............................................................................................................VIII
6. INSTALACION NAGIOS ........................................................................................................ X
7. CONCLUSION....................................................................................................................XV
8. ANEXOS............................................................................................................................XVI
9. REFERENCIAS BIBLIOGRAFICAS ..................................................................................... XXIII
4. IV
NAGIOS
Según Salvador Marín Hernández, en su libro “Las competencias profesionales
relacionadas con las TIC y el espíritu emprendedor” (2007), publica que Nagios es un
programa open source para la monitorización de redes, equipos y servicios. Fue usado
intensivamente durante el primer año del proyecto, cuando aún no había demasiados
centros para monitorizar. A partir del segundo año resulto prácticamente imposible
seguir haciendo uso del mismo debido a la gran cantidad de centros a monitorizar. A
pesar de las herramientas de configuración automáticas, se hace necesaria una
solución más acorde con las necesidades especificadas del CGA.
También, JuliánVerón,en su libro “prácticas de redes”(2010), público que Nagios
es un software libre con licencia GPL2, que presenta un diseño modular, de tal forma
que puede ir creciendo en función de nuestras necesidades con tan solo añadir plug-
ins por lo que a medida que aparezcan nuevos dispositivos en el mercado su
actualización será sencilla.
Ahora bien Simplificando un poco de lo que puede hacer este software tenemos
como definición que Nagios es un sistema de monitorización de redes de código
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 características principales figuran la monitorización de
servicios de red (SMTP, POP3, HTTP, SNMP...), 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 o SSH, y la posibilidad de programar plugins
específicos para nuevos sistemas.
5. V
Se trata de un software que proporciona una gran versatilidad para consultar
prácticamente cualquier parámetro de interés de un sistema, y genera alertas, que
pueden ser recibidas por los responsables correspondientes mediante (entre otros
medios) correo electrónico y mensajes SMS, cuando estos parámetros exceden de los
márgenes definidos por el administrador de red.
IMAGEN EXTRAIDA DE:
http://www.soplo.cl/wp-content/uploads/2007/08/nagios_grande.jpg
6. VI
SISTEMA DE MONITOREO.
Chequeo de servicios paralizados.
Posibilidad de definir la jerarquía de la red, permitiendo distinguir entre host
caídos y host inaccesibles.
Notificaciones a los contactos cuando ocurren problemas en servicios o hosts, así
como cuando son resueltos (a través del correo electrónico, buscapersonas,
Jabber, SMS, o cualquier método definido por el usuario junto con su
correspondiente complemento).
Posibilidad de definir manejadores de eventos que ejecuten al ocurrir un evento
de un servicio o host para resoluciones de problemas proactivas.
Rotación automática del archivo de registro.
Soporte para implementar hosts de monitores redundantes.
Visualización del estado de la red en tiempo real a través de interfaz web, con la
posibilidad de generar informes y gráficas de comportamiento de los sistemas
monitorizados, y visualización del listado de notificaciones enviadas, historial de
problemas, archivos de registros
7. VII
SERVICIOS
SMTP
(Protocolo para la transferencia simple decorreo electrónico), es un protocolo de
la capa de aplicación. Protocolo de red basado en texto, utilizado para el intercambio
de mensajes de correo electrónico entrecomputadoras u otros dispositivosteléfonos
móviles, Está definido en elRFC 2821 y es un estándar oficial de Internet.
POP3
(Protocolo de Oficina de Correo o "Protocolo de Oficina Postal") en clientes
locales de correo para obtener los mensajes de correo electrónico almacenados en
un servidor remoto. Es un protocolo de nivel de aplicación en el Modelo OSI.
Las versiones del protocolo POP, informalmente conocido como POP1 y POP2, se
han hecho obsoletas debido a las últimas versiones de POP3. En general cuando se
hace referencia al término POP, se refiere a POP3 dentro del contexto de protocolos
de correo electrónico.
HTTP:
Es el protocolo usado en cada transacción de la World Wide Web. HTTP fue
desarrollado por el World Wide Web Consortium y la Internet Engineering Task
Force, colaboración que culminó en 1999 con la publicación de una serie de RFC, el
más importante de ellos es el RFC 2616 que especifica la versión 1.1. HTTP define la
sintaxis y la semántica que utilizan los elementos de software de la arquitectura web
(clientes, servidores, proxies) para comunicarse. Es un protocolo orientado a
transacciones y sigue el esquema petición-respuesta entre un cliente y un servidor. Al
cliente que efectúa la petición (un navegador web) se lo conoce como agente del
usuario. A la información transmitida se la llama recurso y se la identifica mediante
un localizador uniforme de recursos (URL). Los recursos pueden ser archivos,
8. VIII
elresultado de la ejecución de un programa, una consulta a una base de datos, la
traducción automática de un documento.
SNMP:
Es un protocolo de la capa de aplicación que facilita el intercambio de información
de administración entre dispositivos de red. Permite a los administradores supervisar
el funcionamiento de la red, buscar y resolver sus problemas, y planear su
crecimiento.
CARACTERISTICAS
Monitoréo de Servicios de Red
Monitoreo de Host y sus recursos como CPU, Memoria, Discos, etc
Desarrollo de Plugins para el chequeo de una infinidad de plataformas y servicios
(muchos de ellos por aporte de la comunidad de Nagios)
Capacidad de Services Checks en paralelo
Capacidad de Definir Host/Servicios padres o hijos, lo que permite detectar el
origen del problema en caso de no ser de la propia máquina (Ejemplo: la caída de
un server por la falla de un Switch)
Definición de Contactos para el envío de notificaciones
Capacidad de definir manejadores de eventos para el manejo de eventos de
manera proactiva
Log de eventos
Interface Web para la visualización de estados de servicio, históricos, Archivo de
Log, etc
Integración con herramientas que la comunidad ha desarrollado
Multiplataforma, aunque fue desarrollado originalmente para correr sobre Linux.
9. IX
Y lo más importante, que es lo que ganas con tener una solución como Nagios:
Supervisión Continua de la plataforma de TI. Esto te permite mejorar tus salas y
mejorar tus tiempos de disponibilidad
Alertar al team de TI ante alertas preventivas (Warning) o críticas (Critical)
Reaccionar de manera preventiva y no reactiva ante los eventos que nagios
detecte.
Generar Reportes de los eventos.
Planificar mantención de tu hardware o servicios.
Planificar el cambio o renovación de la Infraestructura de TIC
.
Bueno todas estas características se potencian más con complementos como
NagVis, NDO, NRPE, NSCA, y la gran cantidad de desarrollos en paralelo que la
comunidad desarrolla.Nagios también tiene su lado comercial, con Nagios XI mejora
la interfaz gráfica nativa de Nagios Core y personalmente creo que lo mejor es la
posibilidad de instalar “Wizard” para la instalación y configuración de monitoreo de
algún hardware en específico.
10. X
INSTALACION NAGIOS
Vamos a panel superior -> Aplicaciones -> Accesosrio -> Terminal -> entras como
root y se actualiza
#aptitude update
Luego pasamos a la instalación de varios paquetes como:
apache2
#aptitude install apache2
Luego instalas libapache2-mod-php5
#aptitude install libapache2-mod-php5
Luego instalas build-essential
#aptitude install build-essential
luego instalas nagios3
#aptitude install nagios3
En la instalación de Nagiossaldrá 2 pantallas, una para colocar la clave de
administrador de Nagios y otra para confirmar la misma. Posteriormente abres un
navegador y colocas http://localhost/nagios3 deberás ingresar usuario: nagiosadmin
password: la clave que colocaste en la instalación de Nagios
Ahora configuración de equipos en Nagios
1.- Editamos el archivo /etc/nagios3/nagios.cfg agregando el nuevo archivo de
configuración.
# Servidores a Monitorear
cfg_file=/etc/nagios3/server.cfg
2.- Dentro del archivo de configuración de nagios.cfg se debe habilitar el chequeo de
comandos externos por defecto viene =0 le colocaremos =1
check_external_commands=1
Ahora procedemos a dar permisos por defecto en la instalación el comando
/var/lib/nagios3/rw/nagios.cmd que nos permite realizar chequeos a través del
browser queda con owner nagios:nagios es por eso que debemos modificar esto
11. XI
dándole permisos para que el usuario de nuestro apache si pueda ejecutarlo, esto lo
arreglamos con:
# dpkg-statoverride --update --add nagios www-data 2710 /var/lib/nagios3/rw
# dpkg-statoverride --update --add nagios nagios 751 /var/lib/nagios3
Ahora reiniciar Nagios
# invoke-rc.d nagios3 restart
Deberá aparecer lo siguiente:
Restarting nagios3 monitoring daemon: nagios3
En el siguiente paso procedemos a editar el archivo server.cfg y colocar los host
que deseas monitorear
#Configuración de un switch
define host{
use generic-host
host_name switch1
alias switch1
address 10.16.3.1
check_command check-switch-alive
max_check_attempts 20
notification_interval 60
notification_period 24x7
notification_options d,u,r
}
#Configuración de un servidor
define host{
use generic-host
host_name canaima-popular
alias Estacion de trabajo
address 10.16.3.56
parents switch1
12. XII
check_command check-switch-alive
max_check_attempts 20
notification_interval 60
notification_period 24x7
notification_options d,u,r
}
Una vez agregado todos los servidor a monitorear reiniciar o reload a Nagios
# invoke-rc.d nagios3 reload
Deberá aparecer lo siguiente:
Reloading nagios3 monitoring daemon configuration files: nagios3.
NOTA: PARA CAMBIAR LA CLAVE DEL NAGIOS
Contraseña Por Defecto: usuario: nagiosadmin contraseña: nagios
Cambiar contraseña: Entrar al Directorio nagios:
~ $ cd / etc/nagios3
Ejecutar El administrar de Contraseñas:
~ $ sudo htpasswd-c htpasswd.users nagiosadmin
Colocar la nueva contraseña Nueva contraseña: Vuelva a escribir la nueva contraseña:
Para configurar los servicios adicionales en Nagios lo realizamos de la siguiente
manera, entramos como root y colocamos lo siguiente al final del archivo mired.cfg y
volvemos a reiniciar el servicio.
# invoke-rc.d nagios3 reload
define service{
use generic-service
host_name nagios
service_description Current Users
check_command check_local_users!20!50
}
13. XIII
define service{
use generic-service
host_name nagios
service_description Total Processes
check_command check_local_procs!250!400!RSZDT
}
define service{
use generic-service
host_name nagios
service_description Current Load
check_command check_local_load!5.0,4.0,3.0!10.0,6.0,4.0
}
define service{
use generic-service
host_name nagios, intranet
service_description SSH
check_command check_ssh
}
define service{
use generic-service
host_name nagios, intranet
service_description HTTP
check_command check_http
}
define service{
use generic-service
16. XVI
ANEXOS
TUTORIAL: Instalar Nagios en Ubuntu Server 12.04,extraído de:
http://mundo-linux-b.blogspot.com/2013/03/instalar-nagios-en-ubuntu-server-
1204.html
NAGIOS:
Nagios es un sistema de monitorización de redes de código 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 características principales figuran la monitorización de servicios de red
(SMTP, POP3, HTTP, SNMP...), 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 o SSH, y la posibilidad de programar plugins específicos para
nuevos sistemas.
Se trata de un software que proporciona una gran versatilidad para consultar
prácticamente cualquier parámetro de interés de un sistema, y genera alertas, que
pueden ser recibidas por los responsables correspondientes mediante (entre otros
medios) correo electrónico y mensajes SMS, cuando estos parámetros exceden de los
márgenes definidos por el administrador de red.
Llamado originalmente Netsaint, nombre que se debió cambiar por coincidencia
con otra marca comercial, fue creado y es actualmente mantenido por Ethan Galstad,
junto con un grupo de desarrolladores de software que mantienen también varios
complementos.
Nagios fue originalmente diseñado para ser ejecutado en GNU/Linux, pero también
se ejecuta bien en variantes de Unix.
Nagios está licenciado bajo la GNU General Public License Version 2 publicada
por la Free Software Fundation.
19. XIX
Instalación de Nagios en Ubuntu Server 12.04
Bien después de una breve explicación vamos a instalarlo:
Instalamos Apache, PHP y librerias;
apt-get install apache2 libapache2-mod-php5 build-essential php5 libgd-graph-perl
postfix libgd2-xpm-dev mailutils unzip
Creamos los usuarios y grupos;
/usr/sbin/useradd -m -s /bin/bash nagios
passwd nagios
/usr/sbin/groupadd nagcmd
/usr/sbin/usermod -a -G nagcmd nagios
/usr/sbin/usermod -a -G nagcmd www-data
20. XX
Descargamos el software de Nagiosmkdir ~/downloads
mkdir ~/downloads
cd ~/downloads
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.3.tar.gz
wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-
1.4.11.tar.gz
Otras fuentes de descarga:
-nagios-3.2.3.tar.gz
-nagios-plugins-1.4.11.tar.gz
Compilamos e instalamos el software
tar xzf nagios-3.2.3.tar.gz
cd nagios-3.2.3
./configure --with-command-group=nagcmd
make all
make install
make install-init
make install-config
make install-commandmode
make install-webconf
Editamos el fichero de contactos modificando el email definido actualmente por
el nuestro;
vim /usr/local/nagios/etc/objects/contacts.cfg
define contact{
contact_name nagiosadmin ; Short name of user
use generic-contact ; Inherit default values from generic-contact template (defined
above)
alias Nagios Admin ; Full name of user
email nagios@osties.com ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS
******
}
21. XXI
Seguimos con la instalación;
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
/etc/init.d/apache2 reload
cd ~/downloads
tar xzf nagios-plugins-1.4.11.tar.gz
cd nagios-plugins-1.4.11
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install
Lo configuramos para iniciarse con el sistema;
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios
El siguiente comando se utuliza para ver si el nagios (binario) funciona
correctamente con el nagios.cfg (similar al apache2ctl -t en Apache) Asi veremos si
funcionan nuestras modificaciiones :
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
/etc/init.d/nagios start
Ya podemos acceder a nuestro servidor http://pre.osties.com/nagios/
User:nagiosadmin Una virtud de Nagios no es su entorno grafico. Por eso vamos a
modificarle el frontend.
cd ~/downloads
wget www.be-root.com/downloads/nagios/vautour/vautour_style.zip
mkdir vautour
unzip vautour_style.zip -d vautour
cp -Rfa /usr/local/nagios/share /usr/local/nagios/share_OLD
cp -Rfa vautour/* /usr/local/nagios/share/.
Otras fuentes de descarga:
vautour_style.zip
23. XXIII
REFERENCIAS BIBLIOGRAFICAS
Salvador Marín Hernández, (2007) “Las competencias profesionales relacionadas
con las TIC y el espíritu emprendedor”, Extraído el 25 de mayo de 2013 de:
http://books.google.co.ve/books?id=Bm_s1cJ1Q5sC&pg=PA136&dq=QUE+ES+NA
GIOS&hl=es&sa=X&ei=spGlUbrKGoS88ATqk4DYBA&ved=0CDUQ6AEwAg#v=
onepage&q=QUE%20ES%20NAGIOS&f=false
Verón Julián, (2010) “prácticas de redes”. Extraído el 25 de mayo de 2013 de:
http://books.google.co.ve/books?id=WEfnGbAwM0kC&pg=PA211&dq=QUE+ES+
NAGIOS&hl=es&sa=X&ei=spGlUbrKGoS88ATqk4DYBA&ved=0CDAQ6AEwAQ
#v=onepage&q=QUE%20ES%20NAGIOS&f=false
M. Domínguez. (2003). Wikipedia. Recuperado el 26 de mayo 2013 de
http://es.wikipedia.org/wiki/Nagios
Muñoz Pablo A. (2 septiembre, 2012). Nagios, NRPE, NSCA y Otras Cosas.
Recuperado el 26 de mayo de 2013 de:
http://www.nagios-cl.org/?p=292
Rodríguez Guille. (Diciembre 2012). Driver Landia. Recuperado el 27 de mayo de
2013 de:
http://www.driverlandia.com/instalar-nagios-core-y-nagios-plugins-en-debian-paso-a-
paso-desde-source/
GNU Free Documentation License 1.2,(Abril 2013).Caniama “Instalación de
nagio”. Recuperado el 27 de mayo de 2013
http://wiki.canaima.softwarelibre.gob.ve/wiki/Instalaci%C3%B3n_de_Nagios
GNU Free Documentation License 1.2
Markitos. (11/04/2011). Manual de instalación y configuración de Nagios 3 –
Monitoring Parte II. Recuperado el 27 de mayo de 2013 de:
http://www.becodemyfriend.com/2011/04/manual-de-instalacion-y-configuracion-de-
nagios-3-monitoring-parte-ii/
Mundo Linux, (domingo, 17 de marzo de 2013). Instalar Nagios en Ubuntu Server
12.04. Extraído el 28 de mayo de 2013 de :
http://mundo-linux-b.blogspot.com/2013/03/instalar-nagios-en-ubuntu-server-
1204.html