← retour aux snippets

tshark: capture ciblée HTTP/SNI et HTTP/2

Capturer et filtrer le trafic par port, SNI TLS et exporter en pcapng et CSV.

bash network #tshark#pcap#tls

objectif

Observer rapidement du trafic HTTP/HTTPS, filtrer par SNI TLS, exporter des métriques sans UI graphique.

code minimal

# capture en pcapng sur port 443, rotation de fichiers, sans résolution DNS
sudo tshark -i eth0 -f 'tcp port 443' -n -b filesize:50 -b files:10 -w tls.pcapng

utilisation

# lister les interfaces disponibles
tshark -D

# filtrer par nom de serveur TLS (SNI) pendant la capture
sudo tshark -i eth0 -Y 'tls.handshake.extensions_server_name contains "data.pm"' -w tls-data-pm.pcapng

# extraire un CSV de requêtes HTTP/2 (méthode, autorité, chemin)
tshark -r tls.pcapng -Y 'http2' -T fields -e http2.headers.method -e http2.headers.authority -e http2.headers.path > http2.csv

# afficher résumé des connexions TCP vers 443
tshark -r tls.pcapng -q -z conv,tcp,443

variante(s) utile(s)

# capture sur plusieurs ports web
sudo tshark -i any -f 'tcp port 80 or tcp port 443' -w web.pcapng

# filtrer par adresse IP source
sudo tshark -i eth0 -f 'host 203.0.113.42' -w host-203.pcapng

notes

  • tshark nécessite des privilèges capture; préférez des capacités (setcap cap_net_raw,cap_net_admin+eip /usr/bin/dumpcap).
  • évitez de capturer en clair des données sensibles; gérez les fichiers pcap avec soin.
  • utilisez des filtres BPF (-f) pour réduire le volume et l’impact système.