Aller au contenu
Avanet

Sophos Firewall tcpdump : Capturer des paquets via CLI

tcpdump est l’outil approprié lorsque vous devez examiner de plus près quels paquets arrivent réellement sur le Sophos Firewall, par quelle interface ils passent et si un problème survient avant, sur ou derrière le pare-feu. Il complète le Log Viewer et le WebAdmin Packet Capture, mais ne les remplace pas.

Pour des analyses rapides via navigateur, utiliser Sophos Firewall Packet Capture dans WebAdmin est souvent plus pratique. Pour des captures plus longues, des filtres très précis, des fichiers PCAP ou des cas de support, tcpdump via SSH est généralement plus approprié.

⚠️ Important : Les captures de paquets peuvent contenir des données sensibles. Elles doivent donc être filtrées de manière stricte, enregistrées uniquement aussi longtemps que nécessaire et transmises uniquement par des canaux sécurisés. Une capture non filtrée sur any peut générer beaucoup de données sur des pare-feux en production.

Choix de l’outil et prérequis

Quel article convient ?

tcpdump n’est pas le premier pas pour chaque analyse. Selon la question, un autre point de départ peut être plus rapide :

SituationMeilleur point de départ
Vous voulez rapidement voir dans WebAdmin si des paquets arrivent, sont transférés ou rejetésUtiliser Sophos Firewall Packet Capture dans WebAdmin
Une règle de pare-feu doit être validée avec Log Viewer, Policy tester et Packet CaptureTester une règle Sophos Firewall avec Log Viewer, Policy tester et Packet Capture
L’accent est mis sur Drop, Violation, Rule ID, NAT ID ou les raisons de rejetAnalyser les paquets rejetés par Sophos Firewall
Il n’est pas clair à quel fichier journal local appartient VPN, Web, IPS, GUI ou services systèmeDépannage Sophos Firewall : Services et journaux
SSH ou Advanced Shell n’est pas encore correctement préparéSe connecter à Sophos Firewall via SSH
Un cas de support nécessite également l’archive /log, des données IPsec ou des journaux de débogageSauvegarder les journaux Sophos Firewall pour le support et l’analyse
Vous avez besoin d’un fichier PCAP, d’une capture longue ou de filtres CLI très précisCet article

Cette séparation permet de gagner du temps et de réduire les risques. tcpdump fournit des données de paquets puissantes, mais pas de décision de politique spécifique à Sophos. Rule ID, NAT ID, Web Policy, IPS ou inspection SSL/TLS doivent être vérifiés en parallèle dans le Log Viewer, le WebAdmin Packet Capture ou dans les fichiers journaux appropriés.

Prérequis

Pour ce guide, vous aurez besoin de :

  • Accès administratif au Sophos Firewall.
  • Accès SSH au pare-feu ou accès à l’Advanced Shell.
  • L’IP source, l’IP de destination, le port de destination et le protocole concerné.
  • Suffisamment d’espace libre si un fichier PCAP doit être écrit.
  • Wireshark ou un autre outil d’analyse sur le client administrateur si un fichier PCAP doit être évalué.

Comment préparer SSH en toute sécurité est expliqué dans Se connecter à Sophos Firewall via SSH. Pour les bases générales de la CLI, consultez également Dépannage CLI Sophos Firewall : commandes importantes.

Quand tcpdump est-il le bon choix ?

tcpdump ne doit pas être automatiquement le premier choix. Si vous voulez simplement savoir quelle règle de pare-feu, règle NAT, Web Policy ou règle d’inspection SSL/TLS a été appliquée, le Log Viewer est plus rapide et plus lisible. Si vous souhaitez voir dans le navigateur si des paquets individuels arrivent, sont transférés ou rejetés, Packet Capture dans WebAdmin suffit souvent.

tcpdump devient particulièrement utile lorsque l’un de ces points s’applique :

  • La capture doit être évaluée en tant que fichier PCAP dans Wireshark ou par le support.
  • La capture WebAdmin est trop courte, trop confuse ou le tampon est plein.
  • Le test doit durer plus longtemps pendant une fenêtre de maintenance, un appel téléphonique ou une erreur utilisateur reproductible.
  • Des filtres CLI précis sont nécessaires, par exemple pour VoIP, DNS, IPsec, plusieurs hôtes ou plages de ports.
  • Le trafic pertinent doit être comparé sur any puis sur une interface spécifique.

Il est important de comprendre que tcpdump montre les paquets, mais pas de décision de Rule ID, NAT ID ou Web Policy spécifique à Sophos. Ces informations doivent être vérifiées en parallèle via le Log Viewer, le WebAdmin Packet Capture ou les fichiers journaux appropriés.

Advanced Shell ou Device Console ?

tcpdump est exécuté dans l’Advanced Shell. Après la connexion SSH, n’ouvrez pas la console Device Console normale pour les commandes de pare-feu, mais Device Management > Advanced Shell.

Cette distinction est importante :

ZoneConvient pour tcpdump ?Usage typique
Device ConsoleNonCommandes CLI spécifiques à Sophos, par exemple priorité de routage ou options système
Advanced ShellOuiOutils proches de Linux comme tcpdump, ps, df, grep, scp et accès aux fichiers

Si vous n’êtes pas sûr de la console dans laquelle vous vous trouvez, consultez Dépannage Sophos Firewall : Services et journaux.

Préparer la capture

Délimiter avant de commencer

Avant une capture, notez les paramètres d’analyse :

ChampExemple
IP source172.16.10.25
IP de destination198.51.100.20
ProtocoleTCP
Port de destination443
Interface attendueInterface LAN, WAN ou VPN
Moment du testheure précise avec fuseau horaire
Résultat attenduConnexion autorisée, bloquée, DNAT, SNAT, VPN ou rejet

Plus le filtre est précis, meilleur est le résultat. Une capture sans filtre est généralement utile uniquement sur des pare-feux très calmes.

Le test doit être reproductible. Si plusieurs personnes modifient les paramètres en même temps ou si plusieurs clients testent, la capture devient difficile à interpréter. Il est préférable d’avoir un seul client de test, un cadre temporel restreint et une question claire : le paquet arrive-t-il ? Sort-il ? La réponse revient-elle ?

Pour les tests de règles, consultez également Tester une règle Sophos Firewall avec Log Viewer et Packet Capture. Si l’accent est mis sur Drop, Violation, Rule ID ou NAT ID, Analyser les paquets rejetés par Sophos Firewall est l’article de suivi approprié.

Exécuter tcpdump

Exécuter tcpdump en direct

Pour un premier contrôle en direct, un filtre d’hôte suffit souvent :

tcpdump -i any -nn host 198.51.100.20

Les paramètres :

ParamètreSignification
-i anycapturer sur toutes les interfaces
-nnne pas effectuer de résolution de noms DNS ou de ports
host 198.51.100.20afficher uniquement les paquets de ou vers cette IP

Pour un test Web, un filtre de port supplémentaire est utile :

tcpdump -i any -nn 'host 198.51.100.20 and port 443'

Les expressions de filtre avec and, or ou not doivent être placées entre guillemets simples. Cela permet de garder l’expression intacte et de ne pas la faire décomposer par le shell.

Exemples de filtres fréquents

ObjectifCommande
Hôte spécifiquetcpdump -i any -nn 'host 198.51.100.20'
IP source spécifiquetcpdump -i any -nn 'src host 172.16.10.25'
IP de destination spécifiquetcpdump -i any -nn 'dst host 198.51.100.20'
Réseau spécifiquetcpdump -i any -nn 'net 172.16.10.0/24'
Port spécifiquetcpdump -i any -nn 'port 443'
Hôte et porttcpdump -i any -nn 'host 198.51.100.20 and port 443'
ICMP / Pingtcpdump -i any -nn 'proto ICMP'
DNStcpdump -i any -nn 'port 53'
Tous les ports sauf SSHtcpdump -i any -nn 'host 198.51.100.20 and port not 22'

Pour les problèmes de VPN, VLAN ou de routage, il peut être utile de ne pas se limiter à any, mais de se concentrer sur une interface spécifique. Les noms d’interface doivent correspondre au pare-feu concerné.

Limiter la capture

Une capture doit être limitée pour ne pas durer inutilement longtemps.

Avec -c, tcpdump s’arrête après un nombre fixe de paquets :

tcpdump -i any -nn -c 100 'host 198.51.100.20 and port 443'

Pour des tests courts, c’est souvent plus propre qu’un processus en arrière-plan. Vous démarrez la capture, reproduisez le problème et obtenez automatiquement la sortie par la suite.

Écrire un fichier PCAP

Si la capture doit être analysée plus tard dans Wireshark ou par le support, écrivez un fichier PCAP dans /tmp.

tcpdump -i any -nn -s 0 -w /tmp/sophos-capture.pcap 'host 198.51.100.20 and port 443'

Paramètres importants :

ParamètreSignification
-s 0capturer des paquets complets
-w /tmp/sophos-capture.pcapécrire la sortie dans un fichier PCAP
-nndésactiver la résolution de noms

-s 0 est utile si une capture complète est nécessaire. En même temps, cela augmente le risque pour la protection des données, car plus de contenu de paquets est capturé. Pour des questions de flux ou d’en-tête uniquement, une capture en direct sans fichier PCAP ou une capture courte avec un filtrage précis suffit souvent.

Avant les captures plus importantes, vérifiez l’espace libre :

df -h /tmp
df -h /var

Si le problème doit être reproduit brièvement, vous pouvez également ajouter -c :

tcpdump -i any -nn -s 0 -c 500 -w /tmp/sophos-capture.pcap 'host 198.51.100.20 and port 443'

Après le démarrage, reproduisez immédiatement le test et ne laissez pas la capture se poursuivre inutilement. Un PCAP contenant cinq minutes de trop est non seulement plus grand, mais contient souvent aussi plus d’informations sensibles.

Démarrer et arrêter un processus en arrière-plan

Parfois, une capture doit être en cours pendant qu’un autre test est effectué. tcpdump peut alors être démarré en arrière-plan.

tcpdump -i any -nn -s 0 -w /tmp/voip-test.pcap 'host 192.0.2.50 and portrange 5060-5090' &

Afficher les tâches en cours :

jobs

Arrêter une tâche :

kill %1

Si plusieurs processus tcpdump sont en cours ou si la tâche n’est plus visible dans le shell actuel, vérifiez d’abord les processus :

ps | grep tcpdump

Ensuite, terminez le processus approprié. killall tcpdump ne doit être utilisé que si vous êtes sûr qu’aucune autre capture importante n’est en cours.

Après l’arrêt, vérifiez si le fichier PCAP a été écrit et a une taille plausible :

ls -lh /tmp/*.pcap

Exemple : Analyser VoIP ou 3CX

Pour les problèmes de VoIP, la signalisation SIP et le flux média RTP doivent souvent être considérés séparément. Une capture unique sur port 5060 ne montre qu’une partie du problème.

Pour un premier test 3CX, vous pouvez capturer l’hôte PBX :

tcpdump -i any -nn -s 0 -w /tmp/3cx-test.pcap 'host 192.0.2.50'

Si le trafic est trop large, vous pouvez vous concentrer plus précisément sur SIP :

tcpdump -i any -nn -s 0 -w /tmp/3cx-sip.pcap 'host 192.0.2.50 and portrange 5060-5090'

Pour les problèmes audio, le port RTP réellement utilisé doit également être vérifié. Cela dépend du système téléphonique et de sa configuration.

Pour les sujets VoIP sur Sophos Firewall, consultez également Optimiser les paramètres VoIP de Sophos Firewall.

Analyse et nettoyage

Télécharger et nettoyer le fichier PCAP

Un fichier PCAP peut être copié sur un serveur interne via scp :

scp /tmp/sophos-capture.pcap adminuser@192.0.2.10:/tmp/

Selon l’environnement, une autre méthode de transfert sécurisée peut être utilisée. Évitez FTP avec des identifiants enregistrés.

Après un transfert réussi, le fichier doit être supprimé du pare-feu :

rm /tmp/sophos-capture.pcap

Pour des archives de journaux complètes et des cas de support, Sauvegarder les journaux Sophos Firewall pour le support et l’analyse est le guide approprié.

Analyser correctement tcpdump

Lors de l’analyse, il ne s’agit pas seulement de savoir si des paquets sont visibles. Ce qui manque est crucial.

ObservationSignification typique
Aucun paquet visible du clientLe problème se situe avant le pare-feu : vérifier le client, VLAN, passerelle, commutateur ou routage vers le pare-feu
Les paquets entrent, mais ne sortent pasVérifiez la règle de pare-feu, NAT, routage, fonctionnalité de sécurité ou politique
Les paquets sortent, mais aucune réponse ne revientVérifiez le système cible, la route de retour, le pare-feu opposé, NAT ou le fournisseur
Seulement SYN, pas de SYN-ACKLe cible ou le chemin de retour ne répond pas
Requête ICMP visible, réponse manquanteVérifiez la route de retour, le pare-feu cible ou le correspondant
Requête DNS visible, pas de réponseVérifiez le serveur DNS, la route, la règle ou l’amont

tcpdump montre le flux de paquets. La décision de politique elle-même est vérifiée en parallèle dans le Log Viewer. Pour les questions de pare-feu et de NAT, la combinaison du Log Viewer, du Packet Capture et de tcpdump est souvent la plus rapide.

Pour les erreurs NAT, il est important de comprendre que NAT ne fait que traduire le trafic, mais ne l’autorise pas. La base appropriée est Comprendre NAT sur Sophos Firewall : SNAT, DNAT, MASQ, PAT. Pour les tunnels IPsec, consultez également Dépannage VPN IPsec Sophos Firewall et les journaux VPN appropriés.

Erreurs fréquentes et checklist

Erreurs typiques

ErreurImpactMeilleure approche
Capture sans filtretrop de données, difficile à analysertoujours délimiter avec hôte, réseau, port ou protocole
Capture non arrêtéel’espace disque et les performances peuvent en souffrirutiliser -c ou arrêter proprement le processus en arrière-plan
Seule la direction aller vérifiéele problème de retour est ignoréconsidérer les deux directions
Mauvaise interface choisieles paquets pertinents manquentd’abord any, puis cibler l’interface
PCAP partagé sans chiffrementdes données sensibles peuvent être exposéestransfert sécurisé et groupe de destinataires minimal
Fichier laissé après un cas de supportconsommation d’espace inutile et risque de donnéessupprimer le PCAP après transfert

Liste de contrôle

  • IP source, IP de destination, port et protocole connus.
  • Accès SSH au pare-feu configuré en toute sécurité.
  • Décidé à l’avance si le Log Viewer ou le WebAdmin Packet Capture suffirait.
  • Filtre choisi aussi précisément que possible.
  • Capture limitée avec -c ou processus d’arrêt clair.
  • Fichier PCAP écrit uniquement si nécessaire.
  • Problème reproduit spécifiquement pendant la capture.
  • Heure du test documentée.
  • Log Viewer vérifié en parallèle.
  • PCAP transféré en toute sécurité.
  • Fichier PCAP temporaire supprimé du pare-feu.

FAQ

Qu'est-ce qui est mieux : WebAdmin Packet Capture ou tcpdump ?

Pour des analyses rapides directement dans le navigateur, le WebAdmin Packet Capture est idéal. Pour des captures plus longues, des fichiers PCAP, des filtres plus précis ou des cas de support, tcpdump est plus approprié.

Faut-il démarrer tcpdump sur any ou sur une interface ?

Pour une première délimitation, any est pratique car vous ne manquez pas de paquets à cause d’un mauvais filtre d’interface. Une fois que l’interface pertinente est claire, vous devriez filtrer plus précisément.

Pourquoi devrait-on utiliser -nn ?

-nn empêche la résolution des noms DNS et des ports. Cela permet à la sortie de démarrer plus rapidement et d’être moins faussée par la résolution des noms.

Faut-il toujours utiliser -s 0 pour les fichiers PCAP ?

Non. -s 0 capture des paquets complets et est utile pour des analyses détaillées. Pour de nombreux premiers contrôles, les informations d’en-tête ou une capture en direct courte suffisent. Plus le contenu est capturé, plus la protection des données et la transmission sécurisée sont importantes.

Où les fichiers PCAP doivent-ils être enregistrés ?

Pour des captures temporaires, /tmp est courant. Le fichier doit être supprimé après le transfert.