Kako koristiti tcpdump za nadzor naše mreže

Sadržaj

U ovom vodiču ćemo vidjeti kako raditi s tcpdump. To je alat otvorenog izvora za naredbeni redak, navikao je nadzirati mrežu, možemo to shvatiti kao analizator paketa koji prolaze kroz mrežu na kojoj izvršavate program. Koristi se u Unix okruženjima, iako postoji varijanta za Windows pod nazivom WinDump. Možda će vas zanimati vodič o EtherApeu, koji je alat za grafički prikaz statusa naše mreže.

U vodiču ćemo raditi s Linuxa, točnije u Ubuntu 16.04, da bi alat radio, moramo ga pokrenuti s visokim ovlastima, osim određenih opcija, koje će biti potrebne.

Možemo koristiti tcpdump za razne zadatke, poput otklanjanja pogrešaka u našim mrežnim aplikacijama, čitanja podataka koji se šalju između korisnika preko mreže u kojoj se nalazimo itd. Njegovu sintaksu stavit ćemo ispod:

 tcpdump [-aAbdDefhHIJKlLnNOpqRStuUvxX #] [-B veličina] [-c broj] [-C veličina datoteke] [-E nešto: tajno] [-F datoteka] [-G sekundi] [-i sučelje] [-j tstamptype] [- M secret] [--number] [-Q in | out | inout] [-r datoteka] [-s snaplen] [--time-stamp-preciznost preciznost] [--immediate-mode] [-T tip] [ --verzija] [-V datoteka] [-w datoteka] [-W broj datoteka] [-y datalinktype] [-z naredba] [-Z korisnik] [izraz]
Ovaj alat ima veliki broj parametara koje možemo koristiti, ovdje ćemo vidjeti neke.

Neki tcpdump parametri

  • -DO: Ispišite pakete u ASCII kodu.
  • -x: Ispišite pakete u heksadecimalnom obliku.
  • -D: Prikazuje dostupna sučelja.
  • -c broj: Zatvorit će program kada se uhvati navedeni broj paketa.
  • -i sučelje: Program sluša na navedenom sučelju.
  • -Ja: Prebaci sučelje u način rada monitora.
  • -str: Ne stavlja sučelje u promiskuitetni način rada.
  • -f datoteku: Izlaz je pohranjen u datoteci koju označimo.
  • -h: Prikazuje pomoć za njegovu upotrebu.

Ako želimo vidjeti sve dostupne parametre, u Linuxu koristimo:

 čovjek tcpdump
Korištenje ove naredbe potpunije je od pomoći koju nudi parametar -h ili --Pomozite, što bi nam samo pokazalo sljedeće:

Vidjet ćemo 10 primjera za početak rada na ovom moćnom alatu.

BilješkaU gotovo svim primjerima vidjet ćete da se sudo koristi prije tcpdumpa, kao što je već rečeno, potrebno ga je pokrenuti s visokim privilegijama, ako koristite terminal kao root, onda nije potrebno ništa stavljati ispred tcpdump. Ako želite zaustaviti snimanje, možete kombinirati tipke:

CTRL + C

Primjer 1
Najjednostavniji primjer korištenja parametra -DO. Za to izvršavamo:

 tcpdump -A

Pogledajmo primjer s nešto više sadržaja.

Primjer 2
Sada ćemo filtrirati prema hostu i dodati opširni način rada sa parametrom -v:

 sudo tcpdump host 192.168.66.130 -v
Ispod je slika pomoću gornje naredbe:

Za sliku sam napravio ping s drugog stroja, tako da možemo vidjeti ICMP. Prijeđimo na treći primjer.

Primjer 3
U ovom primjeru ćemo pogledati pakete s istog domaćina, samo ovaj put pakete koji imaju veze s priključkom 80:

 sudo tcpdump host 192.168.66.130 i port 80 -v
Ako pogledamo snimanje, vidjet ćemo nešto slično sljedećem:

Možete vidjeti kako je s ovim alatom jednostavno rukovati, idemo dalje.

Primjer 4
Koristit ćemo primjer 3 i izmijenit ćemo ga, želimo filtrirati pakete s ishodištem 192.168.66.130 koji idu na port 80:

 sudo tcpdump src host 192.168.66.130 i dst port 80 -v
Vidimo da smo upotrijebili kondicional i, tako da su dva uvjeta zadovoljena, možemo koristiti i, ili ako želimo da je ispunjen samo jedan od njih. Ako pogledamo snimke zaslona, ​​vidimo POST zahtjev.

Prelazimo na peti primjer.

Primjer 5
Hvatat ćemo pakete koji označavaju sučelje:

 sudo tcpdump -i ens33
BilješkaVaše sučelje je vjerojatno eth0, možete ga vidjeti pomoću naredbe ifconfig, ali i s -D parametrom tcpdump to će nam raditi, vidjet ćemo to u sljedećem primjeru.

Ispod možete vidjeti sliku snimanja.

Idemo na sljedeći.

Primjer 6
U ovom primjeru, jedino što ćemo učiniti je prikazati dostupna sučelja, za to izvršavamo:

 tcpdump -D
U ovom slučaju nije potrebno biti root.

Nastavimo.

Primjer 7
Želimo snimiti 3 paketa koji su predodređeni za port 1987. i kada se to dogodi, zaustavite program:

 sudo tcpdump -c 3 dst port 1987
Na sljedećoj slici možemo vidjeti da su zarobljena samo 3 paketa:

Pogledajmo još nekoliko primjera.

Primjer 8
Kad smo zainteresirani za dobivanje svih tcp prometnih paketa koji ne idu na određeni port, na primjer port 80, izvršit ćemo sljedeće:

 sudo tcpdump nije port 80 i tcp
Izlaz je sličan, pa u ovom primjeru nije postavljeno hvatanje. Idemo na pretposljednji primjer.

Primjer 9
Snimit ćemo 2 paketa određenog sučelja i pokazat ćemo ih u heksadecimalnom formatu, za to moramo izvršiti:

 sudo tcpdump -i ens33 -x -c 2
Ispod možete vidjeti izlaz:

Pa prijeđimo na posljednji primjer vodiča.

Primjer 10
U ovom primjeru snimku ćemo spremiti u datoteku da bismo je kasnije pogledali. Hvatanje je ograničeno na 3 paketa i navedeno je sučelje, pa ćemo izvršiti:

 sudo tcpdump -w test.pcap -i ens33 -c 3
Pogledajmo snimak zaslona:

Ako želimo pročitati tu datoteku sada, moramo izvršiti:

 tcpdump -r test.pcap
To možemo vidjeti na sljedećoj slici:

Vodič o tcpdumpu došao je dovde, ima mnogo mogućnosti i mnogo opcija, pa je za naučiti dobro rukovati s ovim alatom najbolje vježbati i otkrivati ​​sve njegove značajke malo po malo. Možda ćete također biti zainteresirani za čitanje nečega o alatu netcat, pa evo veze na vodič s primjerima:

Kako koristiti netcat

Je li vam se svidio i pomogao ovaj vodič?Autor možete nagraditi pritiskom na ovaj gumb kako biste mu dali pozitivan bod

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave