Mesurer les temps de réponse des services dans Tshark

WiresharkWiresharkBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous apprendrez à mesurer les temps de réponse du service SMB à l'aide de Tshark, l'outil en ligne de commande de Wireshark. Vous allez capturer le trafic réseau sur le port TCP 445, analyser les temps de réponse des sessions et appliquer des filtres pour examiner les communications spécifiques d'un hôte.

Les exercices pratiques vous guideront dans la génération de trafic de test, le calcul de métriques de performance SMB avec des commandes telles que -z smb,srt, et l'analyse des résultats à l'aide des fonctionnalités statistiques de Tshark. Vous aurez l'expérience pratique des filtres de capture (-f "tcp port 445") et des filtres d'affichage (-Y "ip.addr==10.0.0.1") dans un environnement Linux.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"]) wireshark/WiresharkGroup -.-> wireshark/packet_capture("Packet Capture") wireshark/WiresharkGroup -.-> wireshark/display_filters("Display Filters") wireshark/WiresharkGroup -.-> wireshark/capture_filters("Capture Filters") wireshark/WiresharkGroup -.-> wireshark/export_packets("Exporting Packets") wireshark/WiresharkGroup -.-> wireshark/packet_analysis("Packet Analysis") wireshark/WiresharkGroup -.-> wireshark/commandline_usage("Command Line Usage") subgraph Lab Skills wireshark/packet_capture -.-> lab-548933{{"Mesurer les temps de réponse des services dans Tshark"}} wireshark/display_filters -.-> lab-548933{{"Mesurer les temps de réponse des services dans Tshark"}} wireshark/capture_filters -.-> lab-548933{{"Mesurer les temps de réponse des services dans Tshark"}} wireshark/export_packets -.-> lab-548933{{"Mesurer les temps de réponse des services dans Tshark"}} wireshark/packet_analysis -.-> lab-548933{{"Mesurer les temps de réponse des services dans Tshark"}} wireshark/commandline_usage -.-> lab-548933{{"Mesurer les temps de réponse des services dans Tshark"}} end

Capturer le trafic SMB avec -f "tcp port 445"

Dans cette étape, vous apprendrez à capturer le trafic réseau SMB (Server Message Block) en utilisant le filtre de capture de Wireshark. SMB est un protocole réseau principalement utilisé pour le partage de fichiers, l'accès aux imprimantes et la communication inter-processus entre les machines Windows. Il utilise généralement le port TCP 445 pour la communication, c'est pourquoi nous allons nous concentrer sur ce port spécifique dans notre capture.

Commençons par préparer notre environnement :

  1. Tout d'abord, ouvrez un terminal dans votre machine virtuelle LabEx en cliquant sur l'icône du terminal sur le bureau Xfce ou en utilisant le raccourci Ctrl+Alt+T. C'est dans le terminal que nous allons exécuter toutes nos commandes.

  2. Accédez au répertoire de travail par défaut où nous allons stocker nos fichiers de capture. Cela permet de garder notre projet organisé :

cd ~/project
  1. Maintenant, nous allons lancer Wireshark, l'analyseur de protocole réseau que nous allons utiliser pour capturer et examiner le trafic SMB. Le symbole & exécute Wireshark en arrière-plan afin que vous puissiez continuer à utiliser le même terminal :
wireshark &
  1. Dans l'interface principale de Wireshark, nous devons configurer nos paramètres de capture :

    • Sélectionnez l'interface réseau active (généralement eth1). C'est la carte réseau qui va surveiller le trafic.
    • Dans le champ du filtre de capture, entrez : tcp port 445. Cela indique à Wireshark de ne capturer que le trafic sur le port 445 où fonctionne SMB.
    • Cliquez sur l'icône de la nageoire de requin bleue pour commencer la capture. Vous verrez l'interface commencer à se remplir de paquets.
  2. Pour générer un peu de trafic SMB pour notre capture, nous allons utiliser la commande smbclient dans une nouvelle fenêtre de terminal. Cette commande tente de se connecter à un serveur SMB local (même si nous savons qu'elle échouera, elle générera tout de même le trafic que nous voulons capturer) :

smbclient -N -L //127.0.0.1
  1. Après avoir capturé pendant environ 10 secondes (temps suffisant pour générer un trafic suffisant), arrêtez la capture en cliquant sur le bouton carré rouge. Cela figera l'affichage des paquets afin que nous puissions l'examiner.

  2. Observez les paquets capturés dans la fenêtre principale. Vous devriez voir des paquets TCP avec le port de destination/source 445. Ce sont les paquets du protocole SMB que nous souhaitons analyser.

  3. Enfin, enregistrons notre capture pour un usage ultérieur :

    • Allez dans Fichier > Enregistrer sous
    • Nommez le fichier smb_capture.pcapng (le format .pcapng conserve toutes les informations de capture)
    • Enregistrez-le dans ~/project où nous avons commencé notre session

Calculer le SRT avec -z smb,srt

Dans cette étape, vous apprendrez à calculer le temps de réponse de session SMB (SMB Session Response Time - SRT) en utilisant l'utilitaire en ligne de commande de Wireshark, tshark. Le SRT mesure le temps écoulé entre l'envoi d'une demande SMB par un client et la réception de la réponse du serveur, ce qui est crucial pour identifier les goulots d'étranglement de performance dans les opérations de partage de fichiers SMB.

  1. Tout d'abord, assurez-vous d'être dans le répertoire de projet où nous allons travailler avec nos fichiers de capture :
cd ~/project
  1. Nous allons utiliser le fichier de capture smb_capture.pcapng créé à l'étape précédente. Ce fichier contient le trafic réseau capturé sur le port 445, qui est le port standard du protocole SMB. Si vous n'avez pas ce fichier, vous pouvez le recréer en exécutant :
wireshark -k -i eth1 -f "tcp port 445" -w smb_capture.pcapng &

Attendez 10 secondes pour capturer un peu de trafic SMB, puis arrêtez la capture avec Ctrl+C.

  1. La commande principale calcule les temps de réponse de session SMB. L'option -z smb,srt indique à tshark d'analyser les statistiques des temps de réponse SMB :
tshark -r smb_capture.pcapng -z smb,srt
  1. La sortie affichera un tableau détaillé avec les statistiques du SRT qui vous aideront à comprendre les caractéristiques de performance de la session SMB. Il inclut :

    • Le nombre total de demandes SMB traitées
    • Le temps de réponse minimum (réponse la plus rapide)
    • Le temps de réponse maximum (réponse la plus lente)
    • Le temps de réponse moyen
    • La distribution des temps de réponse dans différentes plages de temps
  2. Lorsque vous travaillez avec de grands fichiers de capture, la sortie peut être longue. Pour une meilleure lisibilité, vous pouvez rediriger la sortie vers less, qui vous permet de parcourir les résultats page par page :

tshark -r smb_capture.pcapng -z smb,srt | less
  1. Pour enregistrer ces statistiques pour une analyse ultérieure ou un rapport, redirigez la sortie vers un fichier texte :
tshark -r smb_capture.pcapng -z smb,srt > smb_srt_stats.txt
  1. Vous pouvez examiner les statistiques enregistrées à tout moment en utilisant la commande cat. Cela est utile lorsque vous avez besoin de revoir les résultats sans réexécuter l'analyse :
cat smb_srt_stats.txt

Filtrer par hôte avec -Y "ip.addr==10.0.0.1"

Dans cette étape, vous apprendrez à filtrer le trafic réseau pour une adresse IP d'hôte spécifique (10.0.0.1) en utilisant la syntaxe des filtres d'affichage de Wireshark. Cela est utile lorsque vous souhaitez vous concentrer sur le trafic lié à un appareil particulier dans votre capture réseau.

  1. Tout d'abord, assurez-vous d'être dans le répertoire de projet où est stocké votre fichier de capture :
cd ~/project
  1. Ouvrez le fichier de trafic SMB capturé précédemment dans Wireshark. Le symbole & permet de l'exécuter en arrière - plan afin que vous puissiez continuer à utiliser le terminal :
wireshark smb_capture.pcapng &
  1. Dans la barre de filtre d'affichage de Wireshark (située en haut de la fenêtre principale), entrez le filtre suivant pour voir tous les paquets impliquant l'adresse IP 10.0.0.1 :
ip.addr==10.0.0.1

Puis appuyez sur Entrée ou cliquez sur Appliquer pour activer le filtre.

  1. La liste des paquets affichera maintenant uniquement les paquets où :

    • L'adresse IP source est 10.0.0.1 (trafic provenant de cet hôte)
    • L'adresse IP de destination est 10.0.0.1 (trafic allant vers cet hôte)
  2. Pour être plus précis, vous pouvez filtrer uniquement les paquets allant vers 10.0.0.1 (trafic de destination) :

ip.dst==10.0.0.1
  1. De même, pour voir uniquement les paquets provenant de 10.0.0.1 (trafic source) :
ip.src==10.0.0.1
  1. Vous pouvez combiner des filtres avec des opérateurs logiques pour une analyse plus précise. Par exemple, pour voir uniquement le trafic SMB (qui utilise le port TCP 445) vers/depuis 10.0.0.1 :
ip.addr==10.0.0.1 && tcp.port==445
  1. Pour enregistrer la vue filtrée pour une analyse ultérieure :
    • Allez dans Fichier > Exporter les paquets spécifiés
    • Choisissez "Affichés" pour enregistrer uniquement les paquets filtrés
    • Enregistrez sous filtered_host.pcapng

Afficher les statistiques avec -q

Dans cette étape, nous allons explorer comment analyser les statistiques de trafic réseau en utilisant l'outil en ligne de commande de Wireshark, tshark. L'option -q (quiet, silencieux) est particulièrement utile car elle masque les détails des paquets individuels et se concentre uniquement sur les résumés statistiques, ce qui facilite l'analyse des tendances globales du trafic.

Avant de commencer, assurons - nous que nous sommes dans le bon répertoire de travail où se trouve notre fichier de capture :

cd ~/project

Commençons maintenant par les statistiques de base. Cette commande nous donne une vue d'ensemble du contenu du fichier de capture sans afficher chaque paquet :

tshark -r smb_capture.pcapng -q

Pour comprendre comment les différents protocoles réseau sont répartis dans notre capture, nous utilisons les statistiques de hiérarchie des protocoles. Cela montre le pourcentage de trafic appartenant à chaque protocole :

tshark -r smb_capture.pcapng -qz io,phs

Étant donné que nous travaillons avec du trafic SMB, nous pouvons analyser spécifiquement les temps de réponse du service SMB. Cela permet d'identifier la rapidité avec laquelle le serveur répond aux demandes des clients :

tshark -r smb_capture.pcapng -qz smb,srt

Ensuite, nous examinerons les statistiques des points terminaux pour voir quelles adresses IP génèrent ou reçoivent le plus de trafic :

tshark -r smb_capture.pcapng -qz endpoints,ip

Pour comprendre les modèles de communication entre les hôtes, nous utilisons les statistiques de conversations. Cela montre les volumes de trafic entre des paires d'adresses IP spécifiques :

tshark -r smb_capture.pcapng -qz conv,ip

Il est souvent utile de sauvegarder les statistiques pour une analyse ultérieure. Ici, nous sauvegardons la hiérarchie des protocoles dans un fichier texte :

tshark -r smb_capture.pcapng -qz io,phs > protocol_stats.txt

Enfin, nous pouvons afficher les statistiques sauvegardées pour vérifier notre sortie :

cat protocol_stats.txt

Résumé

Dans ce laboratoire, vous avez appris à mesurer les temps de réponse du service SMB en utilisant Wireshark et tshark. Le processus consistait à capturer le trafic SMB avec le filtre "tcp port 445", puis à analyser les temps de réponse de session grâce au paramètre "-z smb,srt" de tshark pour évaluer les performances du SMB.

Vous avez également pratiqué le filtrage du trafic par adresse IP en utilisant l'option "-Y" et la génération de résumés statistiques avec "-q". Ces techniques fournissent des compétences essentielles pour l'analyse du trafic réseau et la surveillance du protocole SMB à l'aide d'outils en ligne de commande.