jueves, 14 de agosto de 2008

ipcop backups

IpCop es una distribución muy sencilla de utilizar. Es una rápida solución para proxy y cortafuegos, con una muy cómoda interface web desde la que se puede hacer casi todo lo que necesites.

El problema lo encontré cunado intenté meter las copias de seguridad automáticamente en mi sistema de copias. El sistema de copias de seguridad está basado en claves publicas ssh, pero no sabía cual era el directorio donde IpCop deja las copias de seguridad cuando le dices desde la interface web que se generen.

Finalmente lo encontré, y los ficheros .dat que genera IpCop para su propia restauración los almacena en
/home/httpd/html/backup así que solo me quedaba añadir el directorio en el sistema de copias de seguridad.

martes, 12 de agosto de 2008

Error: Service check command 'check_nrpe' specified in service 'MyHost_sda' for host 'MyHost' not defined anywhere!

Con este error entendemos que Nagios no es capaz de encontrar (not defined anywhere!) el comando check_nrpe. Así que tenemos que definir el comando check_nrpe para que nuestro servidor Nagios sea capaz de ejecutarlo.

Para ello tendremos que abrir el fichero /usr/local/nagios/etc/objects/localhost.cfg y al final del todo añadir:
##########
# CHECK_NRPE #
##########

define command{
command_name check_nrpe
command_line /usr/local/nagios/libexec/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ -a $ARG2$ $ARG3$ $ARG4$
}

Ten cuidado y observa que la ruta donde yo tengo check_nrpe es /usr/local/nagios/libexec/check_nrpe. Pudiera ser que en tu servidor Nagios no sea la misma ruta. Así que verifica que sea correcta y en el caso de que no lo sea modifica la línea de command_line para que Nagios pueda encontrar check_nrpe.

Una vez hecho todo esto ya podremos hacer de nuevo el testeo de los ficheros de configuración con:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Y no deberíamos tener errores.

lunes, 11 de agosto de 2008

Instalacion NRPE cliente/servidor

Os dejo el manual bajo el que me he regido para hacer este manual para instalaciones de NRPE, lo dejo tanto en pdf como en html.

Lo primero tendremos que diferenciar entre la instalación de NRPE en nuestro servidor Nagios o en los servidores que pretendemos monitorizar. Ya que según el esquema de NRPE podemos ver que nos hace falta en los dos sitios.









Primero veremos la instalación en nuestro servidor Nagios.



Para ello tendremos que descargar el fichero nrpe-2.12.tar.gz, descomprimir y configurar.
wget http://kent.dl.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz
tar xvzf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure

Una vez hecho esto solo nos queda compilar e instalar únicamente el plugin, porque en el servidor no necesitamos un demonio que corra, simplemente necesitamos el plugin para poder ejecutarlo.
make all
make install-plugin

Sabremos que todo fue correctamente porque en el /usr/local/nagios/libexec/ encontraremos el ejecutable check_nrpe que nos permitirá hacer peticiones a los servidores (los que pretendemos monitorizar) que tengan instalado nrpe.

Para terminar veremos la instalación en el servidor que monitorizaremos.



Lo primero es verificar que tenemos instalados los siguientes paquetes, que serán necesarios.
aptitude install build-essential
aptitude install xinetd
aptitude install libcurl3-openssl-dev

Si no tenemos instalado libcurl3-openssl-dev en la configuración del nrpe nos dará un error del tipo.
checking for SSL headers... configure: error: Cannot find ssl headers

Una vez que tenemos todos los prerequisitos instalados, ya podemos hacer:
./configure
make all
make install-plugin
make install-daemon
make install-daemon-config
make install-xinetd

Tenemos que hacer un último paso para terminar la instalación de nuestro NRPE, editar el fichero /etc/xinetd.d/nrpe y definir algún parámetro de configuración como "only_from = 127.0.0.1 < nagios_ip_address >" en el que tendremos que poner la IP de nuestro sevidor Nagios para que pueda preguntarle.

Bien, ya tenemos instalado NRPE como demonio que correrá escuchando las llamadas de nuestro servidor Nagios que le preguntará ¿estás ahí?

Añadiremos al /etc/services "nrpe 5666/tcp # NRPE" para identificar las conexiones 5666/tcp como de nuestro nuevo demonio NRPE.

Para hacer la prueba de funcionamiento, ejecutaremos desde el servidor donde estamos instalando NRPE algunos comandos que nos dirá si el demonio está corriendo o no. Pero antes deberíamos de reiniciar el servicio xinetd para ello ejecutaremos.
/etc/init.d/xinetd restart

Prueba de escucha que nos devolverá "tcp 0 0 *:nrpe *:* ESCUCHAR"
netstat -at | grep nrpe

También podemos ejecutar
/usr/local/nagios/libexec/check_nrpe -H localhost

Que si todo funcionó correctamente nos devuelve la versión de NRPE que estamos corriendo en localhost.

Muy bien para probar si nuestro servidor Nagios tiene conexión con nuestro servidor a monitorizar, tendremos que ejecutar:
/usr/local/nagios/libexec/check_nrpe -H < ip de nuestro servidor a monitorizar >

Con todo lo que hemos hecho podemos desde nuestro servidor Nagios hacer una petición al servidor que pretendemos monitorizar para ver si está o no activo. Pero realmente lo que queremos es sacarle toda la información que podamos pedirle. Para ello tendremos que instalar nagios-plugins en este servidor.

Seguiremos los mismos pasos que seguimos en nuestro servidor Nagios. Así a adelante; descargar, descomprimir, configurar, compilar e instalar.
wget http://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.12.tar.gz
tar xvzf nagios-plugins-1.4.12.tar.gz
cd nagios-plugins-1.4.12
./configure
make
make install

Una vez instalado veremos muchos más ejecutables en /usr/local/nagios/libexec/, esos son todos los ejecutables que podemos lanzar para hacerle más preguntas al servidor desde nuestro servidor Nagios.¿Qué tal te va ...tal o cual servicio...?

Instalacion de Nagios 3.0.3 Debian

He creado este manual siguiendo el manual de la página oficial, he modificado algunas cosas. Como la versión de descarga 3.0.3. Espero que os sea de ayuda.

Lo primero que tenemos que hacer es instalar los paquetes requeridos.
aptitude install apache2 build-essential libgd2-dev

Si tenemos una conexión a internet lenta deberíamos dejar descargando ya estos dos ficheros, que necesitaremos para dejar corriendo el servicio nagios en nuestro nuevo servidor Nagios 3.0.3.
wget http://osdn.dl.sourceforge.net/sourceforge/nagios/nagios-3.0.3.tar.gz
wget http://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.12.tar.gz

Creamos el usuario que correrá el proceso.
/usr/sbin/useradd -m nagios
/usr/sbin/groupadd nagcmd
/usr/sbin/usermod -G nagcmd nagios
/usr/sbin/usermod -G nagcmd www-data

Descomprimimos el nagios-3.0.3.tar.gz y entramos en el directorio que nos creará.
tar xzf nagios-3.0.3.tar.gz
cd nagios-3.0.3

Ahora corremos el script de configuración pasando como parámetro el grupo que creamos para nagios y www-data para que compartan permisos.
./configure --with-command-group=nagcmd

Después de correo el script tenemos que compilar los fuentes.
make all

Ahora instalamos los binarios.
make install
make install-init
make install-config
make install-commandmode

Deberías editar el fichero /usr/local/nagios/etc/objects/contacts.cfg y modificar los parámetros que te interesen como por ejemplo el email del administrador principal (nagiosadmin).
nano /usr/local/nagios/etc/objects/contacts.cfg

Configuración de la interfaz web.
make install-webconf

Para crear el fichero de usuarios y claves para el acceso a la interfaz web, tenemos que ejecutar.
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Finalmente hacemos un reload de apache para que relea las modificaciones que ha sufrido en sus ficheros de configuración.
/etc/init.d/apache2 reload

Ahora vamos a instalar el plugin, para ello lo primero será descomprimirlo.
tar xvzf nagios-plugins-1.4.12.tar.gz
cd nagios-plugins-1.4.12

Corremos el script de configuración pasando como parámetros usuario nagios y grupo nagcmd. Después solo nos queda compilar e instalar.
./configure --with-nagios-user=nagios --with-nagios-group=nagcmd
make
make install

Para terminar solo nos queda programarlo para que se inicie con el arranque del sistema y verificar que todos los ficheros de configuración son correctos.
cd /etc/init.d/
update-rc.d nagios defaults
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Si la verificación de ficheros fue correcta veremos algo así al final de la salida.
Total Warnings: 0
Total Errors: 0

Ahora ya estamos preparados para iniciar el servicio.
/etc/init.d/nagios start

E identificarnos en http://< mi servidor nagios >/nagios
Si queremos que nuestro servidor nos envía mails notificándonos cualquier asunto, tendremos que montar un servidor SMTP. Yo particularmente prefiero usar postfix. Para instalarlo haremos:
aptitude install postfix

Cuando nos pregunte el tipo de servidor que somos le diremos Sitio de Internet, lo próximo que nos preguntará será el dominio con el que firmará la cabecera de los correos. Deberías de poner un nombre de dominio valido, por ejemplo nagios.josemanuelruizbaena.com, porque algunos filtros anti-spam cortan los correos cuyos dominios no son validos. Es decir, que no sería correcto poner servidornagios a secas.

Ya no queda más que hacer, ya tienes instalado un servidor Nagios. Ahora dedica un buen rato en añadir todos tus servidores para que sean monitorizados por tu nuevo servidor de monitorización.