Introducción
LibreNMS es un descubrimiento automático basado en monitoreo de red PHP/MySQL/SNMP, que incluye soporte para una amplia gama de hardware de red y sistemas operativos, incluidos Cisco, Linux, FreeBSD, Juniper, Brocade, Foundry, HP, etc. Para instalar LibreNMS en Debian 10 Buster, realice los siguientes pasos.
Paso 1: instale los paquetes necesarios
Necesitamos instalar todas las dependencias requeridas por LibreNMS para ejecutarse.
sudo apt install software-properties-common
sudo apt update && sudo apt -y upgrade
sudo apt install nginx
sudo apt install curl acl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap python-memcache python-mysqldb rrdtool snmp snmpd whois
Paso 2: instale PHP y las extensiones requeridas
Utilice la siguiente guía para instalar PHP 7.3 y extensiones PHP en su servidor
Cómo instalar PHP/PHP en Debian 10 Buster
Paso 3: agregue el usuario librenms al sistema
Ejecute el siguiente comando en una terminal Debian 10 para agregar el usuario librenms.
sudo useradd librenms -d /opt/librenms -M -r
sudo usermod -aG librenms www-data
Paso 4: clonar LibreNMS desde git
Ahora descarguemos el archivo LibreNMS a nuestro servidor usando git.
cd /opt
sudo git clone https://github.com/librenms/librenms.git
Paso 5: Establezca los permisos necesarios en el directorio LibreNMS
Los usuarios de LibreNMS necesitan permisos especiales en los directorios y archivos a los que desean acceder. Configúrelo ejecutando el siguiente comando
sudo chown -R librenms:librenms /opt/librenms
sudo chmod 770 /opt/librenms
sudo setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
sudo setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
Paso 6: instalar las dependencias de PHP
Ejecute el siguiente comando para instalar todas las dependencias requeridas por PHP en su servidor Debian 10. Esto puede tardar algún tiempo en completarse.
sudo su - librenms
./scripts/composer_wrapper.php install --no-dev
exit
Debería ver un resultado similar al siguiente
Paso 7: configuración de la base de datos
Instalamos MariaDB en el paso 1. Pasemos a crear una base de datos para LibreNMS.
Inicie sesión en su base de datos
sudo systemctl enable mysql
sudo systemctl restart mysql
sudo mysql -u root -p
Crear base de datos y usuario librenms
CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci; CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'SafePassWord'; ## Make it Strong GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost'; FLUSH PRIVILEGES; exit
Abra el archivo MariaDB y agregue las siguientes líneas debajo de la sección [mysqld]
sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf
Agregue lo siguiente a continuación [mysqld]
[mysql]
........
innodb_file_per_table=1
lower_case_table_names=0
Reiniciar MariaDB
sudo systemctl restart mysql
Paso 8: Configurar PHP-FPM
Asegurémonos de que date.timezone en php.ini esté configurado en la zona horaria preferida.
sudo vim /etc/php/7.3/fpm/php.ini
Abajo [Fecha] Descomente la línea fecha.zona horaria y agregue su zona horaria.
[Date] ; Defines the default timezone used by the date functions ; https://php.net/date.timezone date.timezone = Africa/Nairobi ## Place your time zone here
sudo vim /etc/php/7.3/cli/php.ini
Como arriba, debajo de [Fecha] Descomente la línea fecha.zona horaria y agregue su zona horaria.
[Date] ; Defines the default timezone used by the date functions ; https://php.net/date.timezone date.timezone = Africa/Nairobi ## Place your time zone here
Reiniciar PHP-FPM
sudo systemctl restart php7.3-fpm
Paso 9: configurar el servidor web Nginx
Dado que elegimos Nginx como nuestro servidor web preferido, es hora de agregar configuración para que podamos comenzar a servir páginas LibreNMS.
Elimine la página predeterminada cargada después de una nueva instalación de Nginx
sudo rm /etc/nginx/sites-enabled/default
Cree un archivo de configuración en el directorio conf.d y agregue el siguiente contenido
sudo vim /etc/nginx/conf.d/libreconfig.conf
server { listen 80; server_name example.com; ## Input your Server name here. 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 /api/v0 { try_files $uri $uri/ /api_v0.php?$query_string; } location ~ .php { include fastcgi.conf; fastcgi_split_path_info ^(.+.php)(/.+)$; fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; } location ~ /.ht { deny all; } }
Reiniciar Nginx
sudo systemctl restart nginx
Paso 10: configurar el demonio snmp (snmpd)
LibreNMS hace un uso extensivo de SNMP para recopilar métricas de dispositivos y servidores remotos. Copie el archivo de configuración de muestra en / etc.
sudo cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
sudo vim /etc/snmp/snmpd.conf
En la siguiente línea:
com2sec readonly default RANDOMSTRINGGOESHERE ##Change to for example: com2sec readonly default teststring
Como se mencionó anteriormente, cambie RANDOMSTRINGGOESHERE a su propia cadena de comunidad.
Extraiga el archivo siguiente para hacerlo ejecutable, luego reinicie el demonio snmp
Este archivo detectará qué sistema operativo, y si es Linux, detectará qué distribución de Linux.
sudo curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
sudo chmod +x /usr/bin/distro
sudo systemctl restart snmpd
Paso 11: Copie la configuración de logrotate
LibreNMS mantiene los registros en /opt/librenms/logs. Con el tiempo, pueden crecer y ser eliminados. Para rotar los registros antiguos, puede utilizar el archivo de configuración logrotate proporcionado:
sudo cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
Paso 12: Configura Cron para que funcione
Este trabajo cron hace mucho trabajo, como buscar actualizaciones, descubrir dispositivos automáticamente, etc.
sudo cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
Paso 13: Instalador web LibreNMS
Ahora vaya al instalador web y siga las instrucciones en pantalla.
https:// IP or FQDN /install.php
El instalador web puede solicitarle que cree manualmente un archivo config.php en la ubicación de instalación de librenms y copie el contenido que se muestra en la pantalla en ese archivo. Si tiene que hacer esto, recuerde establecer permisos en config.php después de copiar el contenido de la pantalla a un archivo. correr:
sudo chown librenms:librenms /opt/librenms/config.php
Después del proceso de instalación, puede ver las imágenes a continuación como guía.
Ingrese el usuario de su base de datos, el pase de la base de datos y el nombre de la base de datos.
Dale tiempo para importar la base de datos.
Agregue un usuario que utilizará para iniciar sesión en LibreNMS en el futuro.
Configuración de compilación
Después de generar la configuración, ejecute el siguiente comando
sudo chown librenms:librenms /opt/librenms/config.php
terminar la instalación
Haga clic en el enlace "Verificar instalación y resolver todos los problemas" para completar
Cuando todo esté hecho, cuando actualice su navegador, debería ver la página de inicio de sesión a continuación.
en conclusión
Ahora que hemos instalado la herramienta de monitoreo LibreNMS, todavía nos queda mucho trabajo por hacer. Incluye agregar dispositivos, crear alertas, crear umbrales, ajustar el rendimiento y más. Espero que esta guía sea útil y gracias por venir. Te recomendamos leer algunosDocumentación de LibreNMSLe permitimos continuar con el siguiente paso.
También puedes seguir estas pautas.
Cómo instalar LibreNMS en CentOS 8/RHEL 8
Instalar y configurar Zabbix Server 4.4 en Debian 10 (Buster)
Instale la herramienta de monitoreo LibreNMS en CentOS usando Letsencrypt y Nginx
Cómo instalar y configurar Zabbix Agent 4.0 en Ubuntu 18.04 y CentOS 7
Instale el servidor Zabbix en Ubuntu 18.04
Cómo instalar y configurar LibreNMS en Ubuntu 18.04 LTS usando Nginx