====== 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 python3-pip - 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". Changer également la ligne concernant listen par listen = /run/php-fpm-librenms.sock - 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 - Créer le batch CRON et la rotation des logs cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms ===== Sources ===== * Liste à pucehttps://docs.librenms.org/Installation/Install-LibreNMS/