Linux-ko­men­nol­la tcpdump voit ana­ly­soi­da ver­kos­sa­si lä­he­tet­ty­jä paketteja. Analyysiä voidaan tarkentaa lu­kui­sil­la ase­tuk­sil­la ja suo­dat­ti­mil­la.

Mikä on Linuxin tcpdump?

tcpdump on hyö­dyl­li­nen työkalu verk­ko­lii­ken­teen ana­ly­soin­tiin Linuxissa ja mah­dol­lis­ten verkko-ongelmien rat­kai­se­mi­seen. Ko­men­to­ri­vioh­jel­ma on esia­sen­net­tu­na lähes kaikkiin yleisiin Linux-ja­ke­lui­hin, kuten Debianiin tai Ubuntuun, ja se välittää tietoa ver­kos­sa­si lä­he­te­tyis­tä tai vas­taa­no­te­tuis­ta da­ta­pa­ke­teis­ta. Nimestään huo­li­mat­ta Linuxin tcpdump ei sovellu vain TCP-pa­ket­tei­hin, vaan se voi ana­ly­soi­da myös UDP- ja ICMP-paketteja. Komennon käyt­tä­mi­seen tarvitset kuitenkin pää­käyt­tä­jän oikeudet.

Miten tcpdump-komento toimii?

Tcpdump-ohjelman suo­rit­ta­maa analyysia kutsutaan yleisesti ”snif­faa­mi­sek­si”. Linuxin tcpdump-ko­men­nol­la voit määrittää, mitä verk­ko­lii­tän­tää ohjelman tulee valvoa. Prosessin mu­kaut­ta­mi­sek­si ja op­ti­moi­mi­sek­si tcpdump tarjoaa laajan va­li­koi­man suo­dat­ti­mia. Komento suo­ri­te­taan ko­men­to­ri­vil­tä, ja analyysin tulokset näytetään vas­taa­vas­ti.

Mikä on tcpdump-komennon syntaksi?

Linuxin tcpdump-komennon syntaksi on hyvin yk­sin­ker­tai­nen ja näyttää tältä:

$ tcpdump [Options] [Filter]
bash

Vaikka pa­ra­met­rien mää­rit­tä­mi­nen ei ole pa­kol­lis­ta, se on suo­si­tel­ta­vaa, jotta tcpdump käyttää oikeaa verk­ko­lii­tän­tää. Suo­dat­ti­mien käyttö on myös va­paa­eh­tois­ta, mutta erittäin hyö­dyl­lis­tä. Ilman suo­dat­ti­mia tcpdump analysoi kaikki paketteja kaikilta isän­tä­ko­neil­ta, mikä voi nopeasti käydä liian raskaaksi ja sekavaksi.

Mitkä ovat Linuxin tcpdump-komennon vaih­toeh­dot ja suo­dat­ti­met?

Tcpdump-ko­men­nol­le on tarjolla lukuisia vaih­toeh­to­ja ja suo­dat­ti­mia. Tär­keim­mät niistä ovat:

  • -A: Tulostaa paketin sisällön ASCII-muodossa.
  • -c [Määrä]: tcpdump lo­pe­te­taan au­to­maat­ti­ses­ti, kun tietty määrä paketteja on ana­ly­soi­tu.
  • -D: Tällä vaih­toeh­dol­la lue­tel­laan kaikki käy­tet­tä­vis­sä olevat ra­ja­pin­nat.
  • -i [Liitäntä]: Tällä vaih­toeh­dol­la määrität, mikä liitäntä tal­len­ne­taan.
  • -s [Määrä]: Tämä vaih­toeh­to määrittää, kuinka monta tavua pakettia kohti tal­len­ne­taan.

Voit käyttää näitä suo­dat­ti­mia tcpdump-oh­jel­mas­sa:

  • dst: Ai­noas­taan ne paketit, joiden kohde on mää­ri­tel­ty arvo, kä­si­tel­lään. Tämä voi olla isäntä, verkko, portti tai port­tia­lue.
  • host: Suodatin varmistaa, että huomioon otetaan vain ne paketit, joiden lähde tai kohde on tietty IP-osoite tai vaih­toeh­toi­ses­ti tietty isän­tä­ni­mi.
  • net: Tämä suodatin ottaa huomioon vain ne paketit, joiden lähde tai kohde on mää­ri­te­tyn verk­koa­lu­een IP-osoite.
  • port: Käytä tätä suo­da­tin­ta mää­rit­tääk­se­si tietyn portin välillä 0–65535, jota ana­ly­soi­daan yk­si­no­maan.
  • portrange: Tämä suodatin sisältää port­tia­lu­een välillä 0–65535.
  • proto: Tämä suodatin ottaa huomioon vain paketit, joissa on tietty verk­kopro­to­kol­la. Suo­dat­ti­mel­la voi olla seuraavat arvot: arp, decnet, ether, fddi, ip, ip6, rarp, tcp, udp tai wlan.
  • src: Pakettien ana­ly­soin­ti tiettyjen kri­tee­rien, kuten isännän, verkon, portin tai port­tia­lu­een, pe­rus­teel­la.

Esi­merk­ke­jä tcpdump-komennon käytöstä

Lopuksi näytämme, miten tcpdump-komentoa käytetään. Esi­mer­keis­säm­me käytämme Linuxin sudo-komentoa.

$ sudo tcpdump -D
bash

Tarkista, mitkä verk­ko­lii­tän­nät ovat käy­tet­tä­vis­sä.

$ sudo tcpdump -i wlx14a3c782966b
bash

Analysoi vain mää­ri­te­tyn nimen omaava rajapinta.

$ sudo tcpdump -c 5 -i wlx14a3c782966b
bash

Tällä tavoin saat tcpdumpin tal­len­ta­maan vain viisi pakettia.

Siirry pää­va­lik­koon