Cómo instalar Nagios en FreeBSD

En este artículo vamos a ver cómo instalar Nagios en FreeBSD 13 y 12 paso a paso, de modo que puedas montar un servidor Nagios Core capaz de monitorizar máquinas con este sistema operativo gracias a los plugins de Nagios, algo especialmente útil para un servidor o VPS FreeBSD.

Antes de instalar Nagios en FreeBSD

Para poder seguir los pasos de esta guía de instalación de Nagios Core en FreeBSD será necesario partir del siguiente escenario:

  • Una máquina FreeBSD 13 ó 12 actualizada.
  • Servicio web Apache con PHP versión 8.0 (versión requerida por el paquete de Nagios).
  • Un usuario con permisos de sudo o el propio root.
  • Conexión a Internet.

Si no dispones del entorno mencionado puedes echar un vistazo a nuestras guías de instalación de Apache para FreeBSD 12 y 13, y también a nuestras guías de instalación de PHP para FreeBSD 12 y 13.

En caso de tener todo preparado ya puedes regular la altura más cómoda para tu escritorio y abrir tu terminal de comandos favorita.

Cómo instalar los plugins de Nagios en FreeBSD

Vamos a instalar Nagios en FreeBSD desde los repositorios del sistema, por lo que el primer paso será actualizar la información de los mismos:

~$ sudo pkg update

El paquete que necesitamos es nagios4 y lo instalamos con pkg:

~$ sudo pkg install -y nagios4

Configuración de Nagios para el servicio web de FreeBSD

La interfaz web de Nagios en FreeBSD requiere la activación del módulo CGI de Apache, por lo que debemos editar la configuración del sevicio web:

~$ sudo nano /usr/local/etc/apache24/httpd.conf

Localizamos la siguiente sección:

...
<IfModule !mpm_prefork_module>
        #LoadModule cgid_module libexec/apache24/mod_cgid.so
</IfModule>
<IfModule mpm_prefork_module>
        #LoadModule cgi_module libexec/apache24/mod_cgi.so
</IfModule>
...

Activamos ambas directivas LoadModule eliminando el carácter # inicial:

...
<IfModule !mpm_prefork_module>
        LoadModule cgid_module libexec/apache24/mod_cgid.so
</IfModule>
<IfModule mpm_prefork_module>
        LoadModule cgi_module libexec/apache24/mod_cgi.so
</IfModule>
...

Guardamos y cerramos el archivo.

A continuación creamos un archivo de configuración del servicio web para Nagios:

~$ sudo nano /usr/local/etc/apache24/Includes/nagios.conf

El contenido será el siguiente:

ScriptAlias /nagios/cgi-bin/ /usr/local/www/nagios/cgi-bin/
Alias /nagios/ /usr/local/www/nagios/
Alias /nagios /usr/local/www/nagios/

<Directory /usr/local/www/nagios>
        Require ip 127.0.0.1
        php_flag engine on
        php_admin_value open_basedir /usr/local/www/nagios/:/var/spool/nagios/
</Directory>

<Directory /usr/local/www/nagios/cgi-bin>
        Options ExecCGI
</Directory>

<Location "/">
        AuthName "Acceso restringido a Nagios"
        AuthType Basic
        AuthUserFile /usr/local/etc/nagios/htpasswd.users
        Require valid-user
</Location>

Esta configuración sólo permite acceso local a la interfaz web de Nagios, por lo que si deseas poder acceder desde otra máquina en red debes cambiar la directiva Require anterior por esta otra:

...
        Require all granted
...

Guardamos el archivo y reiniciamos el servicio web para aplicar todos estos ajustes:

~$ sudo service apache24 restart

Por último, creamos el usuario que podrá acceder a la interfaz web de Nagios en FreeBSD:

~$ sudo htpasswd -c /usr/local/etc/nagios/htpasswd.users nagiosadmin
New password:
Re-type new password:
Adding password for user nagiosadmin

Configuración del servicio Nagios en FreeBSD

Tras la instalación de los paquetes de Nagios para FreeBSD se ha creado un servicio llamado nagios que correrá en segundo plano con el usuario y grupo nagios.

Los archivos de configuración de este servicio se ubican en la ruta /usr/local/etc/nagios/.

Inicialmente el paquete de Nagios sólo crea archivos de configuración de muestra para el servicio que no se pueden utilizar directamente, ya que tienen la extensión .cfg-sample en lugar de la necesaria .cfg. Para solucionar este problema, crearemos una copia de todos ellos con extensión .cfg:

~$ sudo find /usr/local/etc/nagios -type f -name "*.cfg-sample" -exec sh -c 'cp {} $(dirname {})/$(basename {} .cfg-sample).cfg' \;

Cambiamos la propiedad de los archivos de configuración de Nagios al usuario y grupo con el que corre el servicio:

~$ sudo chown -R nagios /usr/local/etc/nagios

Ahora debemos habilitar el servicio, cosa que en FreeBSD 12 y 13 haremos de la siguiente forma:

~$ sudo service nagios enable

Y si se trata de FreeBSD 11 editamos el archivo rc.conf:

~$ sudo nano /etc/rc.conf

Y añadimos al final del mismo la siguiente línea:

...
nagios_enable="YES"

Guardamos los cambios y cerramos el archivo.

Ya podemos iniciar el servicio Nagios con el comando service:

~$ sudo service nagios start

Cómo acceder a Nagios en FreeBSD

Para acceder a Nagios en FreeBSD desde un navegador indicamos la dirección IP, dominio, nombre DNS, localhost si accedemos localmente, etc. añadiendo el alias configurado, /nagios/ en este tutorial.

Por ejemplo, la máquina FreeBSD que hemos utilizado para realizar este tutorial es accesible en el subdominio freebsd13.local.lan, y hemos definido el alias /nagios/, así que podemos usar http://freebsd13.local.lan/nagios/ como URL de acceso:

como instalar nagios en freebsd 11, 12 y 13

Se mostrará una página de inicio de sesión donde introduciremos las credenciales del usuario administrador tal como las creamos anteriormente (en este tutorial serían el nombre de usuario nagiosadmin y su contraseña).

Iniciada la sesión se muestra una página de estado general:

instalacion de nagios en freebsd 11, 12 y 13

Si visitamos la sección «Current Status / Hosts» podremos ver las máquinas supervisadas por Nagios, por defecto únicamente la propia máquina donde corre el servicio (localhost):

nagios core en freebsd 11, 12 y 13

De igual forma, si visitamos la sección «Current Status / Services» veremos con más detalles los servicios monitorizados por Nagios:

nagios en freebsd 11, 12 y 13

¡Así de fácil!

Conclusión

¡Apoya comoinstalar.me!

Si ya funciona este servicio en tu propia máquina y quieres agradecérnoslo, siempre es bien recibida cualquier mínima aportación al mantenimiento de este sitio y la actualización y creación de artículos.

Puedes ayudarnos dejando desde 1 $ de propina mediante PayPal:

O, si te sientes especialmente generoso, puedes invitarnos a un café:

¡Gracias!

Valora esta entrada

5/5 - (3 votos)

4 comentarios en «Cómo instalar Nagios en FreeBSD»

  1. Hola, he realizado exactamente los mismos comandos que tú y me sale «Forbidden You don´t have permission to access this resource«. Te agradecería si me pudieras echar una mano. Muchas gracias de antemano.

    Responder
    • Hola, Pablo. El tutorial funciona correctamente en FreeBSD 11, 12 y 13. Comprueba el registro de errores del servicio web cuando obtienes ese error, por si puede arrojar algo de luz. Ten en cuenta que el alias termina en /, así que no es lo mismo la URL terminada en /nagios que en /nagios/.

      Responder

Deja un comentario