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
anypeut 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 :
| Situation | Meilleur point de départ |
|---|---|
| Vous voulez rapidement voir dans WebAdmin si des paquets arrivent, sont transférés ou rejetés | Utiliser Sophos Firewall Packet Capture dans WebAdmin |
| Une règle de pare-feu doit être validée avec Log Viewer, Policy tester et Packet Capture | Tester 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 rejet | Analyser les paquets rejetés par Sophos Firewall |
| Il n’est pas clair à quel fichier journal local appartient VPN, Web, IPS, GUI ou services système | Dé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ébogage | Sauvegarder 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écis | Cet 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
anypuis 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 :
| Zone | Convient pour tcpdump ? | Usage typique |
|---|---|---|
| Device Console | Non | Commandes CLI spécifiques à Sophos, par exemple priorité de routage ou options système |
| Advanced Shell | Oui | Outils 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 :
| Champ | Exemple |
|---|---|
| IP source | 172.16.10.25 |
| IP de destination | 198.51.100.20 |
| Protocole | TCP |
| Port de destination | 443 |
| Interface attendue | Interface LAN, WAN ou VPN |
| Moment du test | heure précise avec fuseau horaire |
| Résultat attendu | Connexion 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ètre | Signification |
|---|---|
-i any | capturer sur toutes les interfaces |
-nn | ne pas effectuer de résolution de noms DNS ou de ports |
host 198.51.100.20 | afficher 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
| Objectif | Commande |
|---|---|
| Hôte spécifique | tcpdump -i any -nn 'host 198.51.100.20' |
| IP source spécifique | tcpdump -i any -nn 'src host 172.16.10.25' |
| IP de destination spécifique | tcpdump -i any -nn 'dst host 198.51.100.20' |
| Réseau spécifique | tcpdump -i any -nn 'net 172.16.10.0/24' |
| Port spécifique | tcpdump -i any -nn 'port 443' |
| Hôte et port | tcpdump -i any -nn 'host 198.51.100.20 and port 443' |
| ICMP / Ping | tcpdump -i any -nn 'proto ICMP' |
| DNS | tcpdump -i any -nn 'port 53' |
| Tous les ports sauf SSH | tcpdump -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ètre | Signification |
|---|---|
-s 0 | capturer des paquets complets |
-w /tmp/sophos-capture.pcap | écrire la sortie dans un fichier PCAP |
-nn | dé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.
| Observation | Signification typique |
|---|---|
| Aucun paquet visible du client | Le 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 pas | Vérifiez la règle de pare-feu, NAT, routage, fonctionnalité de sécurité ou politique |
| Les paquets sortent, mais aucune réponse ne revient | Vérifiez le système cible, la route de retour, le pare-feu opposé, NAT ou le fournisseur |
| Seulement SYN, pas de SYN-ACK | Le cible ou le chemin de retour ne répond pas |
| Requête ICMP visible, réponse manquante | Vérifiez la route de retour, le pare-feu cible ou le correspondant |
| Requête DNS visible, pas de réponse | Vé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
| Erreur | Impact | Meilleure approche |
|---|---|---|
| Capture sans filtre | trop de données, difficile à analyser | toujours délimiter avec hôte, réseau, port ou protocole |
| Capture non arrêtée | l’espace disque et les performances peuvent en souffrir | utiliser -c ou arrêter proprement le processus en arrière-plan |
| Seule la direction aller vérifiée | le problème de retour est ignoré | considérer les deux directions |
| Mauvaise interface choisie | les paquets pertinents manquent | d’abord any, puis cibler l’interface |
| PCAP partagé sans chiffrement | des données sensibles peuvent être exposées | transfert sécurisé et groupe de destinataires minimal |
| Fichier laissé après un cas de support | consommation d’espace inutile et risque de données | supprimer 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
-cou 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 ?
tcpdump est plus approprié.Faut-il démarrer tcpdump sur any ou sur une interface ?
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 ?
-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 ?
/tmp est courant. Le fichier doit être supprimé après le transfert.