diff --git a/HowtoDebian/Reseau.md b/HowtoDebian/Reseau.md index 1142e76e..fc81eb5e 100644 --- a/HowtoDebian/Reseau.md +++ b/HowtoDebian/Reseau.md @@ -357,6 +357,18 @@ Il arrive qu'on veuille vérifier qu'il est possible de joindre un port TCP au t # nc -lk -p 2121 ~~~ +## Man-in-the-middle du pauvre + +Lorsqu'on souhaite consulter ce qui passe en TCP entre 2 processus ou serveurs (par exemple entre HAProxy et Apache), pour analyser par exemple les en-têtes échangés… on peut utiliser tcpdump, mais cela n'est pas toujours aisé. +Il est possible d'intercaler `socat(1)` entre les 2 processus. Il fera le passe-plat mais nous indiquera aussi (sur la sortie standard) ce qui est échangé. + +Ici on ouvre localement le port 8080 et on renvoie le flux vers le port 8080 de example.com. + +~~~ +# socat -v tcp-listen:8080,keepalive=1 tcp:example.com:8080 +~~~ + +NB : cette commande socat n'est pas optimale, la connexion coupe après le premier échange, mais elle illustre le principe. ## FAQ