1. INSTITUTO TECNOLÓGICO DE TEHUACÁN
CARRERA: ING. EN SISTEMAS COMPUTACIONALES
ASIGNATURA: ADMINISTRACION DE REDES
NAGIOS
INTEGRANTES
ALMA SAGRARIO BELTRAN DURAN
11360565
YAZMIN URRIETA HERNANDEZ
11360658
PROFESOR: ING FRANCISCO VAZQUEZ GUZMAN
TEHUACAN PUE., MAYO 2015
2. NAGIOS
Nagios es un sistema de monitorización de redes ampliamente
utilizado, de código abierto, que vigila los equipos (hardware) y
servicios (software) que se especifiquen, alertando cuando el
comportamiento de los mismos no sea el deseado.
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.
3. 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.
4. DESCRIPCION
Monitorización de servicios de red
(SMTP, POP3, HTTP, NNTP,ICMP, SNMP).
Monitorización de los recursos de equipos hardware (carga del
procesador, uso de los discos, logs del sistema) en varios sistemas
operativos, incluso Microsoft Windows con los
plugins NRPE_NT oNSClient++.
Monitorización remota, a través de túneles SSL cifrados o SSH.
Diseño simple de plugins, que permiten a los usuarios desarrollar sus
propios chequeos de servicios dependiendo de sus necesidades,
usando sus herramientas preferidas
(Bash, C++, Perl,Ruby, Python, PHP, C#...).
Chequeo de servicios paralizados.
Posibilidad de definir la jerarquía de la red, permitiendo distinguir entre
host caídos y host inaccesibles.
5. Instalar Nagios vía apt-get:
Accedemos vía SSH al terminal, ya sea con Putty en Windows, con el Terminal en Mac
OS o Linux y actualizamos nuestro apt-get:
sudo apt-get update
sudo apt-get upgrade
Luego instalamos nagios3:
Sudo apt-get install nagios3 nagios-plugins nagios-nrpe-plugin
sudo apt-get install nagios-nrpe-server nagios-plugins
Aparecerá una pantalla azul solicitando dos veces la contraseña de la administración
Web de Nagios, será necesaria cada vez que queramos acceder al panel Web de
gestión, el usuario es nagiosadmin.
Ya tenemos instalado el servicio y activo en la url: http://ip_del_terminal/nagios3 .
6. Añadir equipos, grupos y servicios
a la configuración
Ya tenemos el panel de gestión accesible en la carpeta nagios3 del servidor web con el
usuario “nagiosadmin” y la contraseña que establecimos al instalarlo, pero si
accedemos podemos ver que sólo hay un equipo, el propio servidor que se
“autoañade” al panel.
Lo óptimo es añadir equipos organizados en ficheros según su tipo, switches y routers en
un fichero (switch.cfg), equipos Windows en otro (windows.cfg), etc…
El primero que añadiremos será nuestro propio router, ya que todo el mundo tiene uno
siempre encendido, crearemos un fichero switch.cfg en la
ruta: /etc/nagios3/objects/switch.cfg con el siguiente contenido:
8. Para crear el fichero desde cero puedes usar el comando:
sudo nano /etc/nagios3/objects/switch.cfg
En el primer bloque de código hemos añadido el host (router) y en el segundo hemos
creado un servicio que hace ping cada 5 minutos, si falla, lo intenta cada minuto,
devolviendo alerta crítica cuando el ping tarda más de 600ms y una alerta cuando supera
los 200ms.
En la definición del Host tenemos ciertas propiedades y valores, los más importantes son:
use: indica que tipo de máquina se va a analizar, por defecto sería “generic-host”, esto aplica
ciertas propiedades según las plantillas analizadas, veremos otras más adelante.
host_name: es el nombre del host, es importante porque será nuestro identificador a la hora de
asociar servicios por ejemplo.
display_name: Nombre a mostrar en el panel de gestión.
address: Dirección IP de la máquina a ser analizada.
check_period: Es opcional e indica el periodo de actividad del host, se puede establecer a
diferentes valores como por ejemplo 24×7 que indica que está siempre activo (24h 7 días), es
posible definir periodos de tiempo (horarios de apertura de una tienda por ejemplo), más
información acerca de los “time periods”
en:http://nagios.sourceforge.net/docs/3_0/timeperiods.html.
9. Las propiedades más importantes de la definición de los servicios son:
use: indica el tipo de servicio, usaremos “generic-service”.
host_name: Establece el host o hosts (separados por comas) a los que afectará este servicio.
service_description: Texto descriptivo de la funcionalidad del servicio.
check_command: Es el comando que se lanzará contra el host, existen muchos predefinidos y
podemos crear más, los comandos predefinidos están en la ruta /usr/lib/nagios/plugins, hay mucha
información en Google de cómo funciona y cómo parametrizar cada comando.
nombre_check_interval: El tiempo transcurrido entre cada ejecución del comando.
retry_check_interval: El tiempo que transcurre desde que hay una ejecución del comando fallida y el
siguiente intento.
Ahora que hemos añadido un nuevo host y nuevo servicio en el archivo switches.cfg,
tenemos que decirle a Nagios que lea ese fichero al iniciar el servicio, para ello tenemos que
editar el fichero nagios.cfg situado en: /etc/nagios3/nagios.cfg, y quitar la almohadilla (#) de
la linea que dice:
cfg_file=/etc/nagios3/objects/switch.cfg
De esta forma ya no es un comentario y la ejecutará al iniciar el servicio.
Ahora, para que los cambios tengan efecto y aparezca nuestro nuevo host y servicio en el
panel tenemos que reiniciar el servicio nagios.
10. Reiniciar el servicio Nagios3 para
que los cambios tengan efecto:
sudo service nagios3 restart
Con esto ya deberíamos ver nuestro router en el panel de gestión,
en la sección Hosts, y en la sección servicios, deberíamos ver el ping
que se le hace al router, captura de pantalla:
11.
12.
13. Instalación de Nagios
Todo el proceso de instalación se hace desde la consola. Recordemos
que se trata de un servidor, como menos cosas tengamos instaladas
mejor. Hay que iniciar sesión con un usario con los permisos
correspondientes para hacer este tipo de instalación, para esta
entrada se utiliza el usuario root. Empezamos por instalar, si no lo está,
el compilador GCC y sus dependencias.
yum -y install gcc
Creación del usuario y grupo para utilizar en los servicios de Nagios:
useradd nagios
groupadd nagcmd
usermod -a -G nagcmd nagios
Nagios no es un único paquete que se instala y ya está. Lo forman
diferentes componentes y a la vez un montón de añadidos, casi para
controlarlo todo, que se añaden según las necesidades.
14. Nagios core. Es el núcleo del entorno de monitorización, lo primero
que hay que instalar y que lo hace funcionar todo.
Nagios Plugins. Son complementos, o también llamados comandos,
para poder monitorizar diferentes dispositivos, servicios, hardware,
etc… El paquete Nagios Plugins corresponde a comandos
básicos para empezar a funcionar y, que se pueden ampliar según
las necesidades. Tenéis un puñado en el directorio de intercambio
Exchange Nagios.
Nagios FrontEnd. El entorno Nagios no es lo que se llama,
precisamente, de lo más bonito, tampoco es su objetivo.
LosFrontEnds son temas o interfaces enteras que hacen más
agradable o adaptable el entorno a las necesidades de cada uno.
Es la manera de representar gráficamente los datos recogidos.
15. Para la instalación de nuestro entorno de monitorización Nagios utilizaremos los siguientes
paquetes, en su vertiente de software libre:
Nagios core v. 4.0.8 – http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-
4.0.8.tar.gz
Nagios plugins v. 2.0.3 – http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
Vantour Style – http://www.be-root.com/downloads/nagios/vautour/vautour_style.zip
Creamos una carpeta temporal para descargar todos estos paquetes
mkdir /tempnagios
cd /tempnagios
Para descargar directamente sobre el servidor Linux, instalar WGET (este último es
opcional).
yum -y install wget
Hacer la descarga de los diferentes paquetes:
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.0.8.tar.gz
wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
wget http://www.be-root.com/downloads/nagios/vautour/vautour_style.zip
16. Una vez se hayan descargado los tres archivos, es el turno de descomprimirlos. De
momento los instaladores:
tar zxvf nagios-4*
tar zxvf nagios-plugins-*
Con lo que nos quedará similar a la captura de pantalla:
17. Borrar los archivos comprimidos:
rm -f nagios-4*.tar.gz
rm -f nagios-plugins-2*.tar.gz
Preparar para compilar la aplicación, asignando el grupo de seguridad a utilizar.
Primero, acceder al directorio donde se ha descomprimido el archivo de Nagios
core descargado (naturalmente, se debe cambiar la ruta de los directorios
según la instalación). Ejecutar la instrucción configure asignando a la instalación
el grupo de seguridad para Nagios nagcmd creado anteriormente:
cd /tempnagios/nagios-4.0.8
./configure --with-command-group=nagcmd
Compilar y instalar la aplicación:
make all
make install
make install-init
make install-config
make install-commandmode
make install-webconf
18. Creación del usuario para acceder al entorno web, por ejemplo: nagiosadmin.
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Pide la contraseña del nuevo usuario. Con este método, se pueden añadir tantos usuarios como se crea oportuno.
No olvidarse de reiniciar el servicio web del Apache para que aplique los cambios del nuevo directorio web de Nagios, sino
no se cargará nada:
systemctl restart httpd
Configurar para instalar los plugins (recordar que los directorios se deben cambiar por los correspondientes en cada caso):
cd /tempnagios/nagios-plugins-2.0.3
./configure --with-nagios-user=nagios --with-nagios-group=nagcmd
Compilar y instalar los plugins:
make
make install
Habilitar el servicio de Nagios para iniciarse automáticamente cada vez que se inicie el servidor y se ponga en marcha:
chkconfig --add nagios
chkconfig --level 35 nagios on
systemctl start nagios
Se puede comprobar que funciona abriendo un navegador Web y accediendo a la dirección de Nagios. Corresponde al
nombre del servidor web y el directorio virtual /nagios, por ejemplo: http://servidor/nagios. Al hacerlo, pide nombre deusuario
y contraseña. Son los que se han establecido con el comando htpasswd: nagiosadmin. Si todo está correcto se abre la
página principal de Nagios. Es un primer paso, pero no el último.