Tcpdump: kuinka käyttää sitä verkkoliikenteen sieppaamiseen palvelimellasi

Jos sinun on tehtävä diagnoosi yhteytesi kaikesta verkkoliikenteestä, olipa kyseessä sitten paikallinen tai Internetiin päin, on välttämätöntä käyttää ohjelmia kaiken liikenteen sieppaamiseen ja analysointiin myöhemmin. Yksi suosituimmista ohjelmista on Wireshark, tämä ohjelma on monialustainen, yhteensopiva Windows, Linux, macOS ja monet muut, tarvitsemme kuitenkin graafisen käyttöliittymän, jotta se toimisi. Tänään aiomme opettaa sinulle kuinka käyttää tcpdumpia, parasta työkalua kaiken liikenteen kaappaamiseen komentorivin kautta terminaalissa.

Mikä on tcpdump ja mihin sitä käytetään

tcpdump

tcpdump on täysin ilmainen työkalu, jonka avulla voimme kaapata kaiken verkkoliikenteen yhdestä tai useammasta rajapinnasta, olivatpa ne Ethernet, WiFi, rakentamiamme PPPoE-rajapintoja ja jopa virtuaalisia rajapintoja, kuten ne, joita luomme virtuaalisia yksityisiä verkkoja käytettäessä. Tämä ohjelma ei ole vastuussa vain kaiken liikenteen kaappaamisesta, vaan voimme myös analysoida sitä reaaliajassa, kun se kaapataan, kaikki komentorivin kautta.

tcpdump on tuettu kaikissa Unix-pohjaisissa käyttöjärjestelmissä, mukaan lukien Linux, BSD, macOS ja monet muut. Tietenkin tämä ohjelma käyttää libpcap-kirjastoa kaapatakseen kaikki paketit, jotka virtaavat kyseisen käyttöliittymän kautta, olipa se fyysinen tai virtuaalinen. Tämän ohjelman suorittaminen järjestelmässä edellyttää pääkäyttäjän oikeuksia, koska kaappaamme ja katselemme verkkoliikennettä, joka voi olla "arkaluonteista", joten tarvitaan järjestelmänvalvojan oikeudet.

Parasta, mitä tcpdumpilla on, ovat suodattimet, voimme suodattaa kaiken liikenteen nähdäksemme vain sen, mikä kiinnostaa meitä. Suodattimet ovat ilmaisuja, jotka jäävät sieppausvaihtoehtojen taakse ja antavat meille mahdollisuuden näyttää vain sen, mitä etsimme, emme kaikkea. Jos emme aseta suodatinta, näemme valitun verkkosovittimen koko verkkoliikenteen.

Pääasialliset käyttötavat, joita voimme antaa tcpdump-työkalulle, ovat seuraavat:

  • Tallenna kaikki tiedot ja tallenna ne myöhempää tutkimusta varten.
  • Tee virheenkorjaus reaaliaikaisissa sovelluksissa, jotka käyttävät verkkoa kommunikointiin.
  • Tarkista, että verkkoliikenne on odotetulla tavalla sen käyttö huomioon ottaen.
  • Kaappaa ja lue tiedot muilta verkon tietokoneilta, vaikka tässä tapauksessa meidän on käytettävä tekniikoita, kuten ARP Spoofing tai vastaava, jos olemme kytketyssä ympäristössä emmekä käytä tcpdump reitittimessä.

Kun olemme nähneet, mikä tcpdump on ja mihin sitä voidaan käyttää, asennamme sen Linux-käyttöjärjestelmäämme näyttääksemme, kuinka se toimii.

Asennus Debianiin ja pääasetukset

Tätä ohjelmaa käytetään laajalti kaikissa Linux-pohjaisissa käyttöjärjestelmissä, joten voimme asentaa sen suoraan kunkin jakelun virallisista arkistoista. Debianin tapauksessa meidän on laitettava seuraava komento terminaaliin:

sudo apt install tcpdump

Saamme jotain tällaista:

Kun se on asennettu, voimme suorittaa seuraavan komennon terminaalissa näyttääksemme meille avun:

tcpdump -h

Jos tarvitset paljon lisätietoja työkalusta, katso käyttöesimerkkejä ja kaikkea dokumentaatiota, pääset man-sivuille seuraavasti:

man tcpdump

Näillä man-sivuilla näet laajan kuvauksen työkalusta, mitä syntaksia meidän tulee käyttää, mitä vaihtoehtoja meillä on käytettävissä kaikkien tietojen tallentamiseen ja myös haluamamme tiedon suodattamiseen.

käyttöesimerkkejä

Tällä ohjelmalla on suuri määrä vaihtoehtoja tietojen tallentamiseen ja myös näyttämiseen, lisäksi meillä on mahdollisuus lisätä suuri määrä kehittyneitä suodattimia, jotta se näyttää meille vain sen, mitä haluamme. Seuraavaksi selitämme joitain peruskomentoja, jotta voit tallentaa vain sen, mikä sinua kiinnostaa.

peruskäyttöön

Seuraava komento antaa meille mahdollisuuden käynnistää ohjelman, jos emme määritä verkkoliitäntää, työkalu itse valitsee jonkin käyttöjärjestelmässä olevista.

tcpdump

Jos haluamme määrittää verkkoliitännän, sinun on annettava seuraava komento:

tcpdump -i NOMBRE_INTERFAZ

Jos haluamme määrittää kaikki verkkoliitännät, kaapata kaikki liikenne kerralla, sinun on annettava seuraava komento:

tcpdump -i any

Kun sieppaamme verkkoliikennettä tcpdumpilla, emme ehkä ole kiinnostuneita isäntänimien selvittämisestä, vaan näytämme meille suoraan IP-osoitteet. Tätä varten voimme laittaa:

tcpdump -n

Jos haluat kaapata vain tietyn määrän paketteja, sinun tulee laittaa seuraava komento:

tcpdump -c NUMERO_PAQUETES

Jos haluamme lisätä tietoja, joita se näyttää meille komentorivin kautta, meidän on lisättävä "sanallista" seuraavalla tavalla:

tcpdump -i NOMBRE_INTERFAZ -v

Jos haluamme lisätä sitä enemmän, lisäämme sen jälkeen lisää "v" seuraavasti:

tcpdump -i NOMBRE_INTERFAZ -vvv

Tämä viimeinen komento antaa meille mahdollisuuden nähdä niin paljon sanallista kuin mahdollista.

Jos haluamme tallentaa kaappauksen tiedostoon, avata se myöhemmin pakettianalysaattorilla, kuten WireSharkilla, tai myöhempää analysointia varten, meidän on annettava seuraava komento:

tcpdump -i NOMBRE_INTERFAZ -w NOMBRE_ARCHIVO

Tietenkin, jos haluamme tallentaa kaiken mahdollisimman monisanaisella, laitamme:

tcpdump -i NOMBRE_INTERFAZ -w NOMBRE_ARCHIVO

Liikenteen kaappaaminen IP- tai aliverkon kautta

tcpdump antaa meille mahdollisuuden suodattaa IP-osoitteiden ja jopa aliverkkojen mukaan, tätä varten voimme laittaa seuraavan komennon:

tcpdump -i NOMBRE_INTERFAZ host IP

Voisimme nähdä esimerkiksi liikenteen localhostin IP:stä:

tcpdump -i NOMBRE_INTERFAZ host 127.0.0.1

Voimme myös suodattaa aliverkkojen mukaan seuraavasti:

tcpdump -i NOMBRE_INTERFAZ net SUBRED/X

Alla näet esimerkin aliverkosta:

tcpdump -i NOMBRE_INTERFAZ net 192.168.1.0/24

Voisimme myös suodattaa lähtökohdan ja määränpään mukaan. Alla näet kaksi esimerkkiä:

tcpdump -i NOMBRE_INTERFAZ src IP tcpdump -i NOMBRE_INTERFAZ dst IP

Näillä vaihtoehdoilla voimme helposti suodattaa liikenteen, jonka haluamme vain kaapata ja näyttää.

Liikenteen tallentaminen satamien ja alueiden mukaan

Jos haluat suodattaa porttien mukaan, joko yhden portin tai porttien mukaan, voit tehdä sen seuraavalla tavalla:

tcpdump -i NOMBRE_INTERFAZ port NUMERO_PUERTO tcpdump -i NOMBRE_INTERFAZ portrange PUERTOINICIO PUERTOFIN

Kaikki nämä komennot voidaan myös lisätä tcpdumpiin suodattaaksesi IP:n ja porttien mukaan ja jopa tallentaa koko liikenteen kaappauksen pcap-tiedostoon. Tällä tavalla voimme ketjuttaa käytettävissä olevat eri vaihtoehdot määrittämiemme suodattimien kanssa.

Päätelmät

tcpdump on olennainen työkalu pakettien sieppaamiseen paikallisverkosta haluamillamme liitännöillä, tämän ohjelman ansiosta voimme tarkastella kaikkea verkkoliikennettä matalalla tasolla konsolin kautta ja voimme myös tallentaa liikenteen kaappaukset kiintolevyllämme tai SSD aina kun haluamme. Lukuisten konfigurointivaihtoehtojen ja suodattimien ansiosta pystymme tallentamaan vain sen, mikä meitä kiinnostaa, myöhempää analysointia varten Wiresharkin kaltaisilla ohjelmilla tai suoraan alhaisella tasolla tsharkilla tai vastaavalla.

Jos sinulla on ongelmia verkkotasolla paikallisessa verkossasi tai palvelimessasi, tcpdump auttaa sinua selvittämään, mitä liikennettä koko verkon tai kyseisen palvelimen läpi kulkee, ja tutkia myöhemmin yksityiskohtaisesti, mitä tapahtuu ja miten voimme ratkaista sen. Verkkoliikenteen kaappaaminen on ensimmäinen askel ongelman korjaamiseksi verkkotasolla, ja tässä tapauksessa tcpdump on paras liittolaisesi ratkaisemaan kaikki ongelmat.