Configurer MRTG sous Debian et Ubuntu

Après l’installation des paquets, MRTG ne peut pas encore lire les informations de la machine locale : l’agent SNMP est volontairement restreint. Il faut :

  1. installer snmpd, Apache et MRTG ;
  2. autoriser MRTG à lire les compteurs réseau via SNMP ;
  3. générer la configuration MRTG et les pages HTML ;
  4. démarrer le service.

Installation

apt install snmp snmpd apache2 mrtg

Configurer snmpd

Par défaut sous Debian, snmpd n’écoute que sur 127.0.0.1 et la communauté public ne donne accès qu’à une vue systemonly (nom et description du système), sans la table des interfaces dont MRTG a besoin.

vi /etc/snmp/snmpd.conf

Ajoutez une communauté en lecture seule, limitée à la machine locale. Choisissez un nom moins prévisible que public :

rocommunity  MaCommunaute  127.0.0.1
systemctl restart snmpd
snmpwalk -v2c -c MaCommunaute 127.0.0.1 IF-MIB::ifDescr

La dernière commande doit lister vos interfaces réseau.

Configurer MRTG

Préparez le répertoire web (il doit appartenir à l’utilisateur mrtg) puis générez la configuration :

mkdir -p /var/www/html/mrtg
chown mrtg: /var/www/html/mrtg

cfgmaker \
  --global 'WorkDir: /var/www/html/mrtg' \
  --global 'Language: french' \
  --global 'Options[_]: bits,growright' \
  --ifdesc=descr \
  --output /etc/mrtg/mrtg.cfg \
  MaCommunaute@127.0.0.1

indexmaker /etc/mrtg/mrtg.cfg --output=/var/www/html/mrtg/index.html

Démarrer MRTG

Le paquet Debian fournit un service systemd qui exécute MRTG en démon (relevé toutes les 5 minutes) et positionne LANG=C, ce qui évite l’ancienne erreur « Mrtg will most likely not work properly when the environment variable LANG is set to UTF-8 ». Plus besoin de crontab :

systemctl enable --now mrtg
systemctl status mrtg

Ouvrez ensuite http://votre_serveur/mrtg/ : les graphiques apparaissent après quelques relevés.

Commentaires

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. Découvrez comment les données de vos commentaires sont traitées.