Kako snimiti i analizirati pakete pomoću Tcpdumpa

Kako Snimiti I Analizirati Pakete Pomocu Tcpdumpa



Tcpdump je moćan alat za analizu mreže koji se koristi za analizu mrežnog prometa u sustavima Linux i macOS. Mrežni administratori koriste tcpdump za mrežno njuškanje, hvatanje i analiziranje TCP/IP paketa. Koristi biblioteku 'libpcap' koja pomaže u učinkovitom hvatanju mrežnog prometa. Osim toga, tcpdump pomaže u rješavanju problema s mrežom i povremenom praćenju mrežnih aktivnosti. Ovaj alat pohranjuje snimljene podatke u datoteku 'pcap'. Te se datoteke dalje analiziraju pomoću alata za analizu TCP/IP paketa kao što je Wireshark ili putem drugog alata naredbenog retka.

U ovom ćemo vodiču pokazati kako instalirati tcpdump na Linux sustav i kako uhvatiti i analizirati TCP/IP pakete koristeći tcpdump.

Kako instalirati Tcpdump

Tcpdump je unaprijed instaliran na mnogim distribucijama Linuxa. Ali ako već nije instaliran na vašem sustavu, možete instalirati tcpdump na svoj Linux sustav. Da biste instalirali tcpdump na Ubuntu 22.04 sustav, koristite sljedeću naredbu:







$ sudo apt instaliraj tcpdump

Da biste instalirali tcpdump na Fedora/CentOS, koristite sljedeću naredbu:



$ sudo dnf instalirajte tcpdump

Kako snimiti pakete pomoću naredbe Tcpdump

Za snimanje paketa s tcpdumpom, pokrenite terminal sa sudo privilegijama pomoću “Ctrl+Alt+t”. Ovaj alat uključuje različite opcije i filtre za hvatanje TCP/IP paketa. Ako želite uhvatiti sve tekuće pakete trenutnog ili zadanog mrežnog sučelja, koristite naredbu “tcpdump” bez ikakve opcije.



$ sudo tcpdump

Dana naredba hvata pakete zadanog mrežnog sučelja vašeg sustava.





Na kraju izvršenja ove naredbe, svi snimljeni i filtrirani brojevi paketa prikazuju se na terminalu.



Razumimo izlaz.

Tcpdump omogućuje analizu zaglavlja TCP/IP paketa. Prikazuje jedan redak za svaki paket, a naredba se nastavlja izvoditi dok ne pritisnete “Ctrl+C” da je zaustavite.

Svaki redak koji pruža tcpdump sadrži sljedeće detalje:

  • Unix vremenska oznaka (npr. 02:28:57.839523)
  • Protokol (IP)
  • Izvorni naziv hosta ili IP i broj porta
  • Naziv odredišnog računala ili IP i broj priključka
  • TCP zastavice (npr. zastavice [F.]) koje označavaju stanje veze s vrijednostima poput S (SYN), F (FIN),. (ACK), P (PUSH), R (RST)
  • Redni broj podataka u paketu (npr. seq 5829:6820)
  • Broj potvrde (npr. ack 1016)
  • Veličina prozora (npr. win 65535) koja predstavlja dostupne bajtove u prijamnom međuspremniku nakon čega slijede TCP opcije
  • Duljina korisnih podataka (npr. duljina 991)

Za popis svih popisa mrežnih sučelja vašeg sustava koristite naredbu “tcpdump” s opcijom “-D”.

$ sudo tcpdump -D

ili

$ tcpdump --popis-sučelja

Ova naredba ispisuje sva mrežna sučelja koja su povezana ili rade na vašem Linux sustavu.

Hvatanje paketa određenog mrežnog sučelja

Ako želite uhvatiti TCP/IP pakete koji prolaze kroz određeno sučelje, koristite oznaku “-i” s naredbom “tcpdump” i navedite naziv mrežnog sučelja.

$ sudo tcpdump -i lo

Dana naredba hvata promet na sučelju “lo”. Ako želite prikazati opširne ili detaljne informacije o paketu, koristite oznaku '-v'. Za ispis opsežnijih detalja upotrijebite oznaku “-vv” s naredbom “tcpdump”. Redovita uporaba i analiza doprinose održavanju robusnog i sigurnog mrežnog okruženja.

Slično, možete uhvatiti promet na bilo kojem sučelju pomoću sljedeće naredbe:

$ sudo tcpdump -i bilo koji

Snimite pakete koristeći određeni port

Možete uhvatiti i filtrirati pakete navođenjem naziva sučelja i broja porta. Na primjer, za snimanje mrežnih paketa koji prolaze kroz sučelje 'enp0s3' koristeći port 22, koristite sljedeću naredbu:

$ tcpdump -i enp0s3 port 22

Prethodna naredba hvata sve tekuće pakete sa sučelja “enp0s3”.

Hvatajte ograničene pakete pomoću Tcpdumpa

Možete koristiti oznaku “-c” s naredbom “tcpdump” za hvatanje određenog broja paketa. Na primjer, za snimanje četiri paketa na sučelju 'enp0s3', upotrijebite sljedeću naredbu:

$ tcpdump -i enp0s3 -c 4

Zamijenite naziv sučelja koristeći svoj sustav.

Korisne Tcpdump naredbe za snimanje mrežnog prometa

U nastavku smo naveli neke korisne 'tcpdump' naredbe koje će vam pomoći u učinkovitom hvatanju i filtriranju mrežnog prometa ili paketa:

Pomoću naredbe “tcpdump” možete uhvatiti pakete sučelja s definiranim odredišnim IP-om ili izvornim IP-om.

$ tcpdump -i {naziv-sučelja} dst {odredišni-ip}

Možete uhvatiti pakete s veličinom snimke od 65535 bajtova, što se razlikuje od zadane veličine od 262144 bajta. U starijim verzijama tcpdumpa veličina snimanja bila je ograničena na 68 ili 96 bajtova.

$ tcpdump -i enp0s3 -s 65535

Kako spremiti snimljene pakete u datoteku

Ako želite spremiti snimljene podatke u datoteku za daljnju analizu, možete to učiniti. Hvata promet na određenom sučelju i zatim ga sprema u datoteku '.pcap'. Koristite sljedeću naredbu za spremanje snimljenih podataka u datoteku:

$ tcpdump -i -s 65535 -w .pcap

Na primjer, imamo sučelje “enps03”. Spremite ove snimljene podatke u sljedeću datoteku:

$ sudo tcpdump -i enps03 -w dump.pcap

U budućnosti možete čitati ovu snimljenu datoteku koristeći Wireshark ili druge alate za analizu mreže. Dakle, ako želite koristiti Wireshark za analizu paketa, koristite argument '-w' i spremite ga u datoteku '.pcap'.

Zaključak

U ovom vodiču smo uz pomoć različitih primjera pokazali kako uhvatiti i analizirati pakete pomoću tcpdumpa. Također smo naučili kako snimljeni promet spremiti u datoteku '.pcap' koju možete pregledavati i analizirati pomoću Wiresharka i drugih alata za analizu mreže.