Usando Linux para muchas cosas y disfrutando de videojuegos, en dispositivos moviles, consolas y pc. Using Linux for many things and enjoying video games, mobile devices, consoles and pc

Mostrando entradas con la etiqueta nagios monitoring. Mostrar todas las entradas
Mostrando entradas con la etiqueta nagios monitoring. Mostrar todas las entradas

Como instalar Nagios en Centos 6.4 paso a paso

DriveMeca instalando Nagios en un servidor Linux Centos 6.x / 7.x paso a paso
Tienes muchos equipos, servidores, dispositivos, etc, que quieres monitorear su uso, servicios? Para eso hoy te mostrare como instalar Nagios en Centos 6.4 / Centos 7 paso a paso. Nagios es un sistema de monitoreo usado ampliamente y un referente en cuanto a estos desarrollos; cuando se habla de monitoreo encontramos a Nagios como lider. Ahora, con esta herramienta podrás por medio de una interfaz web saber el status de los equipos o dispositivos que ingreses.
También genera reportes, alarmas visuales y auditivas entre otras posibilidades para que ese fallo no te coja por sorpresa.

Requerimientos


Preparamos Linux Centos para instalar Nagios

-Instalamos dependencias
yum install gd gd-devel gcc glibc glibc-common wget unzip net-snmp*

-Creamos el usuario nagios y le colocamos contraseña
useradd -m nagios
passwd nagios

-Creamos un grupo para ejecutar comandos via web
groupadd nagcmd
usermod -a -G nagcmd nagios
usermod -a -G nagcmd apache

-Descargamos Nagios Core y Nagios Plugins. En este momento la ultima version es 4.3.1 para Nagios Core y 2.1.4 para Nagios Plugins; recomiendo descargar la ultima version existente
wget -c https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.3.1.tar.gz
wget -c http://www.nagios-plugins.org/download/nagios-plugins-2.1.4.tar.gz

                                         Como actualizar nagios 3 paso a paso
                                         Como crear un usuario de solo lectura en Nagios
                                         Como instalar snmp trap en Nagios
                                         Como instalar PNP4Nagios

Instalamos Nagios en Linux Centos

-Descomprimimos el archivo y entramos a su directorio
tar xzvf nagios-4.3.1.tar.gz
cd nagios-4.3.1

-Compilamos e instalamos nagios bajo el grupo nagcmd
./configure --with-command-group=nagcmd
make all
make install

-Creamos los scripts de inicio
make install-init

-Creamos ficheros de configuracion de ejemplo
make install-config

-Activamos permisos
make install-commandmode

-Instalamos la consola web
make install-webconf

-Creamos un usuario administrador para la interfaz web y le colocamos contraseña
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Instalamos plugins de Nagios en Linux Centos

-Salimos del directorio de compilación de Nagios, descomprimimos el tgz de plugins y entramos a su directorio
cd ..
tar xzvf nagios-plugins-2.1.4.tar.gz
cd nagios-plugins-2.1.4

-Comenzamos a compilar e instalamos, esta vez como usuario y grupo nagios
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install

Configuramos Nagios en Linux Centos

-Hacemos una copia de seguridad y editamos contactos
cp /usr/local/nagios/etc/objects/contacts.cfg /usr/local/nagios/etc/objects/contacts.cfg.old
vi /usr/local/nagios/etc/objects/contacts.cfg
define contact{
 contact_name    nagiosadmin           ; El usuario administrador creado en pasos anteriores
 use             generic-contact               ; Hereda valores de la plantilla generic-contact
 alias           Nagios Admin                ; Nombre completo

 email         nagios@localhost       ; <<***** Email del administrador, debe ser uno real y que funcione ******
        }

define contactgroup{
        contactgroup_name       admins
        alias                   Nagios Administrators
        members                 nagiosadmin   ;Aquí podemos agregar usuarios administrativos
        }

-Reiniciamos el servicio de apache
Linux Centos 6.x
service httpd restart

Linux Centos 7.x
systemctl restart httpd

-Verificamos este la configuracion de nagios hasta el momento correcta. Debe decirnos que 0 Warnings y 0 Errors

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

Nagios Core 4.1.1
Copyright (c) 2009-present Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 08-19-2015
License: GPL

Website: https://www.nagios.org
Reading configuration data...
   Read main config file okay...
   Read object config files okay...

Running pre-flight check on configuration data...

Checking objects...
 Checked 8 services.
 Checked 1 hosts.
 Checked 1 host groups.
 Checked 0 service groups.
 Checked 1 contacts.
 Checked 1 contact groups.
 Checked 24 commands.
 Checked 5 time periods.
 Checked 0 host escalations.
 Checked 0 service escalations.
Checking for circular paths...
 Checked 1 hosts
 Checked 0 service dependencies
 Checked 0 host dependencies
 Checked 5 timeperiods
Checking global event handlers...
Checking obsessive compulsive processor commands...
Checking misc settings...

Total Warnings: 0
Total Errors:   0

Things look okay - No serious problems were detected during the pre-flight check

-Activamos el servicio de nagios para que se ejecute cada vez que haga boot el servidor y lo iniciamos

Centos 6.x
chkconfig --add nagios
chkconfig nagios on
service nagios start

Centos 7.x
systemctl enable nagios
systemctl start nagios

-Abrimos un browser y navegamos a http://IP-Servidor/nagios Ingresamos con el usuario nagiosadmin y su contraseña creado en pasos anteriores. En la pagina siguiente nos mostrara un menu vertical a la izquierda y dependiendo de donde demos click, los resultados en el centro de la pantalla
DriveMeca instalando Nagios en un servidor Linux Centos 6.x / 7.x paso a paso

-Una opción muy recomendable en Nagios es usar Tactical Overview, mas que todo cuando tenemos muchos dispositivos y servicios en monitoreo. De un vistazo podemos ver todo
DriveMeca instalando Nagios en un servidor Linux Centos 6.x / 7.x paso a paso

-Aunque podemos ir mas al detalle y mirar los servicios de un dispositivo (servidor en este caso) en que estado están y allí por un sencillo sistema de colores veremos como están (verde=ok, amarillo=prestar atención y rojo=error)
DriveMeca instalando Nagios en un servidor Linux Centos 6.x / 7.x paso a paso

-En un momento dado podemos filtrar y solo ver los servicios que presenten warning o error en Nagios
DriveMeca instalando Nagios en un servidor Linux Centos 6.x / 7.x paso a paso

-También podemos mirar mas de cerca a un dispositivo y activar chequeo, desactivarlo, ver reportes sobre su estado, etc
DriveMeca instalando Nagios en un servidor Linux Centos 6.x / 7.x paso a paso


Actualizar Nagios en Linux Centos

-El tiempo pasa y tu instalación nagios puede requerir actualizarse a la ultima versión por seguridad, para corregir errores o agregar mejoras. Primero, como sabemos si necesitamos actualizar nagios? Sencillo. Navegamos a en la consola web a General - Home y allí nos aparecerá el aviso de si estamos o no con la ultima versión
DriveMeca instalando Nagios en un servidor Linux Centos 6.x / 7.x paso a paso

-Una buena política (indispensable diría yo) es tener un backup
cd /root
tar czvf nagios-backup.tgz /usr/local/nagios/

-Es posible que ya no los tengas, pero por si acaso, borramos antiguos archivos html. En las nuevas versiones de nagios son en php
rm /usr/local/nagios/share/{main,side,index}.html

-Descargamos la ultima versión. Siempre la encontraras en el siguiente URL (recuerda que la gratuita es Core). Para este articulo la mas actual es 4.2.1
wget -c  https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.2.1.tar.gz

-Descomprimimos el paquete y entramos a su directorio
tar xzvf nagios-4.2.1.tar.gz
cd nagios-4.2.1

-Compilamos teniendo cuidado de que usar el mismo grupo que original usamos al instalar
./configure --with-command-group=nagcmd
make all
make install

-Verificamos todo este ok con 0 errores o warnings en nuestra configuracion nagios en linux centos
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Nagios Core 4.2.1
Copyright (c) 2009-present Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 09-06-2016
License: GPL

Website: https://www.nagios.org
Reading configuration data...
   Read main config file okay...
   Read object config files okay...

Running pre-flight check on configuration data...

Checking objects...
Checked 36 services.
Checked 4 hosts.
Checked 2 host groups.
Checked 0 service groups.
Checked 1 contacts.
Checked 1 contact groups.
Checked 28 commands.
Checked 5 time periods.
Checked 0 host escalations.
Checked 0 service escalations.
Checking for circular paths...
Checked 4 hosts
Checked 0 service dependencies
Checked 0 host dependencies
Checked 5 timeperiods
Checking global event handlers...
Checking obsessive compulsive processor commands...
Checking misc settings...

Total Warnings: 0
Total Errors:   0

Things look okay - No serious problems were detected during the pre-flight check

-Reiniciamos y verificamos que el servicio nagios quede ejecutando correctamente
systemctl restart nagios
systemctl status nagios

-Volvemos a nuestro navegador y vamos al menú General - Home. Ya debe aparecernos que estamos en la ultima versión de Nagios Core instalado en nuestro Linux Centos 7
DriveMeca instalando Nagios en un servidor Linux Centos 6.x / 7.x paso a paso


Muy bien, ya tenemos nuestro nagios ejecutándose en un servidor Linux Centos 6.x/7.x. No fue complicado cierto? Ya usas Nagios, que versión, cuantos dispositivos monitoreas, escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Monitorea pfSense por medio de NRPE y Nagios

DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios
Tu firewall pfSense esta funcionando perfecto dejandote tiempo para hacer otras tareas y estas confiado, que malo puede pasar? Pasar, puede pasar que se dañe un disco o que estes bajo ataque y no te hayas dado cuenta, pueden pasar muchas cosas y preciso en el momento en que no estabas mirando logs o monitoreando tu confiable firewall. Por esto es que hoy te traigo este articulo en el que agregaremos una capa de monitoreo con NRPE a tu pfSense para incluirlo en Nagios. Todo como ya es costumbre en español, paso a paso y con screenshoots para que no te pierdas y puedas hacerlo fácilmente

Requerimientos para agregar pfSense a Nagios

  • pfSense firewall 2.x instalado y actualizado a la fecha
  • Nagios instalado y actualizado a la fecha
  • Plugins de Nagios instalados y actualizados
  • Conectividad a internet y entre ambos equipos

-Vamos al menú System - Package Manager - Available Packages, escribimos en la caja de texto nrpe. Presionamos Enter y nos aparecerá debajo, le damos click a su botón verde Install
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

-Se nos pide confirmar la instalación. Damos click al botón verde Confirm
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

-Se instala con éxito el paquete nrpe en nuestro pfSense
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

-A continuación vamos al menú Services - NRPEv2 y le damos click
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

-En la pagina que nos aparecerá activamos el servicio Enable NRPE, permitimos parámetros activando Allow Arguments. Por default ya vendrán varios comandos activos para ejecutarlos via el daemon NRPE
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

-En la sección Commands las columnas tienen los significados, nombre (el que usaremos en los conf de nagios y solo permite caracteres de la a-z o A-Z en ese rango), ejecución con privilegios (sudo), listado de plugins instalados en el firewall pfSense (podemos escogerlos en su lista desplegable), parámetro warning (no es grave pero hay que prestar atención), parámetro critical (es grave), parámetros extras. Esta sección nos permite crear nuevos comandos o eliminar los ya creados por medio del botón Delete
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

Permitimos trafico NRPE entre pfSense y Nagios

-Este paso solo es necesario si tu equipo Nagios esta fuera de la LAN y hará la conexión via internet (Si ambos equipos están en la LAN, no es necesario y puedes saltar al siguiente paso a crear los comandos NRPE). Creamos un Alias en el menú Firewall - Aliases. Damos click al botón verde +Add
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

-Escribimos un nombre (Nagios), Description (descripcion), Type (Host(s)) y por ultimo tenemos dos variantes, un hostname (en caso de que tengas tu equipo Nagios con un dominio y es visible en internet) o con la ip publica. Damos click al botón Save
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

-Seguidamente vamos al menú Firewall - Rules y agregamos una regla dando click al botón verde Add (sugiero que sea para colocarla al final)
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

-En la sección Source elegimos Single host or alias y escribimos Nagios (el alias que nos creamos en el paso anterior). En Destination elegimos WAN address y Destination port range any y any en la ultima columna. La explicación de la regla es que aceptaremos conexiones del equipo Nagios en la interfaz de red Wan por cualquier puerto. Escribimos un comentario sobre esta regla en Description y damos click al botón Save
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios

Creamos un comando NRPE en pfSense para monitorear con Nagios

-Para crear un comando nuevo damos click al botón inferior verde +Add y nos aparecerá uno en blanco en la parte inferior del listado. Para este articulo agregare un chequeo de https, entonces escribimos check_https (primera columna izquierda), activamos Sudo, elegimos check_http (tercera columna), dejamos en blanco la cuarta y quinta columna. Escribimos en la sexta columna -H pfgw -S (-H con el hostname del equipo y -S para que verifique via https). Damos click al botón Save
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios


Agregamos pfSense Firewall a Nagios por medio de NRPE

-En nuestro servidor Nagios nos vamos al directorio de objects a crear definiciones
cd /usr/local/nagios/etc/objects

-Hacemos una copia del conf localhost creando uno nuevo para pfsense llamado firewall.cfg
cp localhost.cfg firewall.cfg

-Editamos templates.cfg y creamos una plantilla para pfSense (el dia de mañana puede que tengas otro que agregar a Nagios)
vi templates.cfg
# pfSense definition

define host{
 name                   pfsense           ;Nombre de la plantilla    
 use                    generic-host      ;Basado en plantilla generic-host
 check_period           24x7              ;Se chequea 24 horas por 7 dias        
 check_interval         5                 ;Chequeo cada 5 minutos            
 retry_interval         1                 ;Se reintenta en caso de fallo al minuto            
 max_check_attempts     10                ;Maximo se repite el chequeo 10 veces          
 check_command          check-host-alive  ;Comando a usar para verificar que el host este activo
 notification_period    24x7              ;Enviar notificaciones 24 horas por 7 dias    
 notification_interval  120               ;Intervalo de envio de notificaciones de 120 minutos          
 notification_options   d,u,r             ;Opciones d (down) u (up) y r (recovery)        
 contact_groups         admins            ;Enviar notificaciones al grupo admins      
 register               0                 ;No se registra al ser una plantilla            
}

-Modificamos nuestro horario de trabajo
vi timeperiods.cfg
# 'workhours' Definición de horario laboral normal de 8am a 5pm de lunes a viernes
define timeperiod{
        timeperiod_name workhours
        alias                      Normal Work Hours
        monday                08:00-17:00
        tuesday                08:00-17:00
        wednesday          08:00-17:00
        thursday              08:00-17:00
        friday                  08:00-17:00
        }

-Editamos el cfg de firewall y creamos la definición de nuestro pfSense firewall (OJO, reemplazar las xxx por la ip real del equipo al igual que el hostname y alias). A continuacion creamos un hostgroup donde iremos agrupando a los firewalls que vayamos colocando en Nagios y comenzamos a crear uno por uno los comandos a ejecutar por medio de NRPE en el equipo remoto, en este caso, nuestro firewall (recuerda que nombre al equipo pfgw en su alias)
vi firewall.cfg
define host{
        use                     pfsense            ; Nombre de plantilla a usar
                                                   ; Esta definición hereda variables de la plantilla
        host_name         pfgw.test.com
        alias                   pfgw
        address              xxx.xxx.xxx.xxx ;IP del equipo
        }

define hostgroup{
        hostgroup_name  firewalls ; Nombre del grupo
        alias           Firewall servers ; Nombre largo del grupo
        members         pfgw     ; Lista separada por comas de equipos pertenecientes al grupo
        }

#Usuarios / pfgw
define service{
        use                             local-service
        host_name                       pfgw
        service_description             Usuarios
        check_command                   check_nrpe!check_users
        }

#Carga / pfgw
define service{
        use                             local-service
        host_name                       pfgw
        service_description             Carga
        check_command                   check_nrpe!check_load
        }

#Particion /  pfgw
define service{
        use                             local-service
        host_name                       pfgw
        service_description             Particion /
        check_command                   check_nrpe!check_root
        }

#Particion /var  pfgw
define service{
        use                             local-service
        host_name                       pfgw
        service_description             Particion /var
        check_command                   check_nrpe!check_var
        }

#Procesos zombie  pfgw
define service{
        use                             local-service
        host_name                       pfgw
        service_description             Procesos zombie
        check_command                   check_nrpe!check_zombie_procs
        }

#Total de procesos  pfgw
define service{
        use                             local-service
        host_name                       pfgw
        service_description             Total de procesos
        check_command                   check_nrpe!check_total_procs
        }

#Https  pfgw
define service{
        use                             local-service
        host_name                       pfgw
        service_description             Https
        check_command                   check_nrpe!check_https
        }

-Editamos nagios.cfg y agregamos una linea para incluir a firewall.cfg
vi ../nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/firewall.cfg

-Ya casi terminamos pero debemos verificar que todo nuestro trabajo esta ok y no tenemos errores en los archivos de configuracion de nagios
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Nagios Core 4.1.1
Copyright (c) 2009-present Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 08-19-2015
License: GPL

Website: https://www.nagios.org
Reading configuration data...
   Read main config file okay...
   Read object config files okay...

Running pre-flight check on configuration data...

Checking objects...
Checked 9 services.
Checked 2 hosts.
Checked 1 host groups.
Checked 0 service groups.
Checked 1 contacts.
Checked 1 contact groups.
Checked 25 commands.
Checked 5 time periods.
Checked 0 host escalations.
Checked 0 service escalations.
Checking for circular paths...
Checked 2 hosts
Checked 0 service dependencies
Checked 0 host dependencies
Checked 5 timeperiods
Checking global event handlers...
Checking obsessive compulsive processor commands...
Checking misc settings...

Total Warnings: 0
Total Errors:   0

Things look okay - No serious problems were detected during the pre-flight check

-Reiniciamos el servicio de Nagios
systemctl restart nagios

-Abrimos un browser y navegamos a la pagina de nuestro Nagios Core. En ella ya debemos poder ver el equipo pfgw (pfSense) con todos los servicios que estamos chequeando via check_nrpe
DriveMeca monitoreando un firewall pfSense con NRPE en un Nagios


Artículos recomendados: Que tanto usas tu proxy, Estadisticas de squid en pfsense 2
                                            Como instalar y configurar pfSense Squid Transparent Proxy
                                            pfSense SquidGuard tutorial paso a paso
                                            Como actualizar pfSense paso a paso

Ahora si podemos decir que no estamos ciegos con respecto a que esta pasando en nuestro firewall pfSense. Gracias a NRPE podemos agregar mas chequeos dependiendo de nuestras necesidades. Te gusto el articulo? hazme un favor, compártelo en tus redes sociales (compartir es sexy). Escríbeme en los comentarios aquí debajo y pasa la voz compartiendo el tweet.

Sígueme en twitter google+facebook o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark