10
Instalar Nagios core y Nagios plugins en Debian paso a paso desde Source Debian , Linux , Tutoriales En este apartado vamos a ver como instalar la aplicación Nagios en un servidor linux Debian (version 6.0) para poder monitorizar todos los servidores windows, servidores linux, routers, switches, access points o incluso impresoras que tengamos en la red de nuestra empresa o oficina. En otros tutoriales que encontrarás por internet podemos ver que realizan la instalación mediante apt-get install nagios3 pero en este nos vamos a enfocar en instalar Nagios desde el source (codigo fuente) que nos bajaremos de su página web con su versión mas actualizada. Requisitos de Nagios Para este tutorial es imprescindible haber instalado un servidor Debian 6 , configurado su ip como estática y haber realizado la instalación de servicios para la web y recomendado el servidor ssh mediante el cual realizaremos la instalación desde una maquina con interfaz para así poder directamente copiar y pegar los comandos que iremos viendo a continuación.. Librerias necesarias Nagios puede crearnos y mostrarnos gráficas temporales sobre el estado de la red pero para ello hace uso de unas librerías de imágenes que debemos instalar, ya que por defecto no vienen en el sistema. apt-get update && apt-get -y dist-upgrade apt-get install make gcc g++ sudo libgd2-xpm libgd2-xpm-dev libpng12-dev libjpeg62-dev libgd-tools libpng3-dev También es necesaria la librería gd que la descargaremos de su source, la compilaremos e instalaremos. Para ello vamos a crearnos una carpeta donde descargar todo lo necesario. mkdir temporales cd temporales/ Ahora descargamos e instalamos la librería gd mediante: wget http://www.boutell.com/gd/http/gd-2.0.33.tar.gz

Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

Embed Size (px)

Citation preview

Page 1: Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

Instalar Nagios core y Nagios plugins en Debian paso a paso desde SourceDebian, Linux, Tutoriales

En este apartado vamos a ver como instalar la aplicación Nagios en un servidor linux Debian (version 6.0) para poder monitorizar todos los servidores windows, servidores linux, routers, switches, access points o incluso impresoras que tengamos en la red de nuestra empresa o oficina. En otros tutoriales que encontrarás por internet podemos ver que realizan la instalación medianteapt-get install nagios3

pero en este nos vamos a enfocar en instalar Nagios desde el source (codigo fuente) que nos bajaremos de su página web con su versión mas actualizada.

Requisitos de Nagios

Para este tutorial es imprescindible haber instalado un servidor Debian 6, configurado su ip como estática y haber realizado la instalación de servicios para la web y recomendado el servidor ssh mediante el cual realizaremos la instalación desde una maquina con interfaz para así poder directamente copiar y pegar los comandos que iremos viendo a continuación..

Librerias necesarias

Nagios puede crearnos y mostrarnos gráficas temporales sobre el estado de la red pero para ello hace uso de unas librerías de imágenes que debemos instalar, ya que por defecto no vienen en el sistema.apt-get update && apt-get -y dist-upgrade

apt-get install make gcc g++ sudo libgd2-xpm libgd2-xpm-dev libpng12-dev libjpeg62-dev libgd-tools libpng3-dev

También es necesaria la librería gd que la descargaremos de su source, la compilaremos e instalaremos. Para ello vamos a crearnos una carpeta donde descargar todo lo necesario.mkdir temporales

cd temporales/

Ahora descargamos e instalamos la librería gd mediante:wget http://www.boutell.com/gd/http/gd-2.0.33.tar.gz

tar -zxvf gd-2.0.33.tar.gz

cd gd-2.0.33/

./configure

Como resultado del configure deberemos ver algo asíSupport for PNG library: yes

Page 2: Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

Support for JPEG library: yes

Support for Freetype 2.x library: yes

Support for Fontconfig library: yes

Support for Xpm library: yes

Support for pthreads: yes

Y procedemos a su instalaciónmake && make install

cd ..

 Usuarios, grupos y permisos

Como siempre en linux, es mejor crear un usuario para cada servicio, de manera que si por algún motivo un usuario llegara a poder acceder al sistema a través de Nagios, solamente afectaría al usuario Nagios y tendría solo los permisos de este usuario. Creamos el usuario:adduser nagios

A continuación nos pedirá unos datos, a nivel de información adicional, y la contraseña de este nuevo usuario. Esta contraseña no es la que usaremos para acceder a Nagios mediante el panel web, por lo que podéis poner una muy difícil.

A continuación creamos el grupo, añadimos al usuario Nagios y también al usuario www-data (servidor web) al grupo de Nagios.groupadd nagios

usermod -G nagios nagios

usermod -G www-data,nagios www-data

Instalando Nagios Core

Lo primero que vamos a hacer es entrar en la web de Nagios y buscar su ultima versión de Nagios Core, asi que entramos enwww.nagios.org/download/core/thanks donde encontramos la versión Latest stable release y la Previous stable release, copiamos el enlace de la Latest stable release.

Page 3: Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

y vamos al servidor, lanzamos el comando wget seguido de la dirección que hemos copiado para descargarlo, descomprimirlo y instalarlo.wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.3.tar.gz

tar zvfx nagios-3.4.3.tar.gz

cd nagios

./configure –prefix=/usr/local/nagios –with-cgiurl=/nagios/cgi-bin –with-htmurl=/nagios/ –with-nagios-user=nagios –with-nagios-group=nagios –with-command-group=nagios

make all

make install

make install-init

make install-commandmode

make install-config

cd ..

Finalmente ya tenemos Nagios Core instalado.

Instalando Nagios Plugins

Nagios plugins es un añadido que nos permite conectar con servicios mas específicos si queremos conectar con un ordenador Windows y saber su carga de cpu, ram, disco duro… y otros muchos mas servicios o dispositivos.

Volvemos a la web de Nagios pero en su sección http://nagios.org/download/plugins y nos descargamos la Latest Stable Release. En el momento de realizar el tutorial el archivo que nos descargábamos estaba corrupto por lo que se uso la Latest Snapshot que es la mas actual pero puede tener fallos no detectados por los programadores, por lo que intentar hacerlo con la Latest Stable y si no funciona usar la Snapshot.wget http://nagiosplug.sourceforge.net/snapshot/nagios-plugins-HEAD.tar.gz

tar -zxvf nagios-plugins-HEAD.tar.gz

Page 4: Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

cd nagios-plugins-<presionar tabulacion>

./configure

make && make install

Una vez haya terminado podemos comprobar si se han instalado correctamente en el directorio /usr/local/nagios/libexec/ mediante el comandols /usr/local/nagios/libexec/

o bien/usr/local/nagios/libexec/check_ssh -h

y debería mostrarnos las opciones del comando y el siguiente mensaje:

Con esto ya hemos terminado la instalación básica de Nagios. Tan solo nos queda añadirlo al inicio del sistema para que cuando el sistema se reinicie, Nagios también se encienda. Para ello podemos hacerlo de dos formas, la que nos dicen en la propia web de Nagios (que para mi es la mejor) o la que también os propongo pero que quizá os sintáis mas cómodos.

La oficial de la web de Nagiosln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

Y para evitar que nos salga un error como este “insserv: warning: script ‘S99nagios’ missing LSB tags and overrides” editamos el archivo /etc/init.d/nagios y añadimos esto justo debajo de #!/bin/sh### BEGIN INIT INFO

# Provides: Nagios

# Required-Start: $syslog

# Required-Stop: $syslog

# Default-Start: 2 3 4 5 S

# Default-Stop: 0 1 6

# Short-Description: Nagios Boot Script

# Description:

#

### END INIT INFO

Guardamos el archivo y al ejecutar insserv nagios ya no debería salirnos ningún error.

Page 5: Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

La otra forma que os propongo es editar el archivo /etc/rc.localnano /etc/rc.local

Y añadimos el texto antes del exit 0echo “NAGIOS: Comprobando la configuracion de Nagios”;

service nagios checkconfig;

echo “NAGIOS: Iniciando el servicio Nagios”;

service nagios start;

sleep 5;

echo “NAGIOS: Comprobando si el servicio Nagios esta activado”;

service nagios status;

exit 0;

Configurando la interfaz web

Aunque ya hemos instalado Nagios, necesitamos configurar su interfaz web para poder ver su funcionamiento. Para ello crearemos un nuevo site en apache2.nano /etc/apache2/sites-available/nagios

Como no existe, nos lo creará, por lo que el documento no tendrá nada escrito, simplemente escribimos este texto, las rutas salvo que hayamos forzado la instalación de Nagios en otro directorio, no debemos tocarlas.ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin

<Directory “/usr/local/nagios/sbin”>

Options ExecCGI

AllowOverride None

Order allow,deny

Allow from all

AuthName “Nagios Access”

AuthType Basic

AuthUserFile /usr/local/nagios/etc/htpasswd.users

Require valid-user

</Directory>

Alias /nagios /usr/local/nagios/share

<Directory “/usr/local/nagios/share”>

Options None

Page 6: Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

AllowOverride None

Order allow,deny

Allow from all

AuthName “Nagios Access”

AuthType Basic

AuthUserFile /usr/local/nagios/etc/htpasswd.users

Require valid-user

</Directory>

Guardamos el archivo y activamos el site cona2ensite nagios

Definimos la contraseña para el usuario nagiosadmin que es el que viene por defecto. Que es la que usaremos mas tarde para acceder al panel web de Nagios.htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Y revisamos que el archivo /usr/local/nagios/etc/cgi.cfg disponga de use_authentication=1nano /usr/local/nagios/etc/cgi.cfg

Una vez comprobado o cambiado, guardamos el archivo. Procedemos a reiniciar los servicios de apache, nagios y comprobamos su funcionamiento.service apache2 restart

service nagios restart

Ya podemos abrir el navegador web en nuestro ordenador con interfaz gráfica y comprobar su funcionamiento.http://la.ip.del.server/nagios

Page 7: Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

Como usuario tenemos nagiosadmin y como contraseña, la que hemos definido justo hace un momento. Si hemos escrito correctamente el usuario y password, nos cargará la pagina principal de Nagios donde podremos ver su versión instalada y un menú lateral izquierdo.

Monitorizando servidores por ping

En este menú, podemos ir a Hosts y veremos que aparece un servicio localhost (es el mismo servidor donde instalamos Nagios). Pero podemos crear nosotros mas servicios o monitorizar mas servidores, routers, etc… Si solamente queremos monitorizar por ping, podemos editar el archivonano /usr/local/nagios/etc/nagios.cfg

Y en la linea donde vemos

Descomentamos la linea quitando la almohadilla # de forma que quede

Guardamos el archivo y procedemos a editar el archivo switch.cfg para definir nuestros hostnano /usr/local/nagios/etc/objects/switch.cfg

Lo primero de todo es eliminar o editar todos los host, servicios, grupos que hay definidos en el archivo. La mejor forma es directamente eliminar el contenido del archivo y rellenarlo nosotros desde 0. Tanto host, hostgroups, services serán definidos en este mismo archivo.

Page 8: Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

Añadiendo un host

Como vemos en la imagen, necesitamos 5 atributos para definir un host. use = La plantilla ya definida que usaremos para el host, dándole a entender al programa que es un switch

(aunque sea un pc)

host_name = Es el nombre que queremos ver en el panel de Nagios , no tiene nada que ver con el nombre de red.

alias = Una descripción que queramos darle al equipo.

address = La dirección ip de este equipo, si tienes el equipo por DHCP y lo quieres monitorizar, deberás ponerle ip estática.

hostgroups = Podemos agrupar diferentes host bajo nuestro criterio, (plantas del edificio, servidores linux, servidores windows, routers de la sede 1, sede 2…). Se definirán los grupos en el siguiente paso.

Añadiendo hostgroups

Mucho mas sencillo de definir que un host, hostgroup_name = El nombre que tiene que coincidir con hostgroups de los host (si queremos asociarlos).

alias = Descripcion del grupo.

 Añadiendo servicios

Aquí vamos a definir el servicio que queremos monitorizar, en este ejemplo lo hacemos con un ping al servidor. use = Plantilla generica ya definida para el servicio.

host_name = Servidor, router al que vamos a monitorizar, debe coincidir con alguno de los host definidos.

Page 9: Instalar Nagios Core y Nagios Plugins en Debian Paso a Paso Desde Source

service_description = Descripcion del servicio, en este ejemplo un Ping

check_command = Comando que va a ejecutar Nagios para monitorizar este host.

normal_check_interval = Cada cuanto va a comprobar el estado de ese host.

retry_check_interval = Si por algun motivo fallara la comprobacion lo reintentara 1 vez.

Una vez hemos editado y guardado correctamente el archivo, hemos de comprobar que no haya errores en el fichero, un comando se encargara de decirnos los errores y los warnings encontrados./usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Si algo falla, nos indica la linea en la que hemos fallado, deberemos arreglarlo. Una vez arreglado todo, o si no ha salido ningun error, hemos de reiniciar de nuevo el servicio de Nagios.service nagios restart

Al principio del post os decia de monitorizar la cpu, la ram, el disco duro de servidores windows. Para ello debemos activar la plantilla windows.cfg dentro denano /usr/local/nagios/etc/nagios.cfg

Y definir los host, hostgroups y servicios que queremos, como servicio podemos usar check_nt y sus parametros. Podeis encontrar mas información en la web de Nagios sobre como monitorizar cada servicio mediante los plugins que hemos instalado anteriormente. Ya solo queda comprobar que al reiniciar el ordenador nuestro Nagios se enciende tal y como le hemos configurado anteriormente, y disfrutar de su monitorización.