Librenms

Installer les paquets nécessaires

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

Ajouter un utilisateur librenms

useradd librenms -d /opt/librenms -M -r -s /bin/bash

Cloner le projet

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

Mettre les permissions

chown -R librenms:librenms /opt/librenms chmod 771 /opt/librenms 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/

Installer les dépendances du projet

su - librenms ./scripts/composer_wrapper.php install --no-dev exit

Modifier le timezone des deux fichiers php

sed -i 's/;date.timezone =/date.timezone = \"Europe\/Brussels\"/g' /etc/php/7.3/cli/php.ini sed -i 's/;date.timezone =/date.timezone = \"Europe\/Brussels\"/g' /etc/php/7.3/fpm/php.ini

Modifier également le timezone de la machine

timedatectl set-timezone Europe/Brussels

Editer le fichier de configuration mariadb

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

et rajouter les deux lignes suivantes dans la partie [mysqld]

innodb_file_per_table = 1
lower_case_table_names = 0

Activer et rédemarrer le service

systemctl enable mariadb systemctl restart mariadb

Sécuriser l'install mariadb

mysql_secure_installation

Se connecter à mysql

mysql -u root

et introduire les lignes suivantes en adaptant les données

CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci; CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost'; FLUSH PRIVILEGES; exit

Copier le fichier de configuration fpm et l'éditer

cp /etc/php/7.3/fpm/pool.d/www.conf /etc/php/7.3/fpm/pool.d/librenms.conf nano /etc/php/7.3/fpm/pool.d/librenms.conf

Y remplacer le user et group par “librenms”

Supprimer le fichier de conf nginx par défaut

rm /etc/nginx/sites-enabled/default

Editer un nouveau fichier

nano /etc/nginx/sites-enabled/librenms.vhost

et mettre le code suivant

server { listen 80; server_name librenms.example.com; 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; } }

Relancer les services

systemctl reload nginx systemctl restart php7.3-fpm

Sources

Liste à pucehttps://docs.librenms.org/Installation/Install-LibreNMS/