Inicio Linux & Systems Networks & Infrastructure Cybersecurity Cloud & DevOps SIEM & Monitoring DFIR & Threat Intel Development & Other Todas las categorias Herramientas

Monitorización basica de Windows en Nagios

Monitorización basica de Windows en Nagios

Tabla de contenidos

LogoNagios

Anteriormente ya hemos hablado de Nagios. Podéis ver el manual de la instalación AQUI

Pues ahora vamos a monitorizar una maquina Microsoft Windows, Para su monitorización vamos a utilizar el protocolo SNMP (Si no lo sabéis instalar en Windows AQUI tenemos un manual) y los chequeos van a ser de Memoria, CPU, Disco y PING.

Una vez ya tenemos instalado y configurado NAGIOS Y SNMP vamos a empezar a monitorizar.

Definir los comandos: 

para definir tenemos que añadir los siguientes comandos al fichero commands.cfg, este fichero estará… dependiendo de la instalación que habríais realizado:

bash
vi /etc/nagios3/commands.cfg

Y añadimos lo siguiente:

define command{
command_name check_wincpu_snmp
command_line /usr/bin/perl $USER1$/check_snmp_load.pl -H $HOSTADDRESS$ -C $ARG1$ -2 -T stand -w $ARG2$ -c $ARG3$
}

define command{
command_name check_winmem_snmp
command_line /usr/bin/perl $USER1$/check_disk_snmp.pl -H $HOSTADDRESS$ -s $ARG1$ -d phys -u $ARG2$ -w $ARG3$ -c $ARG4$
}

define command{
command_name check_disk_snmp
command_line /usr/bin/perl $USER1$/check_disk_snmp.pl -H $HOSTADDRESS$ -s $ARG1$ -d $ARG2$ -u $ARG3$ -w $ARG4$ -c $ARG5$
}

define command{
command_name check_ping
command_line $USER1$/docu $ARG3$ «$USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 1»
}

Creamos las carpetas donde vamos a alojar los archivos de configuración 

bash
mkdir /etc/nagios3/etc/cfg/Windows/

Accedemos al direcctorio 

text
cd /etc/nagios3/etc/cfg/Windows/

Creamos el fichero hosts.cfg con el siguiente contenido

bash
#Definimos el grupo y los miembros que van a pertenecer a ese grupo

define hostgroup {

hostgroup_name grupo-windows

alias Microsoft Windows Servers

members cpd_192.168.1.112

}
#Definimos el chequeo de PING
#Ping to hosts
define service {

use windows-srv

hostgroup_name grupo-windows

service_description Windows CPD01 – ping

check_command check_ping!100.0,10%!500.0,20%

}

#Hosts Definition
#Definimos el host
define host {

use windows-srv

host_name cpd_192.168.1.112

alias CPD01

address 192.168.1.112
}

Creamos el fichero templete.cfg en el cual vamos a definir los servicios. 

text
define host {

name windows-srv

flap_detection_enabled 1

notification_period 24×7

notification_options d,u,r

retain_status_information 1

retain_nonstatus_information 1

contact_groups grupo-windows

# check_command check_command_blank

max_check_attempts 3

register 0
}
define service {

name windows-srv

check_period 24×7

flap_detection_enabled 1

notification_period 24×7

notification_options w,u,c,r

parallelize_check 1

retain_status_information 1

retain_nonstatus_information 1

max_check_attempts 3

normal_check_interval 3

retry_check_interval 1

contact_groups grupo-windows

register 0

}

 Definimos el archivo de contacto contacts.cfg

bash
define contact{

contact_name grupo-windows

alias grupo-windows

service_notification_period 24×7

host_notification_period 24×7

service_notification_options w,u,c,r

host_notification_options d,r

service_notification_commands notify-service-by-email

host_notification_commands notify-host-by-email

email rokitoh@redorbita.com

}

define contactgroup {

contactgroup_name grupo-windows

alias Grupo de Windows

members grupo-windows

}

Y por ultimo definimos los chequeos cpd01.cfg. 

text
define service {

use windows-srv

host_name cpd_192.168.1.112

service_description Uso CPU

check_command check_wincpu_snmp!redorbita!80!90

}
define service {

use windows-srv

host_name cpd_192.168.1.112

service_description Uso MEM

check_command check_winmem_snmp!redorbita!MB!80%!90%

}

define service {

use windows-srv

host_name cpd_192.168.1.112

service_description Disco C:

check_command check_disk_snmp!redorbita!C!MB!1527!898

}

Una vez creado el fichero tenemos que añadir la ruta de los mismos en el archivo nagios.cfg

bash
vi /etc/nagios3/nagios.cfg

Al final del archivo añadimos lo siguiente:

bash
############## Monitorización Windows #############
cfg_file=/etc/nagios3/etc/cfg/Windows/templete.cfg

cfg_file=/etc/nagios3/etc/cfg/Windows/hosts.cfg

cfg_file=/etc/nagios3/etc/cfg/Windows/cpd01.cfg

cfg_file=/etc/nagios3/etc/cfg/Windows/contacts.cfg

Chequeamos para ver si no hay ningún error en los archivos de configuración

bash
rokitoh@nagios:/etc/nagios3/etc/cfg/Windows# nagios3 -v /etc/nagios3/nagios.cfg
Nagios Core 3.2.1

Copyright (c) 2009-2010 Nagios Core Development Team and Community Contributors

Copyright (c) 1999-2009 Ethan Galstad

Last Modified: 03-09-2010

License: GPL
Website: http://www.nagios.org

Reading configuration data…

Read main config file okay…

Processing object config file ‘/etc/nagios3/commands.cfg’…

Processing object config directory ‘/usr/lib/nagios/plugins’…

Processing object config file ‘/usr/lib/nagios/plugins/mailq.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_storage.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ifstatus.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_load.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/breeze.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ftp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/apt.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/tcp_udp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ntp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/dummy.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/mrtg.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/rpc-nfs.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/users.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/games.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/real.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/pgsql.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_vrrp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/flexlm.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_win.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ssh.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ping.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/news.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/telnet.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/radius.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/fping.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/netware.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_cpfw.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_process.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/procs.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/ldap.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/mysql.cfg’…

Processing object config directory ‘/usr/lib/nagios/plugins/doc’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_int.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_mem.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/snmp_env.cfg’…

Processing object config file ‘/usr/lib/nagios/plugins/load.cfg’…

Processing object config directory ‘/etc/nagios3/conf.d’…

Processing object config file ‘/etc/nagios3/conf.d/timeperiods_nagios2.cfg’…

Processing object config file ‘/etc/nagios3/conf.d/contacts.cfg’…

Processing object config file ‘/etc/nagios3/conf.d/generic-host_nagios2.cfg’…

Processing object config file ‘/etc/nagios3/conf.d/generic-service_nagios2.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Windows/templete.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Windows/hosts.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Windows/cpd01.cfg’…

Processing object config file ‘/etc/nagios3/etc/cfg/Windows/contacts.cfg’…

Read object config files okay…
Running pre-flight check on configuration data…
Checking services…

Checked 4 services.

Checking hosts…

Checked 1 hosts.

Checking host groups…

Checked 1 host groups.

Checking service groups…

Checked 0 service groups.

Checking contacts…

Checked 2 contacts.

Checking contact groups…

Checked 2 contact groups.

Checking service escalations…

Checked 0 service escalations.

Checking service dependencies…

Checked 0 service dependencies.

Checking host escalations…

Checked 0 host escalations.

Checking host dependencies…

Checked 0 host dependencies.

Checking commands…

Checked 193 commands.

Checking time periods…

Checked 4 time periods.

Checking for circular paths between hosts…

Checking for circular host and service dependencies…

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

rokitoh@nagios:/etc/nagios3/etc/cfg/Windows#

Y reiniciamos nagios

rokitoh@nagios:/etc/nagios3/etc/cfg/Windows# /etc/init.d/nagios3 reload
Reloading nagios3 monitoring daemon configuration files: nagios3.
rokitoh@nagios:/etc/nagios3/etc/cfg/Windows#

Abrimos nagios en nuestro navegador favorito y si todo a salido bien lo tendríamos que tener OK!

Pantallazo

Un saludo, rokitoh!

Comentarios