Instalando y configurando Nagios en CentOS 6.3 - Parte 1
Como hemos visto antes, Nagios es una herramienta libre para la monitorización de servidores, redes (switches, routers, etc.) y aplicaciones. Dispone de una amplia gama de plugins están disponibles y una gran comunidad detrás del mismo. Todo esto lo convierte en una de las mejores opciones para estos fines.
Para los fines de esta guía tambien utilizaremos VirtualBox: CentOS 6.3 minimal en VirtualBox con una interfaz de red y todo lo demás por defecto eth0 Bridged a la LAN (192.168.5.0/24).
Al finalizar la instalación y loguearnos por primera vez en el servidor cambiamos el hostname del mismo. Además nuestro monitor Nagios será parte de una LAN en la cual funciona un servidor Samba 4 con Active Directory, esto con el propósito de monitorear un servidor real y también otros clientes.
[root@localhost ~]#
sed -i 's/HOSTNAME=localhost.localdomain/HOSTNAME=nagios.mydomain.local/g' /etc/sysconfig/network
[root@localhost ~]# reboot
Al regresar, deshabilitamos Selinux para evitar posibles inconvenientes, hasta nuevo aviso.
[root@nagios ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
Configurarmos la Interfaz de red para actualizar y descargar paquetes. Esta interfaz está NAT en la configuración de la máquina virtual, pero editaremos el script para que arranque al inicio. Es decir, cambiamos el valor de ONBOOT="no" por yes. Lo demás se queda tal como está.
[root@nagios ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="dhcp"
HWADDR="08:00:27:91:1E:17"
NM_CONTROLLED="no"
ONBOOT="yes"
TYPE="Ethernet"
UUID="cff4accd-304e-4262-abea-f353d20d8954"
[root@nagios ~]# service network restart
Instalando algunos prerequisitos.
[root@nagios ~]# yum install -y gd gd-devel httpd php gcc glibc glibc-common bash-completion wget nano
Nagios está disponible solo en el repositorio EPEL, por lo que debemos instalarlo.
[root@nagios ~]# wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
[root@nagios ~]# rpm -ivh epel-release-6-8.noarch.rpm
Instalando Nagios. Nos aseguraremos de que no nos falte nada.
[root@nagios ~]# yum install -y nagios*
Configurando Nagios. Cambiamos el correo de nagios por una cuenta propia, ya sea root u otro usuario que deseemos. La email se encuentra aproximadamente en la línea 35 del fichero contacts.cfg. Esto es para recibir alertas de Nagios.
[root@nagios ~]# nano /etc/nagios/objects/contacts.cfg
email root@localhost
Editamos algunas líneas en el fichero nagios.conf. Comentamos las líneas 15 y 16. Además editamos las líenas 17, 18 y 19; quedando de la siguiente manera.
[root@nagios ~]# nano /etc/httpd/conf.d/nagios.conf
#Order allow,deny
#Allow from all
Order deny,allow
Deny from all
Allow from 127.0.0.1 192.168.5.0/24
Cambiamos el password del usuario nagiosadmin
[root@nagios ~]# htpasswd /etc/nagios/passwd nagiosadmin
New password:
Re-type new password:
Updating password for user nagiosadmin
Iniciamos los servicios y (opcionalmente) los configuramos para que arranquen al inicio.
[root@nagios ~]# service nagios start
Starting nagios: done.
[root@nagios ~]# service httpd start
Starting httpd: [ OK ]
[root@nagios ~]# chkconfig nagios --level 345 on
[root@nagios ~]# chkconfig httpd --level 345 on
Editamos el firewall para permitir el paso hacia el puerto 80 (httpd) para tener acceso a la intefaz web de Nagios desde otro nodo de la LAN.
[root@nagios ~]# iptables -A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT
[root@nagios ~]# service iptables save
[root@nagios ~]# service iptables restart
iptables: Flushing firewall rules: [ OK ]
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Unloading modules: [ OK ]
iptables: Applying firewall rules: [ OK ]
Finalmente accesamos desde otro nodo de la red a la dirección http://192.168.5.102/nagios, para verificar que todo ha sido satisfactorio. Nos logueamos con el usuario nagiosadmin y el password que le colocamos en uno de los pasos de la guía.