GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo instalar LibreNMS en Debian 11

LibreNMS es un sistema de monitoreo de red de código abierto basado en PHP y con soporte de detección automática. Es una bifurcación comunitaria del software de monitoreo Observium lanzado bajo licencia GPLv3. El uso de LibreNMS le permite monitorear sistemas operativos como Linux, Windows y BSD, también es compatible con una amplia gama de hardware de red de múltiples proveedores como Aruba, Cisco, Dell, D-Link, HP, Mikrotik, etc.

Como un sistema de monitoreo con todas las funciones, LibreNMS proporciona una gran cantidad de funciones con múltiples integraciones y múltiples protocolos de recopilación de datos.

A continuación se presentan algunas características notables de LibreNMS:

  • Descubrimiento automático de toda su red con múltiples protocolos como CDP, BGP, SNMP, OSPF y ARP.
  • Múltiples métodos de alerta mediante correo electrónico, slacks, IRC, Rocket.chat, Telegram, etc.
  • API extensa para administrar, graficar y recuperar datos de su sistema de monitoreo.
  • Admite el sistema de facturación para generar facturas de ancho de banda basadas en el uso o la transferencia de la red.
  • Admite múltiples métodos de autenticación, como MySQL, Radius, LDAP, HTTP y Active Directory.
  • Admite autenticación de dos factores
  • Múltiples integraciones con aplicaciones de terceros como Graylog, NfSen, Nagios Plugins, Oxidized, RANCID.
  • Apoyo de amplio rango de proveedores de hardware, verifique sus proveedores aquí.
  • Panel de control fácil de usar y personalizable.
  • Mantenga su software LibreNMS con soporte de actualización automática.
  • Aplicación nativa para Android e iOS que proporciona funciones básicas.

En esta guía, aprenderá cómo instalar y configurar la herramienta de monitoreo LibreNMS en Debian 11 Bullseye.

Requisitos

Para completar esta guía, asegúrese de cumplir con los siguientes requisitos:

  • Sistema operativo:Debian 11 Bullseye
  • Privilegios de raíz

Ahora comencemos la instalación.

Instalación de dependencias de paquetes

En este primer paso, instalará paquetes básicos y esenciales para LireNMS. Instalará LEMP Stack, paquetes de Python, snmpd y utilidades adicionales del sistema, como curl, fping, git e imagemagick.

1. Actualice y actualice los repositorios de Debian usando el siguiente comando.

sudo apt update

2. Ahora ejecute el siguiente comando para instalar las dependencias de los paquetes.

sudo apt install acl curl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php7.4-cli php7.4-curl php7.4-fpm php7.4-gd php7.4-gmp php7.4-json php7.4-mbstring php7.4-mysql php7.4-snmp php7.4-xml php7.4-zip python3-dotenv python3-pymysql python3-redis python3-setuptools python3-pip python3-systemd rrdtool snmp snmpd whois

Escriba 'y' para confirmar la instalación y presione 'Enter' para continuar.

3. Después de que se complete la instalación de las dependencias de los paquetes, ejecute los siguientes comandos para iniciar y habilitar servicios como Nginx, MariaDB, PHP-FPM y snmpd.

sudo systemctl enable --now nginx
sudo systemctl enable --now mariadb
sudo systemctl enable --now php7.4-fpm
sudo systemctl enable --now snmpd.service

Ahora ha completado la instalación de dependencias de paquetes para LibreNMS.

Configurar librenms de nuevo usuario

En este paso, creará un nuevo usuario del sistema 'librenms'. Su herramienta de monitoreo LibreNMS se ejecutará bajo el usuario 'librenms'.

1. Ejecute el siguiente comando para crear un nuevo usuario 'librenms'.

useradd librenms -d /opt/librenms -M -r -s "$(which bash)"

Opciones que debes conocer:

  • -d /opt/librenms: Configure el directorio de inicio predeterminado para el usuario 'librenms' en '/opt/librenms'.
  • -M: No cree un directorio de inicio para el usuario 'librenms'.
  • -r: Haga que este usuario sea 'librenms' como usuario del sistema.
  • -s "$(que bash)" :Configure el shell predeterminado para el usuario 'librenms'. El shell será la salida del comando 'which bash'.

2. Luego, cree una nueva contraseña para el usuario 'librenms' usando el siguiente comando.

passwd librenms

Escriba una nueva contraseña segura y repita.

Continúe con la siguiente etapa para configurar su sistema para la instalación de LibreNMS.

Configurar sistema de zona horaria y PHP

El tiempo es una parte esencial del monitoreo. En este paso, configurará la zona horaria predeterminada para su PHP y la zona horaria del sistema, asegúrese de que ambas zonas horarias (PHP y sistema) estén sincronizadas y utilicen la misma zona horaria.

1. Edite la configuración 'php.ini' para PHP-FPM y CLI usando el siguiente comando.

sudo nano /etc/php/7.4/fpm/php.ini
sudo nano /etc/php/7.4/cli/php.ini

Descomente la opción 'date.timezone' y coloque su zona horaria después. Para este ejemplo, estamos usando la zona horaria 'Europa/París' .

date.timezone = Europe/Paris

Guarde ambas configuraciones y salga.

2. Ahora reinicie PHP-FPM para aplicar una nueva configuración usando el siguiente comando.

sudo systemctl restart php7.4-fpm

3. Después de eso, ejecute el siguiente comando timedatectl para configurar la zona horaria predeterminada del sistema en 'Europa/París '.

sudo timedatectl set-timezone Europe/Paris

Ha completado la configuración de la zona horaria para su PHP y sistema.

Configurar MariaDB y crear base de datos

En este paso, agregará la configuración para MariaDB según los requisitos de LibreNMS, luego creará una nueva base de datos y usuario de MariaDB para la instalación de LibreNMS.

1. Edite la configuración del servidor MariaDB '/etc/mysql/mariadb.conf.d/50-server.cnf ' usando el editor nano.

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

Agregue la siguiente configuración en la sección '[mysqld]' .

[mysqld]
.....
....
innodb_file_per_table=1
lower_case_table_names=0

Guarde la configuración y salga.

2. Para aplicar la nueva configuración de MariaDB, reinicie el servicio usando el siguiente comando systemctl.

sudo systemctl restart mariadb

Ahora ha agregado una configuración adicional al servidor MariaDB.

3. A continuación, inicie sesión en el shell de MariaDB/MySQL usando el comando 'mysql ' como el usuario 'raíz ' como se muestra a continuación.

mysql -u root -p

Escribe tu contraseña o presiona 'Entrar ' para iniciar sesión.

4. Ahora ejecute las siguientes consultas de MariaDB para crear una nueva base de datos y el usuario 'librenms '. Y asegúrese de cambiar la contraseña 'LibreNMSPassword ' con su contraseña segura.

CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'LibreNMSPassword';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;

Escribe 'salir' y presiona 'Entrar ' para cerrar sesión en el shell de MariaDB.

Ahora ha creado la base de datos y el usuario para la instalación de LibreNMS.

Crear un nuevo grupo de PHP-FPM

FastCGI Process Manager (FPM) o PHP-FPM le permite crear grupos personalizados para sus aplicaciones PHP. De forma predeterminada, PHP-FPM ejecuta el grupo 'www' con la configuración '/etc/php/7.4/fpm/pool.d/www.conf' .

En este paso, creará un nuevo grupo PHP-FPM personalizado para LibreNMS. Creará un nuevo grupo PHP-FPM 'librenms ' con la configuración '/etc/php/7.4/fpm/pool.d/librenms.conf ', y se ejecutará bajo el usuario 'librenms '.

1. Primero, copie la configuración predeterminada del grupo 'www.conf ' a 'librenms.conf ' usando el siguiente comando.

cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/librenms.conf

2. Edite la configuración del grupo 'librenms.conf' personalizado usando el editor nano.

sudo nano /etc/php/7.4/fpm/pool.d/librenms.conf

En la parte superior de la línea, cambie el usuario predeterminado de '[www]' a '[librenms]' .

[librenms]

Cambie el usuario y el grupo predeterminados a 'librenms '.

user = librenms
group = librenms

Cambie el archivo sock PHP-FPM predeterminado a '/run/php-fpm-librenms.sock '.

listen = /run/php-fpm-librenms.sock

Guarde la configuración y salga.

3. A continuación, reinicie el servicio PHP-FPM para aplicar una nueva configuración.

sudo systemctl restart php7.4-fpm

Ahora PHP-FPM generará un nuevo grupo 'librenms' con el archivo sock '/run/php/php-fpm-librenms.sock' .

4. Verifique los 'librenms ' sock usando el siguiente comando.

ss -anl | grep librenms

Verá un resultado similar al siguiente.

u_str LISTEN 0      511                /run/php/php-fpm-librenms.sock 69199                  * 0     users:(("php-fpm7.4",pid=26105,fd=10),("php-fpm7.4",pid=26104,fd=10),("php-fpm7.4",pid=26103,fd=7))

Ahora está listo para descargar e instalar la herramienta de monitoreo LibreNMS.

Descargar LibreNMS

En este paso, descargará el código fuente de LibreNMS y configurará el permiso y el control de acceso para él.

1. Cambie su directorio de trabajo a '/opt' y descargue el código fuente de LibreNMS usando el comando git como se muestra a continuación.

cd /opt/
git clone https://github.com/librenms/librenms.git

Su instalación de LibreNMS es '/opt/librenms ' directorio.

2. Cambie la propiedad y el permiso de la instalación de LibreNMS usando el siguiente comando.

chown -R librenms:librenms /opt/librenms
chmod 771 /opt/librenms

3. A continuación, configure las Listas de control de acceso (ACL) para el directorio de instalación de LibreNMS. Permite que el grupo lea, escriba y ejecute en cada directorio a continuación usando el siguiente comando setfacl.

setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/

Continúe con el siguiente paso para instalar las dependencias de PHP para LibreNMS.

Instalación de dependencias PHP de LibreNMS

Para instalar las dependencias PHP de LibreNMS, debe iniciar sesión como usuario 'librenms' y usar composer_wrapper, que se incluye en el código fuente de LibreNMS.

1. Inicie sesión como usuario 'librenms' usando el siguiente comando.

su - librenms

2. Ejecute el script PHP 'composer_wrapper.php ' para instalar dependencias de paquetes PHP para LibreNMS.

./scripts/composer_wrapper.php install --no-dev

3. Después de completar todos los procesos de descarga, escriba 'salir ' y presione 'Entrar ' para salir del usuario 'librenms '.

Ahora ha completado la instalación de Dependencias de PHP para LibreNMS.

Configurar Nginx para LibreNMS

En este paso, creará un nuevo bloque de servidor Nginx para la herramienta de monitoreo LibreNMS. Este ejemplo usará el nombre de dominio 'librenms.example.io'.

1. Cree una nueva configuración de bloques de servidor Nginx 'librenms ' usando el editor nano.

sudo nano /etc/nginx/sites-available/librenms

Copie y pegue la siguiente configuración. Y asegúrese de cambiar el nombre de dominio con su dominio.

server {
 listen      80;
 server_name librenms.example.io;
 root        /opt/librenms/html;
 index       index.php;

 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 ~ [^/]\.php(/|$) {
  fastcgi_pass unix:/run/php-fpm-librenms.sock;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  include fastcgi.conf;
 }
 location ~ /\.(?!well-known).* {
  deny all;
 }
}

Para una instalación segura de HTTPS LibreNMS, use la siguiente configuración. Y asegúrese de cambiar el nombre de dominio y la ruta de los certificados SSL.

server {
    listen      80;
    server_name librenms.example.io;
    rewrite     ^   https://$server_name$request_uri? permanent;
}

server {

 server_name librenms.example.io;
 root        /opt/librenms/html;
 index       index.php;

   listen 443 ssl http2;
    server_name example.io;
    ssl_certificate           /etc/letsencrypt/live/librenms.example.io/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/librenms.example.io/privkey.pem;

    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

 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 ~ [^/]\.php(/|$) {
  fastcgi_pass unix:/run/php/php-fpm-librenms.sock;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  include fastcgi.conf;
 }
 location ~ /\.(?!well-known).* {
  deny all;
 }
}

Ahora guarde la configuración y salga.

2. A continuación, active el nuevo host virtual 'librenms ' y verifique la configuración de nginx usando el siguiente comando.

sudo ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/
sudo nginx -t

Si su configuración es correcta, verá un mensaje de salida como 'la prueba fue exitosa' .

3. Por último, reinicie el servicio nginx para aplicar una nueva configuración.

sudo systemctl restart nginx

Ahora ha completado la configuración del bloque del servidor Nginx para LibreNMS. Está listo para iniciar la instalación de LibreNMS.

Iniciar la instalación de LibreNMS

Para iniciar la instalación de LibreNMS, abra su navegador web y escriba el nombre de dominio de LibreNMS en la barra de direcciones.

https://librenms.ejemplo.io.

1. Verá las 'Comprobaciones previas a la instalación de LibreNMS '. Asegúrese de que todos los estados de verificación estén marcados en verde, luego haga clic en el icono de la base de datos para continuar.

2. Escriba su base de datos, usuario y contraseña. Luego haga clic en el botón 'Comprobar credenciales '.

Esto realizará la verificación de su base de datos y usuario de MariaDB. Si tiene éxito, verá la marca verde en 'Credenciales de la base de datos '.

3. Ahora haga clic en el botón 'Crear base de datos ' para importar el esquema de la base de datos para su LibreNMS.

Una vez completada la configuración de la base de datos, asegúrese de que ambas secciones 'Credenciales de la base de datos ' y 'Crear base de datos ' marcar como verde.

4. Ahora haga clic en la 'Clave ' icono para continuar.

Escriba un nuevo usuario, contraseña y dirección de correo electrónico para crear el usuario administrador de LibreNMS.

Haga clic en el botón 'Agregar usuario '.

Si se crea su usuario administrador, verá su administrador de usuario en la página como se muestra a continuación.

5. Haga clic en el icono de marca para completar la instalación. A continuación se muestra el resultado que obtendrá.

Para finalizar la instalación de LibreNMS, abra la página de validación de LibreNMS como se muestra a continuación.

https://librenms.ejemplo.io/validar

6. Y será redirigido a la página de inicio de sesión de LibreNMS.

Escriba su usuario y contraseña de administrador, luego haga clic en 'Iniciar sesión botón '

7. En las páginas de validación de LibreNMS, verá algunos errores como se muestra a continuación.

Puede tener diferentes errores, pero la página de validación de LibreNMS proporciona soluciones para su error.

8. A continuación se muestran algunos errores en nuestra instalación y cómo solucionarlos.

- Corregir la zona horaria de la base de datos

Inicie sesión en el shell de MariaDB con su usuario root.

mysql -u root -p

Cambie la base de datos actual a 'librenms'.

use librenms;

Ahora ejecute las siguientes consultas para corregir el error de la zona horaria de la base de datos.

SET TIME_ZONE='+00:00';
ALTER TABLE `notifications` CHANGE `datetime` `datetime` timestamp NOT NULL DEFAULT '1970-01-02 00:00:00' ;
ALTER TABLE `users` CHANGE `created_at` `created_at` timestamp NOT NULL DEFAULT '1970-01-02 00:00:01' ;

- Solucionar errores del sistema

Agregue el comando binario LibreNMS 'lnms' a '/usr/bin ' directorio usando el siguiente comando.

sudo ln -s /opt/librenms/lnms /usr/bin/lnms

Habilite la finalización de bash para el comando 'lnms'.

sudo cp /opt/librenms/misc/lnms-completion.bash /etc/bash_completion.d/

Por último, copie la configuración de logrotate para LibreNMS en el directorio '/etc/logrotate.d/'.

sudo cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms

9. Después de corregir los errores de LibreNMS, vuelva a las páginas de validación de LibreNMS y vuelva a cargar la página.

Ahora asegúrese de que todo el estado sea 'OK '.

10. Haga clic en 'Descripción general ' menú para mostrar el tablero.

Ahora ha completado la instalación de LibreNMS en Debian 11 Bullseye.

Conclusión

¡Felicidades! Ha instalado con éxito la herramienta de monitoreo LibreNMS con Nginx, PHP-FPM y la base de datos MariaDB en la última versión de Debian 11 Bullseye. Además, aprendió a crear el grupo PHP-FPM personalizado y corregir algunos errores de instalación de LibreNMS.

Para el próximo paso, aprenderá cómo agregar hosts para monitorear a la herramienta de monitoreo de LibreNMS.


Debian
  1. Cómo instalar R en Debian 9

  2. Cómo instalar R en Debian 10

  3. Cómo instalar Gradle en Debian 10

  4. Cómo instalar AnyDesk en Debian 10

  5. Cómo instalar Webmin en Debian 9

Cómo instalar webmin en Debian 11

Cómo instalar Go en Debian 10

Cómo instalar LibreNMS en Debian 10

Cómo instalar LibreNMS en Debian 11

Cómo instalar Cockpit en Debian 10

Cómo instalar Go en Debian