para instalar Nageos requerimos configurar el deposito de Dag Wieers, ( muy útil )
### deposito yum para DAG WIERS
# rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
Instalamos la paqueteria necesaria con yum
# yum - y install nagios nagios-plugins nagios-plugins-nrpe nagios-devel
=========================================
Running Transaction
Installing : nagios-plugins 1/4
Installing : nagios 2/4
Installing : nagios-plugins-nrpe 3/4
Installing : nagios-devel 4/4
=========================================
al instalar la paqueteria necesaria modificamos la configuración en el servidor de apache para brindar mayor seguridad.
# vi /etc/httpd/conf.d/nagios.conf
=========================================
=========================================
generamos el archivo el archivo de contraseñas
# touch /etc/nagios/htpasswd.users
y generamos la contraseña para el usuario que consultara a nageos
# htpasswd /etc/nagios/htpasswd.users nagiosadmin
o podemos utilizar el siguiente comando que generara automaticamente el archivo
# htpasswd -c /etc/nagios/htpasswd.users nagiosadmin
respaldamos los archivos originales de nagios
#cd /etc/nagios/
# for x in *.cfg; do n=${x/.cfg/.cfg-OLD}; cp $x $n; done
limpiamos el archivo archivo cgi.cfg
# sed -e '/^#/d' cgi.cfg-OLD | sed -e '/^$/d' > cgi.cfg
editamos el archivo de configuracion del CGI de nagios para pertmitir el acceso al usuario
# vi cgi.cfg
--------------------------------------
# AUTHENTICATION USAGE
use_authentication=1
# SYSTEM/PROCESS INFORMATION ACCESS
authorized_for_system_information=nagiosadmin
# CONFIGURATION INFORMATION ACCESS
authorized_for_configuration_information=nagiosadmin
# SYSTEM/PROCESS COMMAND ACCESS
authorized_for_system_commands=nagiosadmin
# GLOBAL HOST/SERVICE VIEW ACCESS
authorized_for_all_services=nagiosadmin
authorized_for_all_hosts=nagiosadmin
# GLOBAL HOST/SERVICE COMMAND ACCESS
authorized_for_all_service_commands=nagiosadmin
authorized_for_all_host_commands=nagiosadmin
--------------------------------------
en este archivo hay muchos mas parámetros que no ayudaran a adaptar la interfaz web a nuestras necesidades, ahora vamos a reiniciar nuestro servicio de Apache
# service httpd restart
editamos el archivo nagios.cfg y habilitamos los objects que vamos a utilizar ( estos pueden ser creados por el usuario)
================================================
log_file=/var/log/nagios/nagios.log
cfg_file=/etc/nagios/objects/commands.cfg
cfg_file=/etc/nagios/objects/contacts.cfg
cfg_file=/etc/nagios/objects/timeperiods.cfg
cfg_file=/etc/nagios/objects/templates.cfg
cfg_file=/etc/nagios/objects/localhost.cfg
================================================
en el folder /etc/nagios/objects
movemos todos los archivos con a otra extencion diferente .
# cd /etc/nagios/objects
# for x in *.cfg; do n=${x/.cfg/.cfg-OLD}; cp $x $n; done
vamos a comenzar configurando el archivo timeperiods.cfg
# vi timeperiods.cfg
=================================================
define timeperiod{
timeperiod_name 24x7
alias 24 Hours A Day, 7 Days A Week
sunday 00:00-24:00
monday 00:00-24:00
tuesday 00:00-24:00
wednesday 00:00-24:00
thursday 00:00-24:00
friday 00:00-24:00
saturday 00:00-24:00
}
# 'workhours' timeperiod definition
define timeperiod{
timeperiod_name workhours
alias Normal Work Hours
monday 09:00-17:00
tuesday 09:00-17:00
wednesday 09:00-17:00
thursday 09:00-17:00
friday 09:00-17:00
}
# 'none' timeperiod definition
define timeperiod{
timeperiod_name none
alias No Time Is A Good Time
}
define timeperiod{
name MX-holidays
timeperiod_name MX-holidays
alias MX Holidays
january 1 00:00-00:00 ; Ano nuevo
monday 2 february 00:00-00:00 ; dia de la constitucion
march 21 00:00-00:00 ; dia de benito juarez
may 1 00:00-00:00 ; dia del trabajo
monday -2 september 00:00-00:00 ; dia de independencia ( calcualdo )
monday -1 november 00:00-00:00 ; Revolucion
december 25 00:00-00:00 ; Navidad
}
=========================================
en mexico es complejo atinarle a los dias pero intentaremos
tenemos listo nuestros peridos de tiempo deacuerdo a nuestras necesidades .
configuraremos el archivo contacts.cfg
# vi 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@localhost ;
}
define contactgroup{
contactgroup_name admins
alias Nagios Administrators
members nagiosadmin
}
===================================================
en esta lista podemos definir los contactos que ud desee deacuerdo a sus necesidades a quien notificara , cada administrador de sistema puede incluir los contactos necesarios
ahora creamos un achivo llamado locahost.cfg , este archvio considero el mas complejo por la cantidad de instrucciones que contiene pero podemos hacer uso del archivo template para ver la estructura . en este ejemplo solo pondremos una maquina linux simple si requiere mas información valla a la sección de manuales del sitio oficial http://nagios.sourceforge.net/docs/3_0/ .
editamos el archivo de localhost.cfg
# vi localhost.cfg
=================================================
# Define a host for the local machine
define host{
use linux-server ; Name of host template to use
; This host definition will inherit all variables that are defined
; in (or inherited by) the linux-server host template definition.
host_name localhost
alias localhost
address 127.0.0.1
}
# Define an optional hostgroup for Linux machines
define hostgroup{
hostgroup_name linux-servers ; The name of the hostgroup
alias Linux Servers ; Long name of the group
members localhost ; Comma separated list of hosts that belong to this group
}
# Define a service to "ping" the local machine
define service{
use local-service ; Name of service template to use
host_name localhost
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}
define service{
use local-service ; Name of service template to use
host_name localhost
service_description Root Partition
check_command check_local_disk!20%!10%!/
}
define service{
use local-service ; Name of service template to use
host_name localhost
service_description SSH
check_command check_ssh
notifications_enabled 0
}
define service{
use local-service ; Name of service template to use
host_name localhost
service_description HTTP
check_command check_http
notifications_enabled 0
}
================================================
chacamos que las configuraciones sean correctas
# nagios -v nagios.cfg
agregamos el nagios a los niveles de corrida
# chkconfig nagios on
y corremos el servicio
# service nagios start
habilitamos SeLinux
# chcon -R httpd_sys_content_t /var/nagios
No hay comentarios:
Publicar un comentario