Kynning á Tcpdump

Kynning á Tcpdump

Ef þú rekur netþjón muntu án efa komast á þann stað að þú þarft að negla niður nettengd vandamál. Auðvitað væri auðvelt að senda bara póst á þjónustudeildina, en stundum þarf að skíta í hendurnar. Í þessu tilviki, tcpdumper tækið fyrir það starf. Tcpdump er netpakkagreiningartæki sem keyrir undir skipanalínunni.

Þessari grein verður skipt í þrjá hluta:

  • Grunneiginleikar.
  • Sía byggt á ákveðnum umferðareiginleikum.
  • Stutt brot af fullkomnari eiginleikum (svo sem rökrænar tjáningar, síun eftir TCP fánum).

Þar sem tcpdump er ekki innifalið í flestum grunnkerfum þarftu að setja það upp. Hins vegar eru næstum allar Linux dreifingar með tcpdump í kjarnageymslum sínum. Fyrir Debian byggðar dreifingar er skipunin til að setja upp tcpdump:

apt-get install tcpdump

Fyrir CentOS/RedHat, notaðu eftirfarandi skipun:

yum install tcpdump

FreeBSD býður upp á forsmíðaðan pakka sem hægt er að setja upp með því að gefa út:

pkg install tcpdump

Það er líka tengi í boði net/tcpdumpsem hægt er að setja upp með:

cd /usr/ports/net/tcpdump
make install clean

Ef þú keyrir tcpdumpán nokkurra röksemda, verður þú fyrir barðinu á niðurstöðum. Að keyra það á nýsnúið dæmi hér á Vultr í minna en fimm sekúndur gefur eftirfarandi niðurstöður:

2661 packets captured
2663 packets received by filter
0 packets dropped by kernel

Áður en þú ferð í frekari upplýsingar um hvernig á að sía inntak ættir þú að skoða nokkrar breytur sem hægt er að senda til tcpdump:

  • -i- Tilgreinir viðmótið sem þú vilt hlusta á, til dæmis: tcpdump -i eth0.
  • -n- Ekki reyna að gera öfuga leit á IP tölum, til dæmis: tcpdump -n(ef þú bætir við öðru nmun tcpdump sýna þér gáttanúmer í stað nöfn).
  • -X- Sýndu innihald pakkana sem safnað var: tcpdump -X.
  • -c- Handtaka aðeins xpakka, xsem er handahófskennd tala, tcpdump -c 10tekur til dæmis nákvæmlega 10 pakka.
  • -v- Auktu magn pakkaupplýsinga sem þér eru sýndar, fleiri vs bæta við meiri orðræðu.

Hægt er að sameina hverja af þessum breytum sem nefnd eru hér. Ef þú vildir fanga 100 pakka, en aðeins á VPN viðmótinu þínu tun0, þá myndi tcpdump skipunin líta svona út:

tcpdump -i tun0 -c 100 -X

Það eru tugir (ef ekki hundruðir) valkosta til viðbótar við þá fáu, en þeir eru algengustu. Ekki hika við að lesa Manpage tcpdump á kerfinu þínu.

Nú þegar þú hefur grunnskilning á tcpdump, þá er kominn tími til að skoða einn af frábærustu eiginleikum tcpdump: tjáningar. Tjáningar munu gera líf þitt miklu auðveldara. Þeir eru einnig þekktir sem BPF eða Berkeley Packet Filters. Notkun tjáninga gerir þér kleift að velja (eða hunsa) pakka sem byggjast á ákveðnum eiginleikum - eins og uppruna, áfangastað, stærð eða jafnvel TCP raðnúmer.

Hingað til hefur þér tekist að takmarka leit þína við ákveðið magn af pökkum á ákveðnu viðmóti, en við skulum vera heiðarleg hér: það skilur enn eftir of mikið bakgrunnshljóð til að vinna með gögnunum sem safnað er í raun. Þar koma tjáningar við sögu. Hugmyndin er frekar einföld, svo við sleppum þurru kenningunni hér og styðjum skilninginn með nokkrum hagnýtum dæmum.

Tjáningin sem þú munt líklega nota mest eru:

  • host - Leitaðu að umferð byggt á hýsilheitum eða IP tölum.
  • srceða dst- Leitaðu að umferð frá eða til ákveðins gestgjafa.
  • proto- Leitaðu að umferð um ákveðna siðareglur. Virkar fyrir tcp, udp, icmp og fleiri. Það protoer líka mögulegt að sleppa lykilorðinu.
  • net - Leitaðu að umferð til/frá ákveðnu úrvali IP vistfanga.
  • port - Leitaðu að umferð til / frá ákveðinni höfn.
  • greatereða less- Leitaðu að umferð sem er stærri eða minni en tiltekið magn af bætum.

Þó að handsíðan fyrir tcpdumpinnihaldi aðeins nokkur dæmi, þá hefur handsíðan fyrir pcap-filtermjög nákvæmar útskýringar á því hvernig hver sía virkar og hægt er að nota hana.

Ef þú vilt sjá hvernig samskipti þín við ákveðinn netþjón ganga, þá geturðu notað hostlykilorðið, til dæmis (þar á meðal nokkrar af breytunum að ofan):

tcpdump -i eth0 host vultr.com

Stundum eru tölvur á netinu sem heiðra ekki MTU eða spamma þig með stórum pökkum; stundum getur verið erfitt að sía þau út. Tjáning gerir þér kleift að sía út pakka sem eru stærri eða minni en ákveðinn fjöldi bæta:

tcpdump -i eth0 -nn greater 128
or
tcpdump -i eth0 -nn less 32

Kannski er bara ákveðin höfn áhugaverð fyrir þig. Í þessu tilviki, notaðu portorðatiltækið:

tcpdump -i eth0 -X port 21

Þú getur líka horft á hafnarsvið:

tcdump -i eth0 -X portrange 22-25

Þar sem NAT gáttir eru frekar algengar gætirðu aðeins leitað að áfangastað:

tcpdump dst port 80

Ef þú ert að horfa á umferð á vefþjóninn þinn gætirðu aðeins viljað skoða TCP umferð til port 80:

tcpdump tcp and dst port 80

Þú ert líklega að spyrja sjálfan þig hvað leitarorðið andsé að gera þarna. Góð spurning. Það færir okkur að síðasta hluta þessarar greinar.

tcpdump býður upp á grunnstuðning fyrir rökrænar tjáningar, nánar tiltekið:

  • and/ &&- Rökrétt "og".
  • or/ ||- Rökrétt "eða".
  • not/ !- Rökrétt "ekki".

Ásamt getu til að flokka tjáningar saman, gerir þetta þér kleift að búa til mjög öfluga leit að komandi og útleiðinni umferð. Svo skulum sía út umferð sem kemur frá vultr.com á höfn 22 eða 443:

tcpdump -i eth0 src host vultr.com and (dst port 22 or 443)

Að keyra þetta á skipanalínunni mun gefa þér eftirfarandi villu:

bash: syntax error near unexpected token `('

Það er vegna þess að það er fyrirvari: bashreynir að meta hverja persónu sem hún getur. Þetta felur í sér (og )stafi. Til að forðast þá villu ættir þú að nota stakar gæsalappir í kringum sameinuðu tjáninguna:

tcpdump -i eth0 'src host vultr.com and (dst port 22 or 443)'

Annað gagnlegt dæmi: Þegar þú villir SSH vandamál með einum af notendum þínum gætirðu viljað hunsa allt sem tengist SSH lotunni þinni:

tcpdump '!(host $youripaddress) && port 22)'

Aftur eru notkunartilvikin endalaus og þú getur tilgreint í miklu dýpi hvers konar umferð þú vilt sjá. Eftirfarandi skipun myndi sýna þér aðeins SYNACK pakka af TCP handabandi:

tcpdump -i eth0 'tcp[13]=18'

Þetta virkar með því að skoða þrettándu hliðrun TCP haussins og átjánda bæti innan hans.

Ef þú komst alla leið hingað, þá ertu tilbúinn fyrir flest notkunartilvik sem koma upp. Ég get varla snert yfirborðið án þess að fara út í of mörg smáatriði. Ég mæli eindregið með því að þú prófir þig aðeins lengra með mismunandi valkosti og orðatiltæki; og eins og venjulega: vísaðu til manpage þegar þú villist.

Síðast en ekki síst - stutt yfirlit. Manstu byrjun þessarar greinar? Með þúsundir pakka teknar á nokkrum sekúndum? Krafturinn í tcpdumpgetur klippt það mjög niður:

tcpdump -i eth0 tcp port 22

Niðurstaðan er núna:

81 packets captured
114 packets received by filter
0 packets dropped by kerne

Þetta er miklu skynsamlegra og auðveldara að kemba. Gleðilegt net!


Settu upp Cacti á Debian Jessie

Settu upp Cacti á Debian Jessie

Inngangur Cacti er opinn vöktunar- og grafatól sem byggir að fullu á RRD gögnum. Í gegnum Cacti geturðu fylgst með næstum hvers kyns tækjum

Settu upp Lets Encrypt SSL á WordPress appi með einum smelli

Settu upp Lets Encrypt SSL á WordPress appi með einum smelli

Inngangur Lets Encrypt er vottunaryfirvaldsþjónusta sem býður upp á ókeypis TLS/SSL vottorð. Uppsetningarferlið er einfaldað af Certbot,

Hvernig á að setja upp Tekkit Classic Server á Ubuntu 16.10

Hvernig á að setja upp Tekkit Classic Server á Ubuntu 16.10

Að nota annað kerfi? Hvað er Tekkit Classic? Tekkit Classic er modpack fyrir leikinn sem allir þekkja og elska; Minecraft. Það inniheldur eitthvað af ver

Settu upp iRedMail á Debian Wheezy

Settu upp iRedMail á Debian Wheezy

Að nota annað kerfi? Þessi kennsla mun sýna þér hvernig á að setja upp hópbúnaðinn iRedMail á nýrri uppsetningu á Debian Wheezy. Þú ættir að nota þjóna

Að búa til Jekyll blogg á Ubuntu 16.04

Að búa til Jekyll blogg á Ubuntu 16.04

Að nota annað kerfi? Jekyll er frábær valkostur við WordPress til að blogga eða deila efni. Það krefst enga gagnagrunna og það er mjög auðvelt i

Hvernig á að setja upp og stilla PHP 7.0 eða PHP 7.1 á Ubuntu 16.04

Hvernig á að setja upp og stilla PHP 7.0 eða PHP 7.1 á Ubuntu 16.04

PHP og tengdir pakkar eru algengustu íhlutirnir þegar vefþjónn er notaður. Í þessari grein munum við læra hvernig á að setja upp PHP 7.0 eða PHP 7.1 o

Hvernig á að setja upp Squid Proxy á CentOS

Hvernig á að setja upp Squid Proxy á CentOS

Smokkfiskur er vinsælt, ókeypis Linux forrit sem gerir þér kleift að búa til framsendingarforrit á vefnum. Í þessari handbók muntu sjá hvernig á að setja upp Squid á CentOS til að snúa þér

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Inngangur Lighttpd er gaffal af Apache sem miðar að því að vera miklu minna auðlindafrekt. Hann er léttur, þess vegna heitir hann, og er frekar einfaldur í notkun. Uppsetning

Þrjú ókeypis stjórnborð miðlara (fljót uppsetning)

Þrjú ókeypis stjórnborð miðlara (fljót uppsetning)

1. Virtualmin/Webmin Virtualmin er öflugt og sveigjanlegt stjórnborð fyrir vefhýsingu fyrir Linux og UNIX kerfi byggt á hinum vel þekkta Open Source vefgrunni

Setja upp Yii forrit á Ubuntu 14.04

Setja upp Yii forrit á Ubuntu 14.04

Yii er PHP ramma sem gerir þér kleift að þróa forrit hraðar og auðveldlega. Uppsetning Yii á Ubuntu er einföld, þar sem þú munt læra nákvæmlega

Notkun Skjár á Ubuntu 14.04

Notkun Skjár á Ubuntu 14.04

Skjár er forrit sem leyfir margs konar notkun flugstöðvarlota innan eins glugga. Þetta gerir þér kleift að líkja eftir mörgum flugstöðvum gluggum þar sem það ma

Settu upp þinn eigin DNS netþjón á Debian/Ubuntu

Settu upp þinn eigin DNS netþjón á Debian/Ubuntu

Þessi kennsla útskýrir hvernig á að setja upp DNS netþjón með Bind9 á Debian eða Ubuntu. Í gegnum greinina skaltu skipta út-léninu þínu.com í samræmi við það. Á þ

Notkun Logrotate til að stjórna annálaskrám

Notkun Logrotate til að stjórna annálaskrám

Inngangur Logrotate er Linux tól sem einfaldar stjórnun annálaskráa. Það keyrir venjulega einu sinni á dag í gegnum cron-vinnu og stjórnar annálagrunni

Stilla Static Networking og IPv6 á CentOS 7

Stilla Static Networking og IPv6 á CentOS 7

VULTR hefur nýlega gert breytingar á enda þeirra og allt ætti nú að virka vel út úr kassanum með NetworkManager virkt. Ef þú vilt slökkva á

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Icinga2 er öflugt eftirlitskerfi og þegar það er notað í aðal-viðskiptavinamódel getur það komið í stað þörf fyrir NRPE-undirstaða vöktunareftirlit. Húsbóndinn

Settu upp Red5 Media Server á Ubuntu 16.04

Settu upp Red5 Media Server á Ubuntu 16.04

Að nota annað kerfi? Red5 er opinn uppspretta miðlara útfærður í Java sem gerir þér kleift að keyra Flash fjölnotendaforrit eins og straumspilun í beinni

Settu saman og settu upp Nginx með PageSpeed ​​Module á Debian 8

Settu saman og settu upp Nginx með PageSpeed ​​Module á Debian 8

Í þessari grein munum við sjá hvernig á að setja saman og setja upp Nginx mainline frá opinberum heimildum Nginx með PageSpeed ​​einingunni, sem gerir þér kleift að

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Að nota annað kerfi? Apache Cassandra er ókeypis og opinn uppspretta NoSQL gagnagrunnsstjórnunarkerfi sem er hannað til að veita sveigjanleika, háan

Hvernig á að setja upp Vanilla Forum á Ubuntu 16.04

Hvernig á að setja upp Vanilla Forum á Ubuntu 16.04

Að nota annað kerfi? Vanilla forum er opinn uppspretta spjallforrit skrifað í PHP. Það er fullkomlega sérhannaðar, auðvelt í notkun og styður utanaðkomandi

Hvernig á að setja upp Gitea á Debian 9

Hvernig á að setja upp Gitea á Debian 9

Að nota annað kerfi? Gitea er annað opinn uppspretta, sjálfhýst útgáfustýringarkerfi knúið af Git. Gitea er skrifað á Golang og er

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira