Nagios en debían etch
Para empezar instalamos los paquetes necesarios, si no poseen un servidor HTTP instalen un apache o apache2 antes de continuar: #aptget install nagiostext nagiosplugins El asistente nos va a realizar una serie de preguntas: * Tipo de servidor HTTP: Acá elegimos el que corresponda, en mi caso apache2. * Contraseña de administrador: La que deseemos, es para entrar mas tarde. * Habilitar la capacidad de ejecutar comandos externos vía web: Si. Terminada la descompresión y configuración de los paquetes necesarios vamos a la configuración: Nagios se configura en /etc/nagios/nagios.cfg, cgi.cfg y en el resto de los archivos de ese directorio. Los archivos (principales, básicos y obligatorios) a configurar serán: nagios.cfg, cgi.cfg, hosts.cfg,hostgroups.cfg, contacts.cfg, contactgroups.cfg, misccommands.cfg, services.cfg. nagios.cfg: Como viene por defecto no hace falta tocar nada para empezar a usarlo. cgi.cfg: Configuramos las siguientes lineas para que únicamente nagiosadmin tenga acceso total al sistema. authorized_for_system_information=nagiosadmin authorized_for_configuration_information=nagiosadmin authorized_for_system_commands=nagiosadmin authorized_for_all_services=nagiosadmin authorized_for_all_hosts=nagiosadmin authorized_for_all_service_commands=nagiosadmin authorized_for_all_host_commands=nagiosadmin hosts.cfg: Acá debemos configurar todas las máquinas que queremos monitorizar. Cada una deberá, al menos, tener un servicio: check_ping, check_http, check_ftp, etc…
definimos aquellos servicios
define host{ use generichost host_name apolo.net alias Apolo address 127.0.0.1 ; direccion ip de el equipo que deseamos monitorear check_command checkhostalive max_check_attempts 10 notification_interval 120 notification_period 24×7 notification_options d,u,r } hostgroups.cfg: Cada host que definamos tiene que pertenecer a un hostgroup y cada hostgroup debe tener un contact_groups. En nuestro caso vamos a tener un solo grupo llamado: monitoreo y un grupo de contacto llamado admines. define hostgroup{ hostgroup_name monitoreo alias Monitoreo contact_groups admines members apolo.net } contacts.cfg: Acá definiremos las personas a las que se les notificara de las posibles incidencias de las máquinas de la red. En nuestro caso vamos a definir una sola persona. define contact{ contact_name nagios alias Nagios Admin service_notification_period 24×7 host_notification_period 24×7 service_notification_options w,u,c,r host_notification_options d,u,r service_notification_commands notifybyemail host_notification_commands hostnotifybyemail email nagiosadmin@localhost ;no es buena idea usar un mail que #este en la máquina a monitorizar } contactgroups.cfg: Cada contacto tiene que pertenecer a un grupo de contacto, en nuestro caso
tenemos solo a uno: nagios quien deberá pertenecer al grupo admines. define contactgroup{ contactgroup_name admines alias Admines members nagios } services.cfg: Acá vamos a definir los servicios que vamos a monitorear de nuestros hosts. En nuestro caso vamos a ver todos los servicios de la máquina: define service{ use genericservice host_name apolo.net service_description PING is_volatile 0 check_period 24×7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups admines notification_interval 240 notification_period 24×7 notification_options c,r check_command check_ping!100.0,20%!500.0,60% } define service{ use genericservice host_name apolo.net service_description FTP is_volatile 0 check_period 24×7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups admines notification_interval 240 notification_period 24×7 notification_options w,u,c,r check_command check_ftp } define service{ use genericservice host_name apolo.net service_description HTTP is_volatile 0 check_period 24×7 max_check_attempts 3
normal_check_interval 5 retry_check_interval 1 contact_groups admines notification_interval 240 notification_period 24×7 notification_options w,u,c,r check_command check_http } define service{ use genericservice host_name apolo.net service_description SMTP is_volatile 0 check_period 24×7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups admines notification_interval 240 notification_period 24×7 notification_options w,u,c,r check_command check_smtp } define service{ use genericservice host_name apolo.net service_description POP3 is_volatile 0 check_period 24×7 max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups admines notification_interval 240 notification_period 24×7 notification_options w,u,c,r check_command check_pop } escalations.cfg y dependencies.cfg: Comentar todas las líneas que aparezcan en estos archivos con # delante. Una vez configurado verificamos si tenemos algún error en lo que acabamos de configurar: # nagios v /etc/nagios/nagios.cfg Si no recibimos ningún error, reiniciamos el demonio:
# /etc/init.d/nagios restart Si configuramos nuestro servidor HTTP con el asistente, para ingresar a nagios solo tenemos que ir a http://127.0.0.1/nagios con nuestro browser favorito y autenticarnos con el usuario nagiosadmin y la clave que configuramos inicialmente.