Ako používať tcpdump a 6 príkladov

Ako používať tcpdump a 6 príkladov

Pokúšate sa zachytiť dátové pakety, aby ste mohli analyzovať prenos vo vašej sieti? Možno ste správcom servera, ktorý narazil na problém a chce monitorovať prenášané údaje v sieti. Nech je situácia akákoľvek, nástroj tcpdump Linux je to, čo potrebujete.





V tomto článku sa budeme podrobne zaoberať príkazom tcpdump spolu s niekoľkými sprievodcami o tom, ako nainštalovať a používať tcpdump vo vašom systéme Linux.





Čo je príkaz tcpdump?

Tcpdump je výkonný nástroj na monitorovanie siete, ktorý umožňuje užívateľovi efektívne filtrovať pakety a prenos v sieti. Môžete získať podrobné informácie o TCP/IP a paketoch prenášaných vo vašej sieti. Tcpdump je nástroj príkazového riadka, čo znamená, že ho môžete spustiť na serveroch Linux bez displeja.





Správcovia systému môžu tiež integrovať pomocný program tcpdump s cron za účelom automatizácie rôznych úloh, ako je protokolovanie. Pretože je vďaka mnohým funkciám celkom univerzálny, funguje tcpdump ako riešenie problémov aj ako nástroj zabezpečenia.

Ako nainštalovať tcpdump v systéme Linux

Aj keď väčšinu času nájdete program tcpdump predinštalovaný vo vašom systéme, niektoré distribúcie Linuxu sa s balíkom nedodávajú. Preto možno budete musieť pomôcku do systému nainštalovať manuálne.



Môžete skontrolovať, či je vo vašom systéme nainštalovaný program tcpdump pomocou príkazu ktoré príkaz.

which tcpdump

Ak výstup zobrazí cestu k adresáru ( /usr/bin/tcpdump ), potom má váš systém nainštalovaný balík. Ak však nie, môžete to ľahko urobiť pomocou predvoleného správcu balíkov vo vašom systéme.





Ak chcete nainštalovať tcpdump na distribúcie založené na Debiane, ako napríklad Ubuntu:

sudo apt-get install tcpdump

Inštalácia tcpdump na CentOS je tiež jednoduchá.





sudo yum install tcpdump

O distribúciách založených na Arch:

sudo pacman -S tcpdump

Inštalácia na Fedore:

sudo dnf install tcpdump

Balík tcpdump vyžaduje libcap ako závislosť, preto si ho nainštalujte aj do svojho systému.

Príklady Tcpdump na zachytávanie sieťových paketov v systéme Linux

Teraz, keď ste úspešne nainštalovali tcpdump na svoj počítač Linux, je načase sledovať niektoré pakety. Pretože tcpdump vyžaduje na vykonávanie väčšiny operácií povolenia superužívateľa, budete musieť pridať sudo na vaše príkazy.

1. Vytvorte zoznam všetkých sieťových rozhraní

Ak chcete skontrolovať, ktoré sieťové rozhrania sú k dispozícii na zachytenie, použite -D označte príkazom tcpdump.

tcpdump -D

Absolvovanie --list-rozhrania príznak ako argument vráti rovnaký výstup.

tcpdump --list-interfaces

Výstupom bude zoznam všetkých sieťových rozhraní, ktoré sa nachádzajú vo vašom systéme.

Po získaní zoznamu sieťových rozhraní je čas monitorovať vašu sieť zachytávaním paketov vo vašom systéme. Aj keď môžete určiť, ktoré rozhranie chcete používať, akýkoľvek argumentové príkazy tcpdump na zachytenie sieťových paketov pomocou akéhokoľvek aktívneho rozhrania.

tcpdump --interface any

Systém zobrazí nasledujúci výstup.

SIM nie je k dispozícii, oprava mm 2

Súvisiace: Čo je model prepojenia otvorených systémov?

2. Výstupný formát tcpdump

Počínajúc tretím riadkom, každý riadok výstupu označuje konkrétny paket zachytený tcpdump. Takto vyzerá výstup jedného paketu.

17:00:25.369138 wlp0s20f3 Out IP localsystem.40310 > kul01s10-in-f46.1e100.net.https: Flags [P.], seq 196:568, ack 1, win 309, options [nop,nop,TS val 117964079 ecr 816509256], length 33

Majte na pamäti, že nie všetky pakety sú zachytené týmto spôsobom, ale toto je všeobecný formát, ktorým sa riadi väčšina z nich.

Výstup obsahuje nasledujúce informácie.

  1. Časová pečiatka prijatého paketu
  2. Názov rozhrania
  3. Tok paketov
  4. Názov sieťového protokolu
  5. Podrobnosti o adrese IP a porte
  6. Príznaky TCP
  7. Poradové číslo údajov v pakete
  8. Ack data
  9. Veľkosť okna
  10. Dĺžka paketu

Prvé pole ( 17: 00: 25,369138 ) zobrazuje časovú pečiatku, keď váš systém odoslal alebo prijal paket. Zaznamenaný čas sa extrahuje z miestneho času vášho systému.

ako resetovať safari na mac

Druhé a tretie pole označuje použité rozhranie a tok paketu. V úryvku vyššie wlp0s20f3 je názov bezdrôtového rozhrania a Von je tok paketov.

Štvrté pole obsahuje informácie súvisiace s názvom sieťového protokolu. Spravidla nájdete dva protokoly- IP a IP6 , kde IP označuje IPV4 a IP6 je pre IPV6.

Nasledujúce pole obsahuje adresy IP alebo názov zdrojového a cieľového systému. Za IP adresami nasleduje číslo portu.

Šieste pole vo výstupe pozostáva z vlajok TCP. Na výstup tcpdump sú použité rôzne vlajky.

Názov vlajkyHodnotaPopis
ZRAKSPripojenie sa začalo
KONIECFPripojenie ukončené
TLAČIŤPDáta sa posúvajú
RSTR.Pripojenie sa resetuje
ALAS.Potvrdenie

Výstup môže tiež obsahovať kombináciu niekoľkých vlajok TCP. Napríklad, VLAJKA [f.] znamená paket FIN-ACK.

Nasledujúce pole sa pohybuje vo výstupnom úryvku a obsahuje poradové číslo ( sekv. 196: 568 ) údajov v pakete. Prvý paket má vždy kladnú celočíselnú hodnotu a nasledujúce pakety používajú relatívne poradové číslo na zlepšenie toku údajov.

Nasledujúce pole obsahuje číslo potvrdenia ( ack 1 ) alebo jednoduché číslo Ack. Paket zachytený v zariadení odosielateľa má ako potvrdzovacie číslo 1. Na konci prijímača je číslo Ack hodnota nasledujúceho paketu.

Deviate pole vo výstupe prispôsobuje veľkosť okna ( vyhraj 309 ), čo je počet bajtov dostupných v prijímacej vyrovnávacej pamäti. Existuje niekoľko ďalších polí, ktoré nasledujú po veľkosti okna, vrátane maximálnej veľkosti segmentu (MSS).

Posledné pole ( dĺžka 33 ) obsahuje dĺžku celého paketu zachyteného tcpdump.

3. Obmedzte počet zachytených paketov

Pri prvom spustení príkazu tcpdump si môžete všimnúť, že systém pokračuje v zachytávaní sieťových paketov, kým nevyjdete signál prerušenia. Toto predvolené správanie môžete prepísať zadaním počtu paketov, ktoré chcete zachytiť, pomocou -c vlajka.

tcpdump --interface any -c 10

Spomínaný príkaz zachytí desať paketov z akéhokoľvek aktívneho sieťového rozhrania.

4. Filtrujte pakety podľa polí

Keď riešite problém, získanie veľkého bloku textového výstupu na vašom termináli to neuľahčuje. Práve tu vstupuje do hry funkcia filtrovania v tcpdump. Pakety môžete filtrovať podľa rôznych polí vrátane hostiteľa, protokolu, čísla portu a ďalších.

Ak chcete zachytiť iba pakety TCP, zadajte:

tcpdump --interface any -c 5 tcp

Podobne, ak chcete filtrovať výstup pomocou čísla portu:

tcpdump --interface any -c 5 port 50

Vyššie uvedený príkaz bude načítavať iba pakety prenášané cez určený port.

Ak chcete získať podrobnosti o pakete pre konkrétneho hostiteľa:

tcpdump --interface any -c 5 host 112.123.13.145

Ak chcete filtrovať pakety odoslané alebo prijaté konkrétnym hostiteľom, použite príkaz src alebo atď hádka s príkazom.

tcpdump --interface any -c 5 src 112.123.13.145
tcpdump --interface any -c 5 dst 112.123.13.145

Môžete tiež použiť logické operátory a a alebo spojiť dva alebo viac výrazov dohromady. Napríklad na získanie paketov, ktoré patria zdrojovej IP 112,123,13.145 a použite port 80 :

tcpdump --interface any -c 10 src 112.123.13.145 and port 80

Zložité výrazy je možné zoskupiť pomocou zátvorky nasledovne:

tcpdump --interface any -c 10 '(src 112.123.13.145 or src 234.231.23.234) and (port 45 or port 80)'

5. Prezrite si obsah paketu

Môžete použiť -TO a -X vlajky s príkazom tcpdump na analýzu obsahu sieťového paketu. The -TO vlajka znamená ASCII formát a -X označuje hexadecimálne formát.

Ak chcete zobraziť obsah ďalšieho sieťového paketu zachyteného systémom:

tcpdump --interface any -c 1 -A
tcpdump --interface any -c 1 -x

Súvisiace články: Čo je strata paketu a ako opraviť jeho príčinu?

6. Uložte údaje zachytenia do súboru

Ak chcete uložiť údaje o zachytení na referenčné účely, tcpdump je tu, aby vám pomohol. Stačí prejsť -v príznak s predvoleným príkazom na zapísanie výstupu do súboru namiesto jeho zobrazenia na obrazovke.

tcpdump --interface any -c 10 -w data.pcap

The .pcap skratka súboru znamená zachytávanie paketov údaje. Vyššie uvedený príkaz môžete vydať aj v podrobnom režime pomocou príkazu -v vlajka.

tcpdump --interface any -c 10 -w data.pcap -v

Ak si chcete prečítať a .pcap súbor pomocou tcpdump, použite súbor -r vlajka, za ktorou nasleduje cesta k súboru. The -r znamenať Čítať .

využitie disku Windows 10 na 100%
tcpdump -r data.pcap

Sieťové pakety môžete tiež filtrovať z paketových dát uložených v súbore.

tcpdump -r data.pcap port 80

Monitorovanie sieťovej prevádzky v systéme Linux

Ak vám bola zverená úloha administrácie servera Linux, potom je príkaz tcpdump skvelým nástrojom, ktorý môžete zaradiť do svojho arzenálu. Problémy súvisiace so sieťou môžete ľahko opraviť zachytením paketov prenášaných vo vašej sieti v reálnom čase.

Predtým však musí byť vaše zariadenie pripojené k internetu. Pre začiatočníkov s Linuxom môže byť dokonca aj pripojenie k sieti Wi-Fi prostredníctvom príkazového riadku trochu náročné. Ak však používate správne nástroje, je to hračka.

zdieľam zdieľam Tweet E -mail Ako sa pripojiť k sieti Wi-Fi prostredníctvom terminálu Linux pomocou Nmcli

Chcete sa pripojiť k sieti Wi-Fi prostredníctvom príkazového riadka Linuxu? Tu je to, čo potrebujete vedieť o príkaze nmcli.

Čítajte ďalej
Súvisiace témy
  • Linux
  • Zabezpečenie
  • Sieťová kriminalistika
O autorovi Deepesh Sharma(79 publikovaných článkov)

Deepesh je juniorský editor pre Linux na MUO. Píše informačné príručky pre systém Linux s cieľom poskytnúť všetkým novým záujemcom blažený zážitok. Nie ste si istí filmami, ale ak chcete hovoriť o technológiách, je to váš chlap. Vo svojom voľnom čase ho môžete nájsť pri čítaní kníh, počúvaní rôznych hudobných žánrov alebo hre na gitare.

Viac od Deepesh Sharmy

prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné elektronické knihy a exkluzívne ponuky!

Kliknutím sem sa prihlásite na odber