Kā lietot tcpdump un 6 piemēri

Kā lietot tcpdump un 6 piemēri

Vai jūs mēģināt uztvert datu paketes, lai analizētu datplūsmu savā tīklā? Varbūt jūs esat servera administrators, kurš ir saskāries ar problēmu un vēlas uzraudzīt pārsūtītos datus tīklā. Neatkarīgi no situācijas, jums ir nepieciešama tcpdump Linux utilīta.





Šajā rakstā mēs detalizēti apspriedīsim komandu tcpdump, kā arī dažas rokasgrāmatas par tcpdump instalēšanu un izmantošanu jūsu Linux sistēmā.





Kas ir tcpdump komanda?

Tcpdump ir spēcīgs tīkla uzraudzības rīks, kas ļauj lietotājam efektīvi filtrēt paketes un trafiku tīklā. Jūs varat iegūt detalizētu informāciju, kas saistīta ar TCP/IP un jūsu tīklā pārraidītajām paketēm. Tcpdump ir komandrindas utilīta, kas nozīmē, ka varat to palaist Linux serveros bez displeja.





Sistēmas administratori var arī integrēt utilītu tcpdump ar cron lai automatizētu dažādus uzdevumus, piemēram, mežizstrādi. Tā kā daudzas funkcijas padara to diezgan universālu, tcpdump darbojas kā problēmu novēršana, kā arī kā drošības rīks.

Kā instalēt tcpdump operētājsistēmā Linux

Lai gan lielāko daļu laika tcpdump ir instalēts jūsu sistēmā, daži Linux izplatījumi netiek piegādāti kopā ar paketi. Tāpēc jums, iespējams, būs manuāli jāinstalē utilīta savā sistēmā.



Jūs varat pārbaudīt, vai tcpdump ir instalēts jūsu sistēmā, izmantojot kuras komandu.

which tcpdump

Ja izvade parāda direktorija ceļu ( /usr/bin/tcpdump ), tad jūsu sistēmā ir instalēta pakotne. Tomēr, ja nē, to var viegli izdarīt, izmantojot sistēmas noklusējuma pakotņu pārvaldnieku.





Lai instalētu tcpdump Debian izplatījumos, piemēram, Ubuntu:

sudo apt-get install tcpdump

Tcpdump instalēšana arī CentOS ir vienkārša.





sudo yum install tcpdump

Par Arch balstītiem izplatījumiem:

sudo pacman -S tcpdump

Lai instalētu Fedora:

sudo dnf install tcpdump

Ņemiet vērā, ka tcpdump pakotnei ir nepieciešams libcap kā atkarību, tāpēc pārliecinieties, ka esat to instalējis arī savā sistēmā.

Tcpdump piemēri tīkla pakešu uztveršanai Linux

Tagad, kad esat veiksmīgi instalējis tcpdump savā Linux datorā, ir pienācis laiks uzraudzīt dažas paketes. Tā kā tcpdump lielākās daļas darbību veikšanai ir nepieciešamas superlietotāja atļaujas, jums būs jāpievieno sudo pēc jūsu pavēlēm.

1. Uzskaitiet visas tīkla saskarnes

Lai pārbaudītu, kuras tīkla saskarnes ir pieejamas uzņemšanai, izmantojiet -D atzīmējiet ar komandu tcpdump.

tcpdump -D

Braucot garām -saraksta saskarnes karodziņš kā arguments atgriezīs to pašu rezultātu.

tcpdump --list-interfaces

Rezultāts būs saraksts ar visām tīkla saskarnēm, kas atrodas jūsu sistēmā.

Pēc tīkla saskarņu saraksta iegūšanas ir pienācis laiks uzraudzīt savu tīklu, uztverot paketes savā sistēmā. Lai gan jūs varat norādīt, kuru saskarni vēlaties izmantot, jebkurš arguments komandas tcpdump uztver tīkla paketes, izmantojot jebkuru aktīvu saskarni.

tcpdump --interface any

Sistēma parādīs šādu izvadi.

kā pievienot saīsnes iPhone

Saistīts: Kas ir atvērto sistēmu savienojuma modelis?

2. tcpdump izvades formāts

Sākot no trešās rindas, katra izejas rinda apzīmē konkrētu paketi, ko uztver tcpdump. Lūk, kā izskatās vienas paketes izvade.

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

Paturiet prātā, ka ne visas paketes tiek uztvertas šādā veidā, bet tas ir vispārējais formāts, kam seko lielākā daļa.

Izvade satur šādu informāciju.

  1. Saņemtās paketes laika zīmogs
  2. Interfeisa nosaukums
  3. Pakešu plūsma
  4. Tīkla protokola nosaukums
  5. IP adrese un porta informācija
  6. TCP karogi
  7. Paketē esošo datu kārtas numurs
  8. Ack dati
  9. Loga izmērs
  10. Paketes garums

Pirmais lauks ( 17: 00: 25.369138 ) parāda laika zīmogu, kad sistēma nosūtīja vai saņēma paketi. Ierakstītais laiks tiek iegūts no jūsu sistēmas vietējā laika.

skatīties mūzikas videoklipus tiešsaistē, nevis youtube

Otrais un trešais lauks apzīmē izmantoto saskarni un pakešu plūsmu. Iepriekš redzamajā fragmentā wlp0s20f3 ir bezvadu saskarnes nosaukums un Ārā ir pakešu plūsma.

Ceturtais lauks ietver informāciju, kas saistīta ar tīkla protokola nosaukumu. Parasti jūs atradīsit divus protokolus- IP un IP6 , kur IP apzīmē IPV4 un IP6 ir paredzēts IPV6.

Nākamais lauks satur IP adreses vai avota un mērķa sistēmas nosaukumu. IP adresēm seko porta numurs.

Rezultātā sestais lauks sastāv no TCP karodziņiem. Tcpdump izejā tiek izmantoti dažādi karodziņi.

Karoga nosaukumsVērtībaApraksts
SKATĪTSSavienojums sākts
BEIGASFSavienojums pabeigts
PUSHLppDati tiek nospiesti
RSTRSavienojums tiek atiestatīts
ALAS.Apstiprinājums

Izvade var saturēt arī vairāku TCP karodziņu kombināciju. Piemēram, KAROGS [f.] apzīmē FIN-ACK paketi.

Virzoties tālāk izvades fragmentā, nākamajā laukā ir kārtas numurs ( 196: 568 ) no paketē esošajiem datiem. Pirmajai paketei vienmēr ir pozitīva vesela skaitļa vērtība, un nākamās paketes izmanto relatīvo kārtas numuru, lai uzlabotu datu plūsmu.

Nākamais lauks satur apstiprinājuma numuru ( ak 1 ) vai vienkāršs Ack numurs. Pakotnei, kas uztverta sūtītāja mašīnā, ir 1 kā apstiprinājuma numurs. Uztvērēja galā Ack numurs ir nākamās paketes vērtība.

Izvades devītais lauks atbilst loga izmēram ( uzvarēt 309 ), kas ir saņemšanas buferī pieejamo baitu skaits. Ir vairāki citi lauki, kas atbilst loga izmēram, ieskaitot maksimālo segmenta lielumu (MSS).

Pēdējais lauks ( garums 33 ) satur tcpdump uztvertās kopējās paketes garumu.

3. Ierobežojiet uzņemto pakešu skaitu

Pirmo reizi palaižot komandu tcpdump, iespējams, pamanīsit, ka sistēma turpina uztvert tīkla paketes, līdz nododat pārtraukuma signālu. Jūs varat ignorēt šo noklusējuma darbību, iepriekš norādot pakešu skaitu, kuras vēlaties tvert, izmantojot -c karogs.

tcpdump --interface any -c 10

Iepriekš minētā komanda uztvers desmit paketes no jebkura aktīva tīkla interfeisa.

4. Filtrējiet paketes, pamatojoties uz laukiem

Kad novēršat problēmu, liela teksta izvades bloka saņemšana terminālī to nerada vieglāk. Šeit sāk darboties filtrēšanas funkcija tcpdump. Jūs varat filtrēt paketes atbilstoši dažādiem laukiem, ieskaitot resursdatoru, protokolu, porta numuru un daudz ko citu.

Lai uztvertu tikai TCP paketes, ierakstiet:

tcpdump --interface any -c 5 tcp

Līdzīgi, ja vēlaties filtrēt izvadi, izmantojot porta numuru:

tcpdump --interface any -c 5 port 50

Iepriekš minētā komanda izgūs tikai paketes, kas tiek pārraidītas caur norādīto portu.

Lai iegūtu informāciju par paketi konkrētam saimniekdatoram:

tcpdump --interface any -c 5 host 112.123.13.145

Ja vēlaties filtrēt paketes, kuras nosūtījis vai saņēmis konkrēts saimniekdators, izmantojiet src vai utt arguments ar komandu.

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

Varat arī izmantot loģiskos operatorus un un vai apvienot divus vai vairākus izteicienus kopā. Piemēram, lai iegūtu paketes, kas pieder avota IP 112.123.13.145 un izmantojiet ostu 80 :

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

Sarežģītas izteiksmes var grupēt kopā, izmantojot iekavas sekojoši:

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

5. Skatiet pakešu saturu

Jūs varat izmantot -TO un -x karodziņus ar komandu tcpdump, lai analizētu tīkla pakešu saturu. The -TO karogs nozīmē ASCII formātā un -x apzīmē heksadecimāls formātā.

Lai apskatītu nākamās sistēmas uztvertās tīkla paketes saturu:

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

Saistītie: Kas ir pakešu zudums un kā novērst tā cēloni?

6. Saglabājiet uztveršanas datus failā

Ja vēlaties saglabāt uztveršanas datus atsauces nolūkos, tcpdump jums palīdzēs. Vienkārši iziet -iekšā atzīmējiet ar noklusējuma komandu, lai ierakstītu izvadi failā, nevis parādītu to ekrānā.

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

The .pcap faila paplašinājums nozīmē pakešu uztveršana dati. Iepriekšminēto komandu var izdot arī detalizētā režīmā, izmantojot -v karogs.

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

Lai lasītu a .pcap failu, izmantojot tcpdump, izmantojiet -r karodziņš, kam seko faila ceļš. The -r apzīmē Lasīt .

kā piekļūt kādam tālrunim, izmantojot wifi
tcpdump -r data.pcap

Varat arī filtrēt tīkla paketes no failā saglabātajiem pakešdatiem.

tcpdump -r data.pcap port 80

Tīkla trafika uzraudzība operētājsistēmā Linux

Ja jums ir uzticēts administrēt Linux serveri, tad komanda tcpdump ir lielisks rīks, ko iekļaut savā arsenālā. Jūs varat viegli novērst ar tīklu saistītas problēmas, uztverot jūsu tīklā pārsūtītās paketes reāllaikā.

Bet pirms tam jūsu ierīcei jābūt savienotai ar internetu. Iesācējiem Linux pat savienošanās ar Wi-Fi, izmantojot komandrindu, var būt nedaudz sarežģīta. Bet, ja jūs izmantojat pareizos rīkus, tas ir vienkārši.

Kopīgot Kopīgot Čivināt E -pasts Kā izveidot savienojumu ar Wi-Fi, izmantojot Linux termināli, izmantojot Nmcli

Vai vēlaties izveidot savienojumu ar Wi-Fi tīklu, izmantojot Linux komandrindu? Lūk, kas jums jāzina par komandu nmcli.

Lasīt Tālāk
Saistītās tēmas
  • Linux
  • Drošība
  • Tīkla kriminālistika
Par autoru Deepesh Sharma(79 raksti publicēti)

Deepesh ir MUO Linux jaunākais redaktors. Viņš raksta informatīvus ceļvežus par Linux, lai sniegtu svētlaimīgu pieredzi visiem jaunpienācējiem. Neesat pārliecināts par filmām, bet, ja vēlaties runāt par tehnoloģijām, viņš ir jūsu puisis. Brīvajā laikā jūs varat atrast viņu lasot grāmatas, klausoties dažādus mūzikas žanrus vai spēlējot ģitāru.

Vairāk no Deepesh Sharma

Abonējiet mūsu biļetenu

Pievienojieties mūsu informatīvajam izdevumam, lai iegūtu tehniskus padomus, pārskatus, bezmaksas e -grāmatas un ekskluzīvus piedāvājumus!

Noklikšķiniet šeit, lai abonētu