Paano Gumamit ng tcpdump at 6 na Mga Halimbawa

Paano Gumamit ng tcpdump at 6 na Mga Halimbawa

Sinusubukan mo bang makakuha ng mga packet ng data upang masuri ang trapiko sa iyong network? Marahil ikaw ay isang administrator ng server na nabunggo sa isang isyu at nais na subaybayan ang naihatid na data sa network. Anuman ang sitwasyon maging, ang tcpdump Linux utility ang kailangan mo.





Sa artikulong ito, tatalakayin namin nang detalyado ang utos ng tcpdump, kasama ang ilang mga gabay sa kung paano i-install at gamitin ang tcpdump sa iyong Linux system.





Ano ang tcpdump Command?

Tcpdump ay isang malakas na tool sa pagmamanman ng network na nagbibigay-daan sa isang gumagamit na mag-filter ng mga packet at trapiko sa isang network nang mahusay. Maaari kang makakuha ng detalyadong impormasyon na nauugnay sa TCP / IP at ang mga packet na nailipat sa iyong network. Ang Tcpdump ay isang utility na linya ng utos, na nangangahulugang maaari mong patakbuhin ito sa mga server ng Linux nang walang display.





Maaari ring isama ng mga administrator ng system ang tcpdump utility sa cron upang ma-automate ang iba't ibang mga gawain tulad ng pag-log. Dahil ang maraming mga tampok na gawin itong lubos na maraming nalalaman, gumagana ang tcpdump bilang isang pag-troubleshoot pati na rin isang tool sa seguridad.

Paano Mag-install ng tcpdump sa Linux

Habang ang karamihan sa oras ay makikita mo ang naka-install na tcpdump sa iyong system, ang ilang mga pamamahagi ng Linux ay hindi ipinadala kasama ang package. Samakatuwid, maaaring kailangan mong manu-manong mai-install ang utility sa iyong system.



Maaari mong suriin kung naka-install ang tcpdump sa iyong system sa pamamagitan ng paggamit ng alin utos

which tcpdump

Kung ang output ay nagpapakita ng isang path ng direktoryo ( / usr / bin / tcpdump ), pagkatapos ang iyong system ay naka-install ang package. Gayunpaman kung hindi, madali mo itong magagawa gamit ang default package manager sa iyong system.





Upang mai-install ang tcpdump sa mga pamamahagi na nakabatay sa Debian tulad ng Ubuntu:

sudo apt-get install tcpdump

Madali din ang pag-install ng tcpdump sa CentOS.





sudo yum install tcpdump

Sa mga pamamahagi na nakabatay sa Arch:

sudo pacman -S tcpdump

Upang mai-install sa Fedora:

sudo dnf install tcpdump

Tandaan na kinakailangan ng tcpdump package libcap bilang isang dependency, kaya tiyaking mai-install mo din ito sa iyong system.

Mga Halimbawa ng Tcpdump upang Makuha ang Mga Network Packet sa Linux

Ngayon na matagumpay mong na-install ang tcpdump sa iyong Linux machine, oras na upang subaybayan ang ilang mga packet. Dahil ang tcpdump ay nangangailangan ng mga pahintulot ng superuser upang maipatupad ang karamihan sa mga pagpapatakbo, kakailanganin mong idagdag sudo sa iyong mga utos.

1. Ilista ang Lahat ng Mga Network Interface

Upang suriin kung aling mga interface ng network ang magagamit upang makuha, gamitin ang -D watawat kasama ang utos ng tcpdump.

tcpdump -D

Pagpasa sa --list-interface flag bilang isang argument ay ibabalik ang parehong output.

tcpdump --list-interfaces

Ang output ay magiging isang listahan ng lahat ng mga interface ng network na naroroon sa iyong system.

Matapos makuha ang listahan ng mga interface ng network, oras na upang subaybayan ang iyong network sa pamamagitan ng pagkuha ng mga packet sa iyong system. Kahit na maaari mong tukuyin kung aling interface ang nais mong gamitin, ang kahit ano utos ng argumento tcpdump upang makuha ang mga packet ng network gamit ang anumang aktibong interface.

tcpdump --interface any

Ipapakita ng system ang sumusunod na output.

iphone 12 pro max vs iphone 12

Kaugnay: Ano ang Modelong Open Systems Interconnection?

2. Ang Format ng Output ng tcpdump

Simula mula sa pangatlong linya, ang bawat linya ng output ay nagpapahiwatig ng isang tukoy na packet na nakuha ng tcpdump. Narito kung ano ang hitsura ng output ng isang solong packet.

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

Tandaan na hindi lahat ng mga packet ay nakunan sa ganitong paraan, ngunit ito ang pangkalahatang format na sinusundan ng karamihan sa kanila.

Naglalaman ang output ng sumusunod na impormasyon.

  1. Timestamp ng natanggap na packet
  2. Pangalan ng interface
  3. Daloy ng packet
  4. Pangalan ng network protocol
  5. Mga detalye ng IP address at port
  6. Mga watawat ng TCP
  7. Ang pagkakasunud-sunod ng bilang ng data sa packet
  8. Ack data
  9. Laki ng window
  10. Haba ng packet

Ang unang larangan ( 17: 00: 25.369138 ) ipinapakita ang time stamp kapag ang iyong system ay nagpadala o nakatanggap ng packet. Ang oras na naitala ay nakuha mula sa lokal na oras ng iyong system.

kung paano basahin ang isang .dat file

Ang pangalawa at pangatlong mga patlang ay nagpapahiwatig ng ginamit na interface at ang daloy ng packet. Sa snippet sa itaas, wlp0s20f3 ay ang pangalan ng wireless interface at Palabas ay ang daloy ng packet.

Ang pang-apat na patlang ay may kasamang impormasyon na nauugnay sa pangalan ng network protocol. Pangkalahatan, mahahanap mo ang dalawang mga protokol- IP at IP6 , kung saan ang IP ay nagsasaad ng IPV4 at IP6 ay para sa IPV6.

Ang susunod na patlang ay naglalaman ng mga IP address o ang pangalan ng mapagkukunan at patutunguhan ng system. Ang mga IP address ay sinusundan ng numero ng port.

Ang pang-anim na patlang sa output ay binubuo ng mga flag ng TCP. Mayroong iba't ibang mga watawat na ginagamit sa output ng tcpdump.

Pangalan ng BandilaHalagaPaglalarawan
TINGNANSNagsimula ang koneksyon
WAKASFTapos na ang koneksyon
PUSHPItinulak ang data
RSTRAng koneksyon ay nai-reset
NAKU.Pagkilala

Ang output ay maaari ring maglaman ng isang kumbinasyon ng maraming mga flag ng TCP. Halimbawa, FLAG [f.] kumakatawan sa isang FIN-ACK packet.

Ang paglipat ng karagdagang sa output snippet, ang susunod na patlang ay naglalaman ng numero ng pagkakasunud-sunod ( seq 196: 568 ) ng data sa packet. Ang unang packet ay palaging may positibong halaga ng integer, at ang mga susunod na packet ay gumagamit ng kamag-anak na numero ng pagkakasunud-sunod upang mapabuti ang daloy ng data.

Ang susunod na patlang ang humahawak sa numero ng pagkilala ( ack 1 ), o simpleng numero ng Ack. Ang packet na nakunan sa machine ng nagpadala ay may 1 bilang bilang ng pagkilala. Sa pagtatapos ng tatanggap, ang numero ng Ack ay ang halaga ng susunod na packet.

Ang ikasiyam na patlang sa output ay tumatanggap ng laki ng window ( manalo ng 309 ), na kung saan ay ang bilang ng mga byte na magagamit sa tumatanggap na buffer. Mayroong maraming iba pang mga patlang na sumusunod sa laki ng window, kasama ang Maximum Segment Size (MSS).

Ang huling larangan ( haba 33 ) naglalaman ng haba ng pangkalahatang packet na nakuha ng tcpdump.

3. Limitahan ang Bilang ng Nakunan na Mga Packet

Habang pinapatakbo ang utos ng tcpdump sa kauna-unahang pagkakataon, maaari mong mapansin na ang system ay patuloy na nakakakuha ng mga packet ng network hanggang sa mapasa mo ang isang nakakagambalang signal. Maaari mong i-override ang default na pag-uugali na ito sa pamamagitan ng pagtukoy ng bilang ng mga packet na nais mong makuha bago gamitin ang -c bandila.

tcpdump --interface any -c 10

Ang nabanggit na utos ay kukuha ng sampung mga packet mula sa anumang aktibong interface ng network.

4. Mga Filter ng Packet Batay sa Mga Patlang

Kapag nag-troubleshoot ka ng isang isyu, hindi ginagawang madali ang pagkuha ng isang malaking bloke ng output ng teksto sa iyong terminal. Iyon ay kung saan ang tampok na pag-filter sa tcpdump ay nagsisimula sa paglalaro. Maaari mong i-filter ang mga packet ayon sa iba't ibang mga patlang kasama ang host, protocol, numero ng port, at higit pa.

Upang makunan lamang ang mga TCP packet, i-type ang:

tcpdump --interface any -c 5 tcp

Katulad nito, kung nais mong salain ang output gamit ang numero ng port:

tcpdump --interface any -c 5 port 50

Ang nabanggit na utos ay kukuha lamang ng mga packet na nailipat sa pamamagitan ng tinukoy na port.

Upang makuha ang mga detalye ng packet para sa isang partikular na host:

tcpdump --interface any -c 5 host 112.123.13.145

Kung nais mong salain ang mga packet na ipinadala o natanggap ng isang tukoy na host, gamitin ang src o atbp pagtatalo sa utos.

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

Maaari mo ring gamitin ang mga lohikal na operator at at o upang pagsamahin ang dalawa o higit pang mga expression na magkasama. Halimbawa, upang makakuha ng mga packet na kabilang sa pinagmulang IP 112.123.13.145 at gamitin ang port 80 :

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

Ang mga kumplikadong ekspresyon ay maaaring mai-grupo gamit ang panaklong tulad ng sumusunod:

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

5. Tingnan ang Nilalaman ng Packet

Maaari mong gamitin ang -TO at -x mga flag na may utos na tcpdump upang pag-aralan ang nilalaman ng packet ng network. Ang -TO watawat ay nangangahulugang ASCII format at -x nagsasaad hexadecimal format

Upang matingnan ang nilalaman ng susunod na packet ng network na nakuha ng system:

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

Kaugnay: Ano ang Pagkawala ng Packet at Paano Ayusin ang Sanhi nito?

6. I-save ang I-capture ang Data sa isang File

Kung nais mong i-save ang data ng pagkuha para sa mga layunin ng sanggunian, nariyan ang tcpdump upang matulungan ka. Ipasa lang ang -sa i-flag gamit ang default na utos upang isulat ang output sa isang file sa halip na ipakita ito sa screen.

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

Ang .pcap Ang extension ng file ay nangangahulugang packet capture data Maaari mo ring i-isyu ang nabanggit na utos sa mode na verbose gamit ang -v bandila.

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

Upang basahin ang a .pcap file gamit ang tcpdump, gamitin ang -r flag na sinusundan ng file path. Ang -r ibig sabihin Basahin .

kumuha ng musika mula sa ipod sa computer
tcpdump -r data.pcap

Maaari mo ring i-filter ang mga packet ng network mula sa packet data na naka-save sa file.

tcpdump -r data.pcap port 80

Pagsubaybay sa Traffic sa Network sa Linux

Kung naitalaga sa iyo ang gawain ng pamamahala ng isang server ng Linux, kung gayon ang utos ng tcpdump ay isang mahusay na tool upang isama sa iyong arsenal. Madali mong maaayos ang mga problema na nauugnay sa network sa pamamagitan ng pagkuha ng mga packet na naihatid sa iyong network sa real-time.

Ngunit bago ang lahat ng iyon, ang iyong aparato ay dapat na konektado sa internet. Para sa mga nagsisimula sa Linux, kahit na ang pagkonekta sa Wi-Fi sa pamamagitan ng linya ng utos ay maaaring maging isang medyo mahirap. Ngunit kung gumagamit ka ng mga tamang tool, ito ay isang iglap.

Magbahagi Magbahagi Mag-tweet Email Paano Kumonekta sa Wi-Fi Sa pamamagitan ng Linux Terminal Sa Nmcli

Nais mong kumonekta sa isang Wi-Fi network sa pamamagitan ng linya ng utos ng Linux? Narito ang kailangan mong malaman tungkol sa utos ng nmcli.

Basahin Susunod
Mga Kaugnay na Paksa
  • Linux
  • Seguridad
  • Mga Forensics ng Network
Tungkol sa May-akda Deepesh Sharma(79 na Artikulo Nai-publish)

Ang Deepesh ay ang Junior Editor para sa Linux sa MUO. Nagsusulat siya ng mga gabay sa kaalaman sa Linux, na naglalayong magbigay ng isang maligayang karanasan sa lahat ng mga bagong dating. Hindi sigurado tungkol sa mga pelikula, ngunit kung nais mong pag-usapan ang tungkol sa teknolohiya, siya ang iyong tao. Sa kanyang libreng oras, mahahanap mo siya na nagbabasa ng mga libro, nakikinig sa iba't ibang mga genre ng musika, o tumutugtog ng kanyang gitara.

Higit pa Mula sa Deepesh Sharma

Mag-subscribe sa aming newsletter

Sumali sa aming newsletter para sa mga tip sa tech, pagsusuri, libreng ebook, at eksklusibong deal!

Mag-click dito upang mag-subscribe