--- title: Howto Tcpdump categories: sysadmin network ... Tcpdump est un outil permettant d'analyser en détail le trafic visible sur une interface réseau. Il est disponible sur les distributions GNU/Linux et systèmes d'exploitation FreeBSD, NetBSD, OpenBSD, Mac OS X et dépend de la bibliothèque libpcap. ## Installation Sous Debian : ~~~ # apt install tcpdump ~~~ Sous OpenBSD, tcpdump fait partie du système de base. ## Utilisation de base Écouter tout le trafic d'une interface : ~~~ # tcpdump -i ~~~ Écouter le trafic d'une interface pour un port particulier : ~~~ # tcpdump -i port XXXX ~~~ Écouter le trafic d'une interface pour un intervalle de ports particuliers : ~~~ # tcpdump -i portrange XXXX-XXXX ~~~ Écouter le trafic d'une interface pour un hôte particulier : ~~~ # tcpdump -i host 192.0.2.1 ~~~ Écouter le trafic d'une interface pour un réseau particulier : ~~~ # tcpdump -i net 192.0.2.0/24 ~~~ Écouter le trafic d'une interface pour un hôte et un port particulier : ~~~ # tcpdump -i host 192.0.2.1 and port XXXX ~~~ Écouter le trafic UDP d'une interface pour un port particulier : ~~~ # tcpdump -i udp port XXXX ~~~ ## Utilisation avancée Écouter le trafic HTTP sur une interface et afficher les headers : ~~~ # tcpdump -A tcp port 80 or port 443 | egrep --line-buffered '^........(GET |HTTP\/|POST |HEAD )|^[A-Za-z0-9-]+: ' | sed -r 's/^........(GET |HTTP\/|POST |HEAD )/\n\n\1/g' ~~~ Analyser les logs PF (l'attribut « log » doit être présent sur les règles) : ~~~ # tcpdump -n -ttt -r /var/log/pflog ~~~