Monitoreo · 10 min read · Nov 17, 2025
Cómo configurar la herramienta de monitoreo LibreNMS con Nginx en Ubuntu 16.04 LTS
LibreNMS es una herramienta de monitoreo de código abierto basada en PHP/MYSQL/SNMP. Es un sistema de monitoreo de red con características que proporciona soporte para una amplia gama de hardware de red y sistemas operativos, incluyendo FreeBSD, Cisco, Linux, HP, etc.
En este tutorial, te mostraré cómo instalar y configurar la herramienta de monitoreo de código abierto ‘LibreNMS’ usando Nginx como servidor web, MariaDB como base de datos y Ubuntu 16.04 como nuestro servidor principal. Te guiaremos paso a paso sobre cómo instalar y configurar ‘LibreNMS’ en el servidor Ubuntu 16.04 Xenial Xerus.
Lo que haremos
- Instalar paquetes
- Instalar el servidor web Nginx
- Instalar y configurar PHP-FPM
- Instalar y configurar MariaDB
- Descargar y configurar LibreNMS
- Instalador web de LibreNMS
- Configuración final
Requisitos previos
- Servidor Ubuntu 16.04
- Privilegios de root
Paso 1 - Instalar paquetes
El primer paso que debemos hacer para instalar las herramientas de monitoreo de LibreNMS es instalar algunos paquetes necesarios en el servidor. Conéctate a tu servidor y actualiza el repositorio.
ssh root@hakase-labs-server
sudo apt updateInstala todos los paquetes requeridos para LibreNMS desde el repositorio de Ubuntu usando el siguiente comando.
apt install fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd rrdtool git snmp graphvizDespués de que la instalación esté completa, ve al siguiente paso.
Paso 2 - Instalar el servidor web Nginx
En este tutorial, ejecutaremos LibreNMS bajo el servidor web Nginx. Nginx es un poderoso servidor web que está disponible en los repositorios de Ubuntu.
Instala nginx usando el comando apt desde el repositorio de la siguiente manera.
apt install nginxCuando haya terminado, inicia el servicio y habilítalo para que se ejecute automáticamente cada vez que se inicie el sistema.
systemctl start nginx
systemctl enable nginxEl servidor web Nginx se está ejecutando en el puerto 80 por defecto. Podemos verificar el puerto usando el comando netstat y verificar Nginx usando el comando curl para obtener el código de estado HTTP, como se muestra a continuación.
netstat -plntu | grep 80
curl -I localhost
La instalación de Nginx se ha completado.
Paso 3 - Instalar y configurar PHP-FPM
LibreNMS es una herramienta de monitoreo de aplicaciones web basada en PHP. Ofrece soporte para la nueva versión de PHP 7.0, y la utilizaremos para esta guía.
Instala PHP, PHP-FPM y todas las extensiones/módulos necesarios para la instalación de LibreNMS usando el comando apt a continuación.
apt install php7.0-cli php7.0-mysql php7.0-gd php7.0-snmp php-pear php7.0-curl php7.0-fpm php7.0-mcrypt php7.0-json php-net-ipv4 php-net-ipv6A continuación, necesitamos agregar algunas configuraciones a los archivos php.ini. Necesitamos definir la zona horaria predeterminada en el archivo php.ini y asegurarnos de que la zona horaria coincida con la zona horaria actual utilizada por el sistema.
Verifica la zona horaria actualmente utilizada por el sistema con el siguiente comando.
timedatectlDeberías obtener un resultado similar al siguiente.

Puedes ver que el servidor está utilizando la zona horaria ‘Europe/Paris‘.
Ahora ve al directorio de configuración de PHP y edita los archivos php.ini para la configuración de cli y fpm.
cd /etc/php/7.0/
vim fpm/php.ini
vim cli/php.iniDescomenta la línea ‘date.time‘ y cambia el valor a nuestra zona horaria del sistema ‘Europe/Paris‘.
date.time = Europe/ParisDescomenta la configuración cgi a continuación, cambia el valor a 0.
cgi.fix_pathinfo = 0Guarda y sal.
Toda la configuración está completa. Ahora inicia el servicio y habilítalo para que se inicie cada vez que se inicie el sistema usando los siguientes comandos systemctl.
systemctl start php7.0-fpm
systemctl enable php7.0-fpmPHP-FPM ahora se está ejecutando en el servidor ubuntu - se está ejecutando bajo el archivo sock. Verifícalo con el comando netstat.
netstat -pl | grep php
Paso 4 - Instalar y configurar MariaDB
En este paso, instalaremos el mariadb-server para la base de datos de LibreNMS. Instalaremos, configuraremos y crearemos una nueva base de datos y un nuevo usuario para la instalación de LibreNMS.
Instala mariadb-server desde el repositorio de ubuntu usando el comando apt a continuación.
apt install mariadb-server mariadb-client mariadbCuando haya terminado, inicia el servicio y habilítalo para que se ejecute automáticamente al iniciar el sistema, algo que puedes hacer usando los siguientes comandos systemctl.
systemctl start mysql
systemctl enable mysqlEl servidor de base de datos mariadb ahora se está ejecutando. A continuación, necesitamos configurar la contraseña de root para mariadb. Podemos usar el comando ‘mysql_secure_installation’ a continuación para configurar la contraseña de root.
mysql_secure_installationSe te preguntará sobre la nueva contraseña de root - escribe tu contraseña y presiona ‘Enter’ para continuar.
Set root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] YLa contraseña de root para mariadb ha sido configurada.
A continuación, debemos crear una nueva base de datos y un usuario para LibreNMS. Crearemos una nueva base de datos llamada ‘librenms’, un nuevo usuario llamado ‘librenms’ con la contraseña ‘hakase-labs123’.
Inicia sesión en el shell de mariadb usando el siguiente comando.
mysql -u root -p
Type the ROOT Password:Ejecuta las consultas de mariadb a continuación para crear una nueva base de datos y usuario, y otorgar todos los privilegios en la base de datos al nuevo usuario.
CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'hakase-labs123';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;Se ha creado una nueva base de datos y usuario para LibreNMS.

Para la instalación de LibreNMS, necesitamos agregar algunas configuraciones al archivo de configuración. Ve al directorio ‘/etc/mysql/‘ y edita el archivo de configuración de mariadb.
cd /etc/mysql/
vim mariadb.conf.d/50-server.cnfPega la configuración a continuación bajo la sección ‘[mysqld]‘.
innodb_file_per_table=1
sql-mode=""
lower_case_table_names=0Guarda y sal.

Ahora aplica la nueva configuración reiniciando el servicio.
systemctl restart mysqlLa configuración de la base de datos mariadb se ha completado.
Paso 5 - Descargar y configurar LibreNMS
En este paso, configuraremos el sistema para la instalación de LibreNMS.
- Agregar nuevo usuario y descargar LibreNMS
Crea un nuevo usuario del sistema llamado ‘librenms’, define ‘/opt/librenms’ como el directorio de inicio predeterminado para el usuario y asigna el nuevo usuario ‘librenms’ al grupo www-data.
Ejecuta el siguiente comando para hacerlo todo.
useradd librenms -d /opt/librenms -M -r
usermod -a -G librenms www-dataAhora ve al directorio ‘/opt/‘ y descarga el código fuente de LibreNMS usando el comando git.
cd /opt/
git clone https://github.com/librenms/librenms.git librenms
A continuación, crea un nuevo directorio para los archivos de registro de libreNMS y los archivos rrd.
mkdir -p /opt/librenms/{logs,rrd}Cambia los permisos de propiedad para el directorio ‘rrd’ a ‘775’, y cambia el propietario del directorio ‘librenms’ al usuario y grupo ‘librenms’.
chmod -R 775 /opt/librenms/rrd/
chown -R librenms:librenms /opt/librenms/Se ha creado un nuevo ‘librenms’, y se ha descargado el código fuente de LibreNMS.
- Configurar el Virtualhost de LibreNMS
Ve al directorio de configuración de ‘nginx’ y crea un nuevo archivo de host virtual ‘librenms’ con vim.
cd /etc/nginx/
vim sites-available/librenmsPega la siguiente configuración del host virtual de LibreNMS allí.
server {
# Agrega tu propio nombre de dominio
listen 80;
server_name librenms.irsyadf.me;
# Directorio raíz de LibreNMS
root /opt/librenms/html;
index index.php;
# Registros de LibreNMS
access_log /opt/librenms/logs/access_log;
error_log /opt/librenms/logs/error_log;
# Habilitando la compresión Gzip en Nginx
charset utf-8;
gzip on;
gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location /api/v0 {
try_files $uri $uri/ /api_v0.php?$query_string;
}
# PHP-FPM maneja todas las solicitudes de archivos .php
location ~ \.php {
include fastcgi.conf;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}Guarda y sal. Ahora, activa el virtualhost.
ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/Prueba la configuración de nginx y asegúrate de que no haya errores. Luego reinicia el servicio.
ginx -t
systemctl restart nginx- Configurar el firewall UFW
Agrega nuevos puertos al firewall. Agrega nuevo ssh, http, https y el puerto utilizado por snmpd 161 tipo udp al firewall ufw.
Ejecuta los siguientes comandos ufw.
ufw allow ssh
ufw allow http
ufw allow https
ufw allow 161/udp
Inicia el firewall ufw con el comando ufw enable como se muestra a continuación.
ufw enableEscribe ‘y’ y presiona ‘Enter’ para confirmar. Inicia y habilítalo para que se inicie cada vez que se inicie el sistema.
Si deseas ver el estado del firewall, ejecuta el comando ‘ufw status’.
ufw statusObtendrás el estado del firewall - activo o inactivo - y la lista de puertos y servicios agregados al firewall.

Paso 6 - Instalador web de LibreNMS
Después de que todos los pasos anteriores estén completos, necesitamos instalar LibreNMS a través del navegador web. Abre tu navegador web, escribe el nombre de dominio de LibreNMS ‘librenms.hakase-labs.co’ en la barra de direcciones y presiona Enter.
- Verificando módulos de PHP
Serás redirigido a la página install.php que muestra el resultado de las verificaciones de soporte de módulos de PHP. Asegúrate de que todo el estado esté en verde como se muestra a continuación.

Haz clic en ‘Siguiente etapa‘ para continuar.
- Configuración de la base de datos
Completa toda la información de la base de datos con tu propia base de datos.
- Usuario de DB: librenms
- Contraseña de DB: hakase-labs123
- Nombre de DB: librenms

Y haz clic en ‘Siguiente etapa‘.
- Importando base de datos MySQL
Espera a que el script del instalador importe una muestra de la base de datos a nuestra base de datos - no cierres la pestaña del navegador durante este proceso.

Después de que toda la base de datos se importe, haz clic en ‘Ir a agregar usuario‘.
- Agregar usuario administrador
Aquí, escribe tu usuario administrador, correo electrónico y contraseña.

Haz clic en ‘Agregar usuario‘.
- Generar configuración de LibreNMS

Haz clic en el botón ‘Generar configuración‘.
Y obtendrás un archivo de configuración similar al que se muestra a continuación.

Copia el script de configuración php y vuelve a tu sesión ssh. Ve al directorio ‘/opt/librenms’ y crea el archivo ‘config.php’ manualmente usando vim.
cd /etc/librenms/
vim config.phpPega la configuración allí y cambia la propiedad del archivo al usuario y grupo librenms.
chown librenms:librenms config.phpVuelve a tu navegador web y haz clic en el botón ‘Finalizar instalación‘.
Ahora llegas a la última página del instalador web de librenms - ver a continuación.

Paso 7 - Configuración final
Después de que la instalación a través del navegador web esté completa, necesitamos hacer algunos otros pasos.
- Configurar SNMP
Haz una copia de seguridad del archivo de configuración predeterminado y copia la configuración de muestra al directorio ‘/etc/snmp/‘.
mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.aseli
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.confEdita la nueva configuración con vim.
vim /etc/snmp/snmpd.confReemplaza la línea ‘RANDOMSTRINGGOESHERE’ con tu propio nombre de comunidad ‘hakaselabs’, como se muestra a continuación.
com2sec readonly default hakaselabsGuarda y sal.

A continuación, necesitamos descargar el script de detección de distribución. Descárgalo usando curl, luego haz que el script sea ejecutable y, finalmente, reinicia el servicio snmp.
curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
chmod +x /usr/bin/distro
systemctl restart snmpd- Configuración de Crontab y Logrotate
Ve al directorio librenms y copia la configuración de muestra para Crontab y Logrotate.
cd /opt/librenms/Copia la configuración.
cp librenms.nonroot.cron /etc/cron.d/librenms
cp misc/librenms.logrotate /etc/logrotate.d/librenmsAhora reinicia el servicio cron y recarga la configuración de logrotate.
systemctl restart cron
logrotate -f /etc/logrotate.conf- Validar configuración
Espera un tiempo hasta que el script cron se esté ejecutando en el sistema. Una vez que eso esté hecho, valida con el script ‘validate.php’.
Ve al directorio librenms y ejecuta el script de validación.
cd /opt/librenms/
./validate.phpSi tu instalación es correcta, obtendrás el resultado como se muestra a continuación.

La instalación de LibreNMS con el servidor web Nginx en Ubuntu 16.04 está completa.
Referencia
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.