Ntop et la supervision réseau via Netflow/IPFix
NTop est un outil libre (licence GPL) de supervision réseau permettant d'afficher en temps réel les informations collectées dans une interface Web. Pour effectuer cette collecte, NTop se base sur la librairie libpcap (du projet TCPDump) pour capturer les flux transitant sur les interfaces réseau de la machine ou est installé le logiciel. Les dernières versions de NTop permettent également de collecter des informations venant de machines distantes grâce aux protocoles SNMP et Netflow/IPfix. C'est sur ce dernier point que nous allons nous focaliser dans ce billet.
Un peu d'histoire
Ntop a été conçu par Stephano Suin et Luca Deri pour analyser les problèmes de performances qu’ils rencontraient sur le réseau du campus de l’université de Pise. Ce dernier est toujours dans l'équipe de développement. Après avoir rencontré quelques petits problèmes de sécurité, le projet Ntop semble reparti sur une belle dynamique avec notamment la mise en place d'un système de plugin permettant d'ajouter de nouvelles fonctionnalités au logiciel.
Installation de Ntop
On commence par installer ntop sur sa distribution GNU/Linux (exemple donnée pour distribution Ubuntu 9.04).
sudo aptitude install ntop
Le processus ntop utilisate le compte ntop (ou nobody selon les distribution), il faut donc penser à changer les droits du répertoire suivant avant de lancer ntop.
sudo chmod -R 777 /var/lib/ntop
On configure ensuite Ntop en éditant le fichier /var/lib/ntop/init.cfg:
sudo vi ??/var/lib/ntop/init.cfg USER="ntop" INTERFACES="eth0"
On configure le mot de passe du compte admin (pour l'accès à l'interface Web):
sudo /etc/init.d/ntop stop sudo ntop -A "motdepassepouradmin"
Lancement de Ntop
On lance ensuite Ntop:
sudo /etc/init.d/ntop start
Par défaut l'interface Web de Ntop est lancé sur le port 3000. Il faut donc lancer un navigateur Web sur l'URL suivante: http://adresse-serveur:3000 ou adresse-serveur est l'adresse IP de la machine ou est installé Ntop.
Vous pouvez alors voir les statistiques réseau de votre interface Ethernet mais on peut aller bien plus loin avec Ntop...
Configuration de Ntop en collecteur Netflow/IPFix
Par défaut, Ntop surveille pour vous l'interface réseau de la machine sur lequel il est installé. Pour éviter d'avoir à installer plusieurs Ntop sur chacune des machines à superviser, vous pouvez utiliser le protocole Netflow qui va envoyer les mesures vers un collecteur central ou sera installé Ntop. Pour celà nous allons utiliser le plugin Netflow de Ntop.
On doit d'abord activer le plugin Netflow en se rendant dans le menu Plugins / Netflow / Active.
On ajoute ensuite une sonde Netflow à collecter en allant dans le menu Plugins / Netflow / Configure. Par exemple pour ajouter la sonde hébergée sur la machine al-firewall1(plage d'adresse IP 192.168.254.0/255.255.255.248, interface supervisée: em0) envoyant les mesures Netflow sur le port UDP/9990, il faut saisir les champs suivants:
On peut ensuite vérifier que les mesures sont bien remontées à Ntop en se rendant dans le menu Plugins / Netflow / Statistics:
Enfin pour voir les statistiques de cette interface Netflow (par défaut Ntop affiche les stats de l'interface par défaut de la machine), il faut se rendre dans le menu Admin / Switch NIC et sélectionner l'interface Netflow:
On peut alors facilement consulter les statistiques de cette machine à distance, comme la distribution protocolaire:
ou le débit réseau:
Si comme moi vous aviez laissé Ntop de coté, je pense qu'il est grand temps de lui donner une seconde chance !