Proposition d`amélioration v1.0

Transcription

Proposition d`amélioration v1.0
DUMAS Nathalie
FOUILLEUX Samy
HEURTEVENT Thomas
FALLET Laurent
Réseaux - Proposition d’évolutions v1.0
7 décembre 2003
Proposition d’évolutions
F IG . 1 – TT taskForce - TT n◦ 9
Table des matières
1
Objectifs de l’analyse d’un réseau
2
1.1
Analyser un réseau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2
Les différents types d’analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2.1
La mesure de trafic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2.2
La surveillance du trafic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2.3
L’optimisation et la planification . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2.4
La détection de violation de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
Les analyses mises en place . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.3
2
3
4
5
MRTG : Multi Router Traffic Grapher
3
2.1
Qu’est-ce qu’MRTG ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2.2
Fonctionnalités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
NTOP
5
3.1
Qu’est-ce qu’NTOP ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
3.2
Installation et configuration de NTOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
Utilisation de ces outils
6
4.1
Comparaison MRTG <-> NTOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
4.2
Mise en place à la LAN Party du Téléthon . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
Résultats
1
9
1
Objectifs de l’analyse d’un réseau
L’analyse d’un réseau consiste en l’étude du comportement d’une architecture d’un ensemble de composants de différentes couches, soit pour en valider la conception, soit pour y rechercher des anomalies.
1.1
Analyser un réseau
En ethernet, la gestion des montées en charge du réseau est mal gérée automatiquement. On observe au fur
et à mesure de l’augmentation du trafic une augmentation des collisions, et un phénomène de congestion au
niveau du routeur. Le paquets n’arrivant pas doivent être réémis, des paquets ICMP naviguent pour avertir des
problèmes sur le réseau, du "jam" est rajouté lors des collisions... et pire encore, lorsqu’une station a créé trop
de collisions à la suite (une dizaine ou quinzaine de fois) elle est interdite d’émission. Un joueur subissant cela
ne l’acceptera pas. De plus tous les joueurs ressentiront ce lag. C’est un problème qu’il faut anticiper.
Des outils sont disponibles pour observer et analyser la charge du réseau. Ils permettent :
– La détermination de la source d’un problème lié à une application réseau
– L’évaluation de la charge et de la nature du trafic d’un réseau
– La validation ou l’adaptation d’une architecture LAN pour les LAN futures
L’analyseur examine l’ensemble du trafic et génère différents fichiers journaux sous forme d’une base de
données en synthétisant pour chaque minute les hôtes détectés, les statistiques de trafic, les matrices de trafic, la
distribution des protocoles et le temps de réponse des applications. Parallèlement un système expert complète
ces informations avec les symptômes, les diagnostiques et les différents objets détectés (connexions, applications, sessions. . . ).
1.2
1.2.1
Les différents types d’analyse
La mesure de trafic
Cela consiste à mesurer l’utilisation des activités majeures du trafic. Il est possible d’obtenir des statistiques
individuelles pour chaque machine d’un sous-réseau ainsi que pour le sous-réseau dans sa globalité, grâce à une
simple observation du réseau (mode promiscuous). Tous les paquets capturés (ou "sniffés") sont détaillés pour
obtenir la paire émetteur / destinataire.
1.2.2
La surveillance du trafic
Cela représente la capacité à identifier les situations lors desquelles le trafic réseau n’est pas conforme aux
politiques et règles imposées par l’administrateur. Par exemple une station dépasse un seuil imposé, car par
exemple le système d’exploitation, les interfaces réseau ou les applications logicielles sont mal configurés.
1.2.3
L’optimisation et la planification
Une configuration non-optimisée de stations sur un réseau peut influencer négativement les performances
globales du réseau. Un outil d’analyse peut aider sur ce point par le fait qu’il permet d’identifier les sources
d’utilisation improductive de bande passante (protocoles inutiles, problèmes de routage).
1.2.4
La détection de violation de sécurité
Les attaques sur un réseau ne viennent pas toujours de l’extérieur (DoS, masquage de paquets. . . ) mais aussi
de l’intérieur (IP spoofing, cartes réseau en mode promiscuous. . . ) et de méthodes communes (cheval de Troie,
2
scan de ports. . . ). Il est possible, avec un outil adéquat, de générer des alertes pour chacun de ces problèmes.
1.3
Les analyses mises en place
Les 3 premières analyses ont été utilisées lors de la LAN Party du Téléthon du 6 & 7 décembre :
1. La mesure du trafic pour savoir quels étaient les flux les plus utilisés.
2. La surveillance pour veiller à un fonctionnement optimal tout au long de la LAN.
3. Enfin l’optimisation dans le sens d’une architecture fixe et stable, non perturbée (par exemple en capturant
et supprimant les DHCP sauvages, qui perturbent le réseau et le DHCP en place).
2
MRTG : Multi Router Traffic Grapher
Site web : http://people.ee.ethz.ch/~oetiker/webtools/mrtg/
F IG . 2 – Logo de Multi Router Traffic Grapher (MRTG)
2.1
Qu’est-ce qu’MRTG ?
Le Multi Router Traffic Grapher (MRTG, Traceur de graphiques sur le Trafic Multi Routeur) est un outil de
métrologie réseau, qui permet de surveiller la charge sur les liens du réseau. MRTG est codé en Perl et C, ce qui
lui permet de fonctionner sous Unix et Windows NT. Il peut générer des pages HTML contenant des images
PNG qui fournissent une representation visuelle en temps réel du trafic.
MRTG se base sur les paquets SNMP (Simple Network Management Protocol) émis sur le réseau. Il est
aussi très performant pour l’analyse des routeurs. Habituellement les utilisateurs de MRTG gèrent des choses
telles que la charge système, les sessions d’authentification, la disponibilité de la bande passante, et plus encore.
2.2
Fonctionnalités
Avec MRTG il est possible de surveiller :
– Les débits ADSL
– Le volume échangé sur la connexion ADSL
– Le traffic sur le réseau local
– Les temps de latence
– Les requêtes DNS
– Le nombre de connexion, visites
– Le CPU, la mémoire et les processus
– Une analyse complète des requêtes et des réponses d’Apache
3
F IG . 3 – Analyse du débit ADSL
Les différentes informations obtenues en "sniffant" le réseau (mode promiscuous pour la carte réseau) sont
regroupées et synthétisées sous formes de graphiques. On peut aussi analyser les fichiers de logs ou les listes
d’erreurs.
Concrètement, les gains peuvent être :
– détection d’un élément défecteux sur le réseau (switch, câble. . . )
– meilleure répartition de la charge
⇒ donc une meilleure satisfaction des joueurs !
F IG . 4 – Nombre de hits sur le serveur
La mise en place des outils de télémaintenance et de surveillance du réseau permet d’analyser les différents goulets d’étranglement du réseau (bande passante, serveur, protocole, service, etc.) et d’y apporter des
solutions. Nous pensons (nous en sommes même sûr) que CygoSoft maîtrise la configuration des éléments
d’interconnexion, mais une analyse en direct et à posteriori du trafic peut apporter des éléments intéressants.
4
3
NTOP
Site web : http://www.ntop.org/
3.1
Qu’est-ce qu’NTOP ?
Ntop est un outil multiplateformes (Unix, Linux, Windows) d’analyse du réseau. Il permet d’observer l’utilisation du réseau comme le fait la commande "top" sous linux pour les processus. Ntop est un analyseur de
paquets hybride, car il n’est pas un pur analyseur Ethernet (couche 2) ni un pur analyseur TCP/IP (couche 3).
Ntop se divise en deux composants :
– le premier, dit "ntop classique", comprend un serveur WEB ;
– le second, dit "intop" pour ntop interactif, est un "network shell" basé sur le moteur ntop.
Ntop se comportant comme un serveur Web, les utilisateurs peuvent accéder à ses fonctionnalités via
un navigateur Internet (Opéra, Netscape,. . . ) et ainsi avoir une idée de la charge du réseau, et l’état du réseau. Habituellement il écoute sur le port 3000 ; les statistiques seront donc accessibles à l’adresse http:
//hostname|ip:3000/. Cette interface Web, qui permet la configuration et la visualisation des statistiques
en temps réel, est simple d’emploi et convient parfaitement au monitoring des réseaux.
Intop procure au sniffer de packet, qui est le noyau ntop, une interface puissante et flexible. Ntop ne peut
être considéré comme un simple navigateur Web, en considération de l’ensemble des fonctionnalité qu’il met
à disposition de l’utilisateur. Le moteur de ntop capture les paquets en premier lieu, analyse le trafic et gère le
stockage des informations. Intop assure au final l’affichage des utilisations du réseau.
Fonctionnalités de ntop :
– Tri et affichage du trafic réseau par protocole
– Tri et affichage du trafic réseau en fonction de nombreux critères
– Affichage de statistiques sur le trafic
– Stockage persistant des statistiques trafic au format RRD
– Identification des utilisateurs de "poste de travail" (par exemple par les adresses mails)
– Identification passive de l’OS de l’hôte
– Affiche la répartition du trafic IP sur les différents protocoles
– Analyse du trafic IP et tri en fonction de la source / destination
– Affichage de la matrice de sous réseau du trafic IP (qui parle à qui ?)
– Rapport d’utilisation du protocole IP trié par type de protocole
– Collecte les flots générés par les routeurs et switchs
– Statistiques sur les domaines internet, les VLAN (Virtual LAN)
– Décodeurs pour certains protocoles P2P
– Génération de graphiques
– Différenciation multicast / broadcast / unicast
– Produce RMON-like network traffic statistics
– Statistiques de traffic réseau similaire à RMON (Remote MONitoring, un ensemble de sondes mesurant
de façon détaillée l’activité sur un réseau, au niveau OSI 2 et 3 OSI, en utilisant le protocole SNMP)
5
Interfaces et médias supportés par ntop :
– Loopback (trafic de la machine locale vers elle-même)
– Ethernet (y compris Wifi)
– Token ring
– FDDI
– PPP / PPPOE (PPP Over Ethernet) : connexions par modem RTC ou ADSL
L’utilisation mémoire dépend de la configuration de ntop, du nombre d’hotes, du nombre de session TCP
active. En général la charge s’étend de quelques Mo pour un petit LAN à 100 Mo pour un WAN. L’utilisation
CPU dépend de la configuration de ntop et des conditions des échanges. Sur un poste standard, sur un grand
réseau LAN, elle est inférieure à 10%. Un avantage est que l’interface Web est peu gourmande en CPU et en
mémoire vive.
Protocoles supportés :
– IP, IPX
– TCP/UDP (FTP, HTTP, DNS, Telnet, SMTP/POP/IMAP, SNMP, NFS, X11)
– Netbios
– OSI
– DLC (ex. : HDLC)
– AppleTalk, DecNet. . .
Les ports les plus intéressants se trouvent, pour la LAN, en TCP et UDP. Ainsi, Counter-Strike écoute sur
les ports 27010 à 27020 (27015 pour le cas de la LAN), StarCraft sur le port 6112, Quake sur la plage de ports
26000 et au-delà. Ces ports sont bien entendu ceux configurés par défaut, mais peuvent être modifiés. Les ports
dont le numéro est supérieur à 20000 sont utilisés pour les serveurs de jeux.
Les autres ports écoutés étaient plus typiques : http, ftp, netbios, dhcp, dns, messenger. . .
3.2
Installation et configuration de NTOP
Options intéressantes :
– -d : Ntop sera lancé en tant que daemon, c’est à dire démarré en tâche de fond ;
– -S : Cette option indique à ntop qu’il doit sauver les informations concernant le trafic lorsqu’il s’arrête.
Les valeurs possibles sont : 0 = ne stocker aucun hôte, 1 = stocker tous les hôtes, 2 = ne stocker que les
hôtes locaux. Ainsi ntop ne perd pas les statistiques du trafic au fur et à mesure des sessions ;
– -p <protocols list> : renseigne sur les protocoles à intercepter ;
– -i : interface interceptant le trafic ;
– -w ip:3000 : adresse du serveur web, pour rendre consultable les résultats sur le web ;
4
4.1
Utilisation de ces outils
Comparaison MRTG <-> NTOP
Bien que les statistiques globales d’utilisation (MRTG) d’Internet soient utiles, elles ne permettent pas de
décortiquer cette consommation en fonction des utilisations que l’on en fait.
Historisation complète de MRTG (jusqu’à un an !). On peut ainsi obtenir des graphiques journaliers, hebdomadaires, mensuels, et annuels. Il permet de superviser d’autres paramètres que le débit réseau (charge Cpu,
Mémoire, Taille disque, Ping, etc...)
MRTG réalise des graphes des liens Wans avec une historique sur la volumétrie.
6
NTOP est centré sur la retranscription de l’image d’un réseau unique, et pas de multiples réseaux.
N’ayant ici qu’un seul réseau à analyser, en temps réel, et sans nécessité de sauvegarde à long terme, nous
avons choisit d’utiliser l’outil NTOP lors de la LAN. Sa configurabilité au niveau de la surveillance des ports a
également été un choix déterminant.
4.2
Mise en place à la LAN Party du Téléthon
Les paramètres pertinents à surveiller ont été déterminés avec David, de la société CygoSoft, et sont ceux
évoqués ci-dessus.
Voici la configuration adoptée dans un premier temps (figure ci-dessous). Notre station de test était branchée
sur le routeur, en "parallèle" :
F IG . 5 – Configuration lors des tests de ntop
Ensuite le but est de réaliser la même installation / configuration sur le firewall. Cette machine est également
la passerelle, le DHCP et le serveur WINS. Il est ainsi possible de gérer tout le trafic et d’avoir une vision
exacte du trafic sur le réseau. Cette configuration se fait en "série", c’est à dire que tout le flux passe à travers la
7
machine. Voici le schéma :
F IG . 6 – Configuration en utilisation nominale
8
5
Résultats
Ntop est un outils qui donne principalement des résultats numériques, mais également quelques graphiques.
Voici quelques résultats :
F IG . 7 – Débit au cours de la dernière heure
F IG . 8 – Distribution des différents protocoles utilisés
L’analyse de ce graphe est simple : les données sont issues d’une phase de jeu. On observe en effet un trafic
important sur Counter-Strike, mais également d’autres sortes de trafic : du netbios, des protocoles utilisés par
le web lorsque l’on surfe sur Internet (HTTP, requêtes DNS) et du DHCP-boot, car la station avec un serveur
DHCP et attribuait les IP aux joueurs. Le trafic sur port 22 (SSH) était principalement du aux admins (Cygosoft
et ASI). On observe également une petite proportion d’utilisation de Messenger, tels que MSN. Ceux-ci ne
consommant que très peu de bande passante, cela n’a pas eu trop d’impact sur le temps de réponse du réseau.
9
Il est également possible de sauvegarder des résultats pour les exporter. Les formats disponibles sont en
texte, xml, php. . . Autant de formats qui permettent une réutilisation facile, si l’on veut traiter les résultats dans
un autre logiciel.
Nous avons donc installé Ntop sur une machine, un autre groupe a installé MRTG, car ils n’avaient pas
besoin de statistiques autant détaillées. Enfin nous avons ajouté quelques services, tels que Ffsearch (voir la
proposition d’amélioration v0.9, outils allégeant la charge réseau lors de recherches sur protocole Samba).
Conclusion
Trouver les problèmes auxquels est confronté un réseau ne mène pas nécessairement à des solutions immédiates. Une interprétation correcte est primordiale. Parfois il peut être frustrant de trouver de nombreuses
informations sans malgré tout pouvoir trouver la solution à son problème.
Une bonne analyse nécessite de bons outils, et Ntop correspond bien aux besoin d’une Lan-Party. Encore
merci à CygoSoft pour leur accueil, leurs conseils et l’ambiance agréable qui régnait durant ces 2 jours.
10