Разварот табліцы ў Microsoft Excel

Калі вам неабходна прааналізаваць або перахапіць сеткавыя пакеты ў Linux, то лепш за ўсё для гэтага выкарыстоўваць кансольную ўтыліту tcpdump. Але праблема ўзнікае ў даволі складаным яе кіраванні. Радавому карыстачу падасца, што працаваць з утылітай нязручна, але гэта толькі на першы погляд. У артыкуле будзе расказана, як уладкованая tcpdump, які сінтаксіс яна мае, як ёй карыстацца, а таксама будуць прыведзены шматлікія прыклады яе выкарыстання.

Чытайце таксама: Кіраўніцтва па наладзе інтэрнэт-злучэння ў Ubuntu, Debian, Ubuntu Server

ўстаноўка

Большасць распрацоўшчыкаў аперацыйных сістэм на базе Linux ўключаюць ўтыліту tcpdump ў спіс прадусталяваных, але калі па нейкай прычыне яна ў вашым дыстрыбутыве адсутнічае, яе можна заўсёды спампаваць і ўсталяваць праз "Тэрмінал". Калі ў вас АС заснавана на Debian, а гэта Ubuntu, Linux Mint, Kali Linux і ім падобныя, трэба выканаць гэтую каманду:

sudo apt install tcpdump

Пры ўсталёўцы вам трэба ўвесці пароль. Звярніце ўвагу, што пры наборы ён не адлюстроўваецца, таксама для пацверджання ўстаноўкі трэба ўвесці сімвал "Д" і націснуць Enter.

Калі ў вас Red Hat, Fedora або CentOS, то каманда для ўстаноўкі будзе мець наступны выгляд:

sudo yam install tcpdump

Пасля таго як утыліта будзе ўстаноўлена, ёй адразу ж можна карыстацца. Пра гэта і пра многае іншае будзе расказана далей па тэксце.

Чытайце таксама: Кіраўніцтва па ўстаноўцы PHP ў Ubuntu Server

сінтаксіс

Як і любая іншая каманда, tcpdump мае свой сінтаксіс. Ведаючы яго, вы зможаце задаваць ўсе неабходныя параметры, якія будуць улічвацца пры выкананні каманды. Сінтаксіс мае наступны выгляд:

tcpdump опцыі -i інтэрфейс фільтры

Пры выкарыстанні каманды вам абавязкова неабходна паказваць інтэрфейс для адсочвання. Фільтры і опцыі - гэта не абавязковыя зменныя, але яны дазваляюць выканаць больш гнуткую наладу.

опцыі

Хоць опцыю і не абавязкова паказваць, пералічыць даступныя ўсё ж трэба. У табліцы прадэманстраваны не ўвесь іх спіс, а толькі найбольш папулярныя, але іх з лішкам хопіць, каб вырашыць большасць пастаўленых задач.

опцыявызначэнне
-AДазваляе адсартаваць пакеты з фарматам ASCII
-lДадае функцыю пракруткі
-iПасля ўводу трэба пазначыць сеткавай інтэрфейс, які будзе адсочвацца. Каб пачаць адсочваць усе інтэрфейсы, ўпішыце пасля опцыі слова "any"
-cЗавяршае працэс адсочвання пасля праверкі паказанай колькасці пакетаў
-wГенеруе тэкставы файл са справаздачай праверкі
-eПаказвае ўзровень інтэрнэт-злучэння пакета дадзеных
-LВыводзіць толькі тыя пратаколы, якія падтрымлівае ўказаны сеткавай інтэрфейс
-CСтварае іншы файл падчас запісу пакета, калі яе памер больш зададзенага
-rАдкрывае файл для чытання, які быў створаны з дапамогай опцыі -w
-jДля запісу пакетаў будзе выкарыстоўвацца фармат TimeStamp
-JДазваляе праглядзець усе даступныя фарматы TimeStamp
-GСлужыць для стварэння файлу з логамі. Опцыя патрабуе таксама ўказанні часовага значэння, пасля заканчэння якога будзе стварацца новы лог
-v, -vv, -vvvУ залежнасці ад колькасці знакаў у опцыі, выснова каманды будзе станавіцца больш падрабязна (павелічэнне прама прапарцыйна колькасці знакаў)
-fУ выснове паказвае імя дамена адрасоў IP
-FДазваляе счытваць інфармацыю не з сеткавага інтэрфейсу, а з паказанага файла
-DДэманструе ўсе сеткавыя інтэрфейсы, якія можна выкарыстоўваць
-nДэактывуе адлюстраванне даменных імёнаў
-ZЗадае карыстальніка, пад уліковым запісам якога будуць створаны ўсе файлы
-KПропуск аналізу кантрольных сум
-qДэманстрацыя кароткай інфармацыі
-HДазваляе выявіць загалоўкі 802.11s
-IВыкарыстоўваецца пры захопе пакетаў у рэжыме манітора

Разабраўшы опцыі, крыху ніжэй мы пяройдзем непасрэдна да іх прымянення. А пакуль што будуць разгледжаны фільтры.

фільтры

Як гаварылася ў самым пачатку артыкула, вы можаце дадаваць у сінтаксіс tcpdump фільтры. Цяпер будуць разгледжаны найбольш папулярныя з іх:

фільтрвызначэнне
hostСлужыць для ўказанні імя хаста
netПаказвае IP падсеткі і сеткі
ipСлужыць для ўказанні адрасы пратаколу
srcВыводзіць пакеты, якія былі адпраўленыя з названага адрасы
dstВыводзіць пакеты, якія былі атрыманы паказаным адрасам
arp, udp, tcpФільтраванне па адным з пратаколаў
portАдлюстроўвае інфармацыю, якая адносіцца да пэўнага порту
and, orСлужыць для аб'яднання некалькіх фільтраў у камандзе
less, greaterВыснова пакетаў менш ці больш названага памеру

Усе вышэйпералічаныя фільтры можна камбінаваць паміж сабой, такім чынам, у выдачы каманды вы будзеце назіраць толькі тую інфармацыю, якую жадаеце ўбачыць. Каб больш дэталёва разабрацца ў выкарыстанні вышэйпералічаных фільтраў, варта прывесці прыклады.

Чытайце таксама: Часта выкарыстоўваюцца каманды ў "тэрмінале" Linux

прыклады выкарыстання

Цяпер будуць прыведзены часта выкарыстоўваюцца варыянты сінтаксісу каманды tcpdump. Усе іх пералічыць не атрымаецца, бо іх варыяцый можа быць бясконцае мноства.

Прагляд спісу інтэрфейсаў

Рэкамендуецца кожнаму карыстальніку першапачаткова праверыць спіс усіх яго сеткавых інтэрфейсаў, якія можна адсачыць. З вышэйпрыведзенай табліцы мы ведаем, што для гэтага трэба выкарыстоўваць опцыю -D, Таму ў тэрмінале запусціце наступную каманду:

sudo tcpdump -D

прыклад:

Як вы можаце заўважыць, у прыкладзе ёсць восем інтэрфейсаў, якія можна прагледзець з дапамогай каманды tcpdump. У артыкуле будуць прыводзіцца прыклады з ppp0, Вы ж можаце выкарыстоўваць любы іншы.

Звычайны захоп трафіку

Калі трэба адсачыць адзін сеткавы інтэрфейс, то зрабіць гэта вы можаце з дапамогай опцыі -i. Не забудзьцеся пасля яе ўводу ўказаць назву інтэрфейсу. Вось прыклад выканання такой каманды:

sudo tcpdump -i ppp0

Звярніце ўвагу: перад самай камандай трэба ўпісаць "sudo", так як яна патрабуе правы суперпользователя.

прыклад:

Заўвага: пасля націску Enter ў "тэрмінале" бесперапынку будуць адлюстроўвацца перахопленыя пакеты. Каб спыніць іх паток, трэба націснуць камбінацыю клавіш Ctrl + C.

Калі вы выконваеце каманду без дадатковых опцый і фільтраў, то ўбачыце наступны фармат адлюстравання отслеженных пакетаў:

22: 18: 52.597573 IP vrrp-topf2.p.mail.ru.https> 10.0.6.67.35482: Flags [P.], seq 1: 595, ack 1118, win 6494, options [nop, nop, TS val 257060077 ecr 697597623], length 594

Дзе колерам выдзелена:

  • сінім - час атрымання пакета;
  • аранжавым - версія пратакола;
  • зялёным - адрас адпраўніка;
  • фіялетавым - адрас атрымальніка;
  • шэрым - дадатковая інфармацыя аб tcp;
  • чырвоным - памер пакета (адлюстроўваецца ў байтах).

Гэты сінтаксіс мае магчымасць высновы ў акне "Тэрмінала" без выкарыстання дадатковых опцый.

Захоп трафіку з опцыяй -v

Як вядома з табліцы, опцыя -v дазваляе павялічыць колькасць інфармацыі. Разбяром на прыкладзе. Праверым той жа інтэрфейс:

sudo tcpdump -v -i ppp0

прыклад:

Тут можна заўважыць, што з'явілася наступная радок у выснове:

IP (tos 0x0, ttl 58, id 30675, offset 0, flags [DF], proto TCP (6), length 52

Дзе колерам выдзелена:

  • аранжавым - версія пратакола;
  • сінім - працягласць жыцця пратакола;
  • зялёным - даўжыня загалоўка поля;
  • фіялетавым - версія пакета tcp;
  • чырвоным - памер пакета.

Таксама ў сінтаксіс каманды вы можаце прапісаць опцыю -vv або -vvv, Што дазволіць яшчэ больш павялічыць аб'ём выводнай інфармацыі на экран.

Опцыя -w і -r

У табліцы опцый згадвалася аб магчымасці захоўваць усе выводзяцца дадзеныя ў асобны файл, каб пазней іх можна было праглядзець. За гэта адказвае опцыя -w. Карыстацца ёй даволі проста, усяго толькі пакажыце яе ў камандзе, а затым ўпішыце назва будучага файла з пашырэннем ".Pcap". Разгледзім усе на прыкладзе:

sudo tcpdump -i ppp0 -w file.pcap

прыклад:

Звярніце ўвагу: падчас запісу логаў у файл на экране "Тэрмінала" не адлюстроўваецца ніякай тэкст.

Калі вы захочаце праглядзець запісаны выснову, неабходна выкарыстоўваць опцыю -r, Пасля якой напісаць назву раней запісанага файла. Ужываецца яна без іншых опцый і фільтраў:

sudo tcpdump -r file.pcap

прыклад:

Абедзве гэтыя опцыі выдатна падыдуць ў тых выпадках, калі неабходна захаваць вялікія аб'ёмы тэксту для наступнага разбору.

Фільтраванне па IP

З табліцы фільтраў мы ведаем, што dst дазваляе вывесці на экран кансолі толькі тыя пакеты, якія былі атрыманы адрасам, што паказаны ў сінтаксісе каманды. Такім чынам вельмі зручна праглядаць пакеты, атрыманыя вашым кампутарам. Для гэтага ў камандзе трэба ўсяго толькі пазначыць свой IP-адрас:

sudo tcpdump -i ppp0 ip dst 10.0.6.67

прыклад:

Як можна заўважыць, акрамя dst, У камандзе мы прапісалі таксама фільтр ip. Іншымі словамі, мы сказалі кампутара, каб пры адборы пакетаў ён звяртаў увагу на іх IP адрас, а не на іншыя параметры.

Па IP можна адфільтраваць і адпраўляюцца пакеты. У прыкладзе прывядзем зноў наш IP. То бок зараз мы адсачыць, якія пакеты адпраўляюцца з нашага кампутара на іншыя адрасы. Для гэтага трэба выканаць наступную каманду:

sudo tcpdump -i ppp0 ip src 10.0.6.67

прыклад:

Як можна заўважыць, у сінтаксісе каманды мы змянілі фільтр dst на src, Тым самым сказаўшы машыне, каб яна шукала адпраўніка па IP.

Фільтраванне па HOST

Па аналогіі з IP у камандзе мы можам паказаць фільтр host, Каб адсеяць пакеты з цікавяць хастом. Гэта значыць, у сінтаксісе замест IP-адрасы адпраўніка / атрымальніка трэба будзе паказваць яго хост. Выглядае гэта наступным чынам:

sudo tcpdump -i ppp0 dst host google-public-dns-a.google.com

прыклад:

На малюнку можна ўбачыць, што ў "Тэрмінале" адлюстроўваюцца толькі тыя пакеты, якія былі адпраўленыя з нашага IP на хост google.com. Як можна зразумець, замест хаста google, можна ўпісаць любы іншы.

Як і ў выпадку з фільтраваннем па IP, у сінтаксісе dst можна замяніць на src, Каб убачыць пакеты, якія адпраўляюцца на ваш кампутар:

sudo tcpdump -i ppp0 src host google-public-dns-a.google.com

Звярніце ўвагу: фільтр host павінен стаяць пасля dst або src, інакш каманда выдасць памылку. У выпадку з фільтраваннем па IP, наадварот, dst і src стаяць перад фільтрам ip.

Прымяненне фільтра and і or

Калі ў вас з'яўляецца неабходнасць выкарыстоўваць адразу некалькі фільтраў у адной камандзе, то для гэтага трэба ўжываць фільтр and або or (Залежыць ад выпадку). Паказваючы фільтры ў сінтаксісе і падзяляючы іх гэтымі аператарам, вы «прымусіце» працаваць іх як адзін. На прыкладзе гэта выглядае наступным чынам:

sudo tcpdump -i ppp0 ip dst 95.47.144.254 or ip src 95.47.144.254

прыклад:

З сінтаксісу каманды відаць, што мы хочам вывесці на экран "Тэрмінала" усе пакеты, якія былі адпраўленыя на адрас 95.47.144.254 і пакеты, атрыманыя гэтым жа адрасам. Таксама вы можаце змяняць некаторыя зменныя ў гэтым выразе. Напрыклад, замест IP ўказаць HOST або замяніць непасрэдна самі адрасы.

Фільтр port і portrange

фільтр port выдатна падыдзе ў тых выпадках, калі трэба атрымаць інфармацыю пра пакеты з пэўным портам. Так, калі вам трэба ўбачыць толькі адказы ці запыты DNS, трэба паказаць порт 53:

sudo tcpdump -vv -i ppp0 port 53

прыклад:

Калі вы жадаеце праглядзець пакеты http, трэба ўвесці порт 80:

sudo tcpdump -vv -i ppp0 port 80

прыклад:

Апроч іншага, ёсць магчымасць адсачыць адразу дыяпазон партоў. Для гэтага ўжываецца фільтр portrange:

sudo tcpdump portrange 50-80

Як можна заўважыць, у звязку з фільтрам portrange не абавязкова ўказваць дадатковыя опцыі. Досыць усяго толькі задаць дыяпазон.

Фільтраванне па пратаколах

Вы таксама можаце вывесці на экран толькі той трафік, які адпавядае якому-небудзь пратаколе. Для гэтага трэба выкарыстоўваць у якасці фільтра найменне гэтага самага пратаколу. Разбяром на прыкладзе udp:

sudo tcpdump -vvv -i ppp0 udp

прыклад:

Як можна ўбачыць на малюнку, пасля выканання каманды ў "Тэрмінале" адлюстраваліся толькі пакеты з пратаколам udp. Адпаведна, вы можаце ажыццявіць фільтраванне і па іншых, напрыклад, arp:

sudo tcpdump -vvv -i ppp0 arp

або tcp:

sudo tcpdump -vvv -i ppp0 tcp

фільтр net

аператар net дапамагае адфільтраваць пакеты, беручы за аснову абазначэнне іх сеткі. Карыстацца ім так жа проста, як і астатнімі - трэба ў сінтаксісе пазначыць атрыбут net, Пасля чаго ўпісаць адрас сеткі. Вось прыклад такой каманды:

sudo tcpdump -i ppp0 net 192.168.1.1

прыклад:

Фільтраванне па памеры пакета

Мы не разгледзелі яшчэ два цікавых фільтра: less і greater. З табліцы з фільтрамі мы ведаем, што яны служаць для высновы пакетаў дадзеных больш (less) Або менш (greater) Памеру, пазначанага пасля ўводу атрыбуту.

Дапусцім мы хочам сачыць толькі за пакетамі, якія не перавышаюць адзнаку ў 50 біт, тады каманда будзе мець наступны выгляд:

sudo tcpdump -i ppp0 less 50

прыклад:

Зараз давайце адлюстраваць у "Тэрмінале" пакеты, памер якіх больш за 50 біт:

sudo tcpdump -i ppp0 greater 50

прыклад:

Як можна заўважыць, прымяняюцца яны аднолькава, розніца толькі ў назве фільтра.

заключэнне

Па заканчэнні артыкула можна зрабіць выснову, што каманда tcpdump - гэта выдатны інструмент, з дапамогай якога можна адсачыць любы перадаваны па інтэрнэце пакет дадзеных. Але для гэтага недастаткова проста ўвесці саму каманду ў "Тэрмінал". Дамагчыся жаданага выніку атрымаецца толькі ў выпадку, калі выкарыстоўваць разнастайныя опцыі і фільтры, а таксама іх камбінацыі.

Глядзіце відэа: Как перевернуть таблицу в Ворде? (Красавік 2024).