Instalación Nagios 4.1.1 - OpenSUSE Leap 42.1
Nagios 4.1.1, Nagios-Plugins 2.1.1 y OpenSUSE Leap 42.1
Preparando OpenSUSE
La instalación de Nagios la he realizado con OpenSUSE recién instalado.
Lo primero que vamos a hacer es asegurarnos que los repositorios, paquetes y posibles parches están actualizados:
# zypper refresh && zypper update && zypper patch
El siguiente paso es intalar los paquetes que nos harán falta para posteriormente ejecutar Nagios:
# zypper install gcc glibc php5 apache2 perl apache2-mod_php5 php5-mbstring php5-gd gd-devel make libmcrypt php5-bz2 php5-mcrypt php5-mysql php5-zip pwgen php5-zlib phpmyadmin
Agregamos el usuario y grupo nagios, también el grupo nagcmd donde meteremos el usuario nagios y wwwrun.
# groupadd nagios
# usermod -a -G nagios nagios
# groupadd nagcmd
# usermod -a -G nagcmd nagios
# usermod -a -G nagcmd wwwrun
Compilando Nagios 4.1.1 y Plugins 2.1.1
Primero nos movemos a la carpeta /tmp y descargamos el source.
# cd /tmp
# wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.1.1.tar.gz
# wget http://www.nagios-plugins.org/download/nagios-plugins-2.1.1.tar.gz
Descomprimimos el tar de nagios-4.1.1 y una vez dentro ejecutamos el script de configuración.
# tar xvzf nagios-4.1.1.tar.gz
# cd nagios-4.1.1
# ./configure --with-command-group=nagcmd
Ahora ya podemos compilar nagios con los siguientes comandos:
# make all
# make install
# make install-init
# make install-commandmode
# make install-config
# make install-webconf
Seguimos el mismo procedimiento que para nagios con los plugins:
Descomprimimos el tar de nagios-plugins-2.1.1 y una vez dentro ejecutamos el script de configuración.
# cd /tmp
# tar xzf nagios-plugins-2.1.1.tar.gz
# cd nagios-plugins-2.1.1
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
Seguidamente compilamos los plugins:
# make
# make install
Configurando Apache2
Primero definimos la contraseña para el usuario nagiosadmin que usaremos para la interfaz web.
# htpasswd2 -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Ahora tenemos que hacer que apache actualice su versión en los ficheros de configuración, con el siguiente comando:
# a2enmod version
Nota: Si esto no funciona hay que modificar el fichero /etc/apache2/httpd.conf
Ahora en el fichero de configuración de apache (antes nombrado) tenemos que añadir el nombre del servidor:
# cp /etc/apache2/httpd.conf /etc/apache2/httpd.conf.bak
# vim /etc/apache2/httpd.conf
Se añade lo siguiente: “ServerName {nombre_servidor_(localhost)}”
Ahora vamos al fichero de configuración por defecto, en este fichero cambiaremos el directorio por defecto a el directorio de nuestro nagios:
# cp /etc/apache2/default-server.conf /etc/apache2/default-server.conf.bak
# vim /etc/apache2/default-server.conf
Antiguo directorio: /srv/www/html, Nuevo directorio: /usr/local/nagios/share. Iniciamos el servicio apache:
# systemctl enable apache2
# systemctl start apache2
Y verificamos que funciona.
# systemctl status apache2 -l
Configurando Nagios
Primero lo que haremos será modificar el fichero de configuración de la monitorización de localhost, ya que tenemos que añadir la contraseña que hemos puesto al acceso de apache (htpasswd2) en el check de HTTP para que pueda comprobarlo:
# cp /usr/local/nagios/etc/objects/localhost.cfg /usr/local/nagios/etc/objects/localhost.cfg.bak
# vim /usr/local/nagios/etc/objects/localhost.cfg
Añadiremos donde ponga “check_http” la siguiente cadena de caracteres:
“!-a nagiosadmin:{password}”
Por lo que quedará así:
“check_http!-a nagiosadmin:{password}”
El siguiente comando nos sirve de mucho, ya que en cada modificación a nagios por seguridad hay que ejecutarlo para verificar que todo está OK.
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Para más comodidad creamos un alias con el comando:
# alias nagioscheck=’/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg’
SI todo esta OK, es decir, hay 0 errores y 0 warnings, iniciamos nuestro servicio nagios.
# systemctl enable sshd
# systemctl start sshd
# systemctl enable nagios
# systemctl start nagios
Nota: También encendemos el sshd, para que la comprobación del localhost se haga correctamente.