MRTG (Multi Router Traffic Grapher) est un outil open source écrit en Perl utilisé pour surveiller et mesurer la charge de trafic sur les liens réseau et présenter les données sous forme graphique. Cet outil vous aide à suivre et à résoudre les anomalies du réseau telles que les pics de trafic réseau à des heures impaires.
MRTG fonctionne avec tous les périphériques réseau prenant en charge le protocole SNMP. Il surveille les périphériques réseau SNMP et dessine de jolies images montrant la quantité de trafic qui a traversé chaque interface. MRTG fonctionne sur les systèmes Unix/Linux, Windows et Netware.
Dans cet article, nous allons voir comment installer et configurer MRTG sur Ubuntu 18.04/20.04.
Prérequis MRTG
Vous devez avoir installé Apache avant de pouvoir exécuter MRTG sur votre machine. Sur Ubuntu 18.04, vous pouvez facilement installer Apache en extrayant le package du référentiel officiel.
$ sudo apt install apache2
Installez les packages SNMP pour Ubuntu :
$ sudo apt install snmpd snmp
Pour configurer SNMP, j'aime activer l'accès complet depuis localhost :
$ sudo vim /etc/snmp/snmpd.conf
Ajoutez la chaîne de communauté SNMP suivante au fichier snmpd.conf :
rocommunity public localhost
Vous devez redémarrer le service snmpd pour que la modification soit effectuée.
$ sudo systemctl restart snmpd
Par défaut, SNMP écoute localhost. Vous pouvez vérifier sur quel port ou adresse IP SNMP écoute à l'aide de la commande ss.
Installer MRTG sur Ubuntu 18.04/20.04
Tous les prérequis sont corrects, nous pouvons donc installer MRTG sur Ubuntu en exécutant la commande :
$ sudo apt install mrtg
Acceptez toute invite contextuelle et cliquez sur Oui pour démarrer l'installation.
Configuration de MRTG
Une fois le processus d'installation terminé, vous devez le configurer avant de pouvoir commencer à surveiller les appareils cibles. Nous allons définir le répertoire de travail MRTG sur /var/www/mrtg
$ sudo mkdir /var/www/mrtg
Assurez-vous de changer le propriétaire de ce répertoire en www-data
, qui est le compte d'utilisateur par défaut pour le serveur Web Apache.
$ sudo chown -R www-data:www-data /var/www/mrtg
Puis éditez /etc/mrtg.conf pour définir le répertoire de travail :
$ sudo cat /etc/mrtg.cfg | grep -v "^#"
Sortie :
WorkDir: /var/www/mrtg
WriteExpires: Yes
Title[^]: Traffic Analysis for
Reconstruire la configuration MRTG à partir du fichier modifié :
$ sudo cfgmaker public@localhost > /etc/mrtg.cfg
Sortie :
--base: Get Device Info on public@localhost:
--base: Vendor Id: Unknown Vendor - 1.3.6.1.4.1.8072.3.2.10
--base: Populating confcache
--base: Get Interface Info
--base: Walking ifIndex
--snpd: public@localhost: -> 1 -> ifIndex = 1
--snpd: public@localhost: -> 2 -> ifIndex = 2
--snpd: public@localhost: -> 3 -> ifIndex = 3
--base: Walking ifType
--snpd: public@localhost: -> 1 -> ifType = 24
--snpd: public@localhost: -> 2 -> ifType = 6
--snpd: public@localhost: -> 3 -> ifType = 6
--base: Walking ifAdminStatus
--snpd: public@localhost: -> 1 -> ifAdminStatus = 1
--snpd: public@localhost: -> 2 -> ifAdminStatus = 1
--snpd: public@localhost: -> 3 -> ifAdminStatus = 1
--base: Walking ifOperStatus
--snpd: public@localhost: -> 1 -> ifOperStatus = 1
--snpd: public@localhost: -> 2 -> ifOperStatus = 1
--snpd: public@localhost: -> 3 -> ifOperStatus = 1
--base: Walking ifMtu
--snpd: public@localhost: -> 1 -> ifMtu = 65536
--snpd: public@localhost: -> 2 -> ifMtu = 1500
--snpd: public@localhost: -> 3 -> ifMtu = 1500
--base: Walking ifSpeed
--snpd: public@localhost: -> 1 -> ifSpeed = 10000000
--snpd: public@localhost: -> 2 -> ifSpeed = 0
--snpd: public@localhost: -> 3 -> ifSpeed = 0
$ ls /var/www/mrtg/
index.html mrtg-l.png mrtg-m.png mrtg-r.png
Créer un fichier d'index pour le serveur Web :
$ sudo indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html
La dernière chose à faire est de créer un fichier VirtualHost pour le site.
$ sudo vim /etc/apache2/sites-available/mrtg.conf
Ajoutez ce qui suit à ce nouveau fichier :
Alias /mrtg "/var/www/mrtg/"
<Directory "/var/www/mrtg/">
Options None
AllowOverride None
Require all granted
</Directory>
Activez le site et rechargez le service apache.
$ sudo sudo a2ensite mrtg
Recharger le service Apache :
$ sudo systemctl reload apache2
Accéder à l'interface utilisateur MRTG
Rendez-vous sur http://ip-address/mrgt ou http://nomserveur/mrtg pour accéder à l'interface Web MRTG. La surveillance de l'interface devrait commencer à afficher le trafic :
Il existe également un graphique quotidien par défaut pour une interface par défaut.
Vous pouvez configurer MRTG pour surveiller d'autres éléments tels que la RAM, l'utilisation du processeur, l'échange, le disque, etc.
Configurer MRTG pour interroger les métriques toutes les X minutes
Je vais créer une tâche cron qui vérifie les modifications apportées au fichier de configuration et génère de nouvelles images png pouvant être visualisées sur l'interface Web. Assurez-vous de créer la tâche cron en tant qu'utilisateur root.
# crontab -e
*/5 * * * * root LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg.cfg
Cela sera exécuté toutes les cinq minutes.
Conclusion
Dans ce didacticiel, nous avons appris à installer et à configurer MRTG sur Ubuntu 18.04/20.04.
Merci d'avoir lu, veuillez fournir vos commentaires et suggestions dans la section des commentaires.