GNU/Linux >> Znalost Linux >  >> Linux

Jaký je nejsnazší způsob, jak čichat data o provozu TCP v Linuxu?

Aktualizace:

Jak poukázal Michal v komentářích:Od tcpflow verze 1.3 se pro zadání jména skeneru používá volba -e. Vypíše se tedy chyba „Neplatný název skeneru '8983'“. Správný příkaz je

sudo tcpflow -i any -C -J port 1234

(také -J byl změněn na -g v nejnovější verzi)

Děkuji yves, že mě upozornil na "tcpflow". Zde je příkazový řádek:

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

To dělá vše, co chci

  • zobrazuje data bajt po bajtu tak, jak jsou k dispozici
  • nezobrazuje žádná další metadata
  • naslouchá na všech rozhraních (takže zachycuje data přicházející ze zařízení i zvenčí)

"-C " říká, že se má vypsat do konzole místo do souboru. "-e " umožňuje barvy, takže klient->server a server->klient jsou vizuálně odlišné.

Nainstaloval jsem tcpflow jednoduchým postupem

sudo apt-get install tcpflow

socat je nástroj, který požadujete. Může fungovat jako proxy:

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

pak vaše aplikace musí připojit port 4444 namísto přímého připojení k 1234

Volba -v znamená, že socat vytiskne vše, co obdrží při standardní chybě (stderr).

Aktualizace:

Pokud socat není na vašem počítači k dispozici, můžete jej tímto způsobem emulovat pomocí netcat:

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

upozornění:tato možnost je jednosměrná. druhá instance netcat vytiskne jakoukoli odpověď z vašeho serveru na standardní výstup. Stále můžete udělat:

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

Zkuste Wireshark. Je to vynikající analyzátor protokolů určený pro Linux i Windows.


Linux
  1. RDP Linux to Windows:Nejjednodušší cesta 2019!

  2. Jaký je správný způsob instalace jdk na linux

  3. Jaký je nejjednodušší způsob, jak zjistit stisknutí kláves v pythonu 3 na linuxovém počítači?

  1. Co dělá Linux udržitelným OS

  2. Jaký je správný způsob zobrazení rychlosti procesoru v systému Linux?

  3. Jaký je správný způsob otevření řady portů v iptables

  1. Čím je linuxová komunita výjimečná?

  2. Linux vs. Unix:Jaký je rozdíl?

  3. Jaká je aktuální úroveň běhu systému Linux?