GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was ist der einfachste Weg, um TCP-Verkehrsdaten unter Linux zu schnüffeln?

Aktualisierung:

Wie Michal in den Kommentaren darauf hingewiesen hat:Ab Version 1.3 von tcpflow wird die Option -e zur Angabe des Scannernamens verwendet. Daher wird der Fehler "Ungültiger Scannername '8983'" gedruckt. Der richtige Befehl ist

sudo tcpflow -i any -C -J port 1234

(auch -J wurde in -g geändert in der neuesten Version)

Danke an Yves für den Hinweis auf "tcpflow". Hier ist die Befehlszeile:

tcpflow -i any -C -e port 1234  # as root, or with sudo

Das macht alles, was ich will

  • zeigt die Daten Byte für Byte an, wie sie eingehen
  • zeigt keine anderen Metadaten an
  • hört auf allen Schnittstellen zu (also erfasst es Daten, die von innerhalb und außerhalb der Maschine kommen)

Die Datei „-C " teilt ihm mit, dass es statt in eine Datei auf die Konsole ausgegeben werden soll. Die Datei "-e " aktiviert Farben, sodass Client->Server und Server->Client visuell voneinander getrennt sind.

Ich habe tcpflow einfach so installiert

sudo apt-get install tcpflow

socat ist das Tool, nach dem Sie fragen. Es kann als Proxy fungieren:

$socat -v TCP-LISTEN:4444 TCP:localhost:1234
hello

dann muss Ihre Anwendung Port 4444 statt direkt mit 1234 verbinden

-v Option gibt socat alles aus, was es auf dem Standardfehler (stderr) empfängt.

Aktualisieren:

Wenn socat auf Ihrem Rechner nicht verfügbar ist, können Sie es trotzdem mit netcat emulieren:

$netcat -l -p 4444 | tee output_file | netcat localhost 1234

Vorbehalte:Diese Option ist unidirektional. die zweite netcat-Instanz gibt jede Antwort von Ihrem Server auf die Standardausgabe aus. Sie können dann immer noch Folgendes tun:

$mkfifo my_fifo
$netcat -l -p 4444 < my_fifo | tee output_file | netcat localhost 1234 > my_fifo

Versuchen Sie es mit Wireshark. Es ist ein ausgezeichneter Protokollanalysator für Linux und Windows.


Linux
  1. Was Linux zum nachhaltigen Betriebssystem macht

  2. Was ist der aktuelle Runlevel des Linux-Systems?

  3. Was ist der richtige Weg, um jdk unter Linux zu installieren?

  4. Was ist der einfachste Weg, um Tastendrücke in Python 3 auf einem Linux-Rechner zu erkennen?

  5. Was ist der einfachste Weg, ein virtuelles Paket in Debian zu erstellen?

Was ist der Linux-Überwachungsbefehl + Beispiele

So bearbeiten Sie PDF-Dateien unter Linux auf die einfachste Art und Weise

Was ist die Shell unter Linux?

Was ist der Kill-Befehl in Linux?

Was ist der einfachste Weg, um Speicherplatz auf einer Festplatte freizugeben?

Was ist der einfachste Weg, Daten von stdout als Diagramm zu visualisieren?