Instalar LibreNMS en Debian12
LibreNMS es una plataforma de monitoreo de redes de código abierto que utiliza varios servicios como Apache, PHP, MySQL, y SNMP para funcionar. A continuación te indico los pasos para hacer una instalación estándar:
1. Actualizar el sistema
Primero, asegúrate de que tu sistema esté actualizado:
sudo apt update && sudo apt upgrade -y
2. Instalar dependencias necesarias
LibreNMS requiere varias dependencias como PHP, MariaDB (o MySQL), Nginx o Apache, y más.
Instalar Apache
Si decides usar Apache como servidor web, instálalo de la siguiente manera:
sudo apt install apache2
Instalar PHP y módulos necesarios
LibreNMS necesita PHP (versión 8.1 o superior). Instala PHP y los módulos requeridos:
sudo apt install php php-cli php-fpm php-mysql php-zip php-gd php-mbstring php-curl php-xml php-bcmath php-json php-snmp php-gmp -y
Instalar MariaDB
Instala MariaDB
sudo apt install mariadb-server mariadb-client -y
Instalar SNMP y RRDTool
LibreNMS utiliza SNMP y RRDTool para recopilar y generar las gráficas de los datos recopilados
sudo apt install snmp snmpd rrdtool fping git curl -y
3. Configurar MariaDB
Inicia la consola de MariaDB y asegúrate de configurar una contraseña segura para el usuario root:
sudo mysql_secure_installation
Luego, crea una base de datos y un usuario para LibreNMS:
sudo mysql -u root -p
Dentro de la consola de MariaDB, ejecuta los siguientes comandos para crear la base de datos:
CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'tu_contraseña_segura';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
EXIT;
4. Crear usuario LibreNMS
Crea un usuario dedicado para LibreNMS:
sudo useradd librenms -d /opt/librenms -M -r -s /bin/bash
5. Clonar el repositorio de LibreNMS
Ahora, clona el repositorio de LibreNMS en /opt:
sudo git clone https://github.com/librenms/librenms.git /opt/librenms
6. Establecer permisos
Cambia los permisos de los archivos y directorios necesarios:
sudo chown -R librenms:librenms /opt/librenms
sudo chmod 770 /opt/librenms
7. Configurar Apache
Crea una configuración virtual host para Apache:
sudo nano /etc/apache2/sites-available/librenms.conf
Agrega la siguiente configuración:
<VirtualHost *:80>
DocumentRoot /opt/librenms/html/
ServerName tu_dominio_o_ip
AllowEncodedSlashes NoDecode
<Directory "/opt/librenms/html/">
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
</Directory>
ErrorLog ${APACHE_LOG_DIR}/librenms_error.log
CustomLog ${APACHE_LOG_DIR}/librenms_access.log combined
</VirtualHost>
Habilita el sitio y los módulos necesarios en Apache:
sudo a2ensite librenms.conf
sudo a2enmod rewrite
sudo a2enmod php
sudo systemctl restart apache2
8. Configurar SNMP
Edita la configuración de SNMP:
sudo cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
sudo nano /etc/snmp/snmpd.conf
Cambia los datos de la comunidad, contacto y ubicación, si es necesario (desde luego es muy recomendable). Luego, reinicia el servicio SNMP:
sudo systemctl enable snmpd
sudo systemctl restart snmpd
9. Completar la instalación vía web
10. Configuración final
Una vez que hayas completado la instalación desde la interfaz web, ejecuta los siguientes comandos:
sudo ln -s /opt/librenms/lnms /usr/bin/lnms
sudo cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
sudo cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
Esto asegura que los trabajos cron y la rotación de logs estén configurados correctamente.
: