Se vi bezonas analizi aŭ interkapti retajn pakaĵojn en Linukso, estas plej bone uzi konzolon utilecon por ĉi tio. Tcpdump. . Sed la problemo ekestas en pli komplika administrado. Ordinara uzanto ŝajnos labori kun la utileco malkomforta, sed ĝi estas nur unuavide. La artikolo estos priskribita kiel la TCPDUMP estas aranĝita, kiun sintakso ĝi havas, kiel uzi ĝin, kaj multaj ekzemploj de ĝia uzo estos prezentitaj.
Legu ankaŭ: Interreta konekto-agordaj manlibroj en Ubuntu, Debian, Ubuntu-servilo
Instalado
Plej multaj programistoj de operaciumoj de Linukso estas inkluzivitaj en la TCPDAMP-ilo al la listo de antaŭ-instalitaj, sed se ial ĝi mankas en via distribuo, vi povas ĉiam elŝuti ĝin kaj instali ĝin tra la terminalo. Se via OS baziĝas sur Debian, kaj ĉi tio estas Ubuntu, Linukso Mint, Kali Linukso kaj ilia simila, vi devas ekzekuti ĉi tiun komandon:Sudo apt install tcpdump
Kiam vi instalas, vi devas enmeti pasvorton. Bonvolu noti, ke kiam ĝi ne montriĝas, ĝi ne montriĝas, ankaŭ konfirmi la instaladon, kiun vi bezonas por eniri la simbolon de "D" kaj premu ENTER.
Se vi havas Red Hat, Fedora aŭ Centos, tiam la instalada teamo havos la sekvan formon:
Sudo yam install tcpdump
Post kiam la ilo estas instalita, ĝi povas tuj uzi ĝin. Pri ĉi tio kaj multaj aliaj aferoj estos diritaj al la teksto.
Legu ankaŭ: PHP-instalada gvidilo en Ubuntu-servilo
Sintakso
Kiel ĉiu alia komando, TCPdump havas sian propran sintakson. Sciante ĝin, vi povas agordi ĉiujn necesajn parametrojn, kiuj estos konsiderataj kiam ekzekutos la komandon. La sintakso estas jene:
TCPDUMP-opcioj -i filtrila interfaco
Kiam vi uzas la komandon, vi devas specifi la interfacon por spuri. Filtriloj kaj opcioj ne estas devigaj variabloj, sed ili permesas vin plenumi pli flekseblajn agordojn.
Opcioj
Almenaŭ la opcio ne nepre indikas, vi ankoraŭ bezonas liston. La tablo montras ne la tutan liston, sed nur la plej popularaj, sed ili estas pli ol sufiĉaj por solvi la plej multajn taskojn.Opcio | Difino |
---|---|
-A. | Permesas vin ordigi pakojn kun ASCII-formato |
-L. | Aldonas ruluman funkcion |
-I. | Post enirado, vi devas specifi la retan interfacon, kiu estos spurita. Komenci spuri ĉiujn interfacojn, enigu la vorton "ajnan" post la opcio. |
-c. | Kompletigas la spuradon post kontrolado de la specifa nombro de pakoj |
-w. | Generas tekstan dosieron kun konfirmo-raporto |
-E. | Montras la nivelon de la interreta konekta pakaĵo |
-L. | Montras nur tiujn protokolojn, kiuj subtenas la specifitan interfacon de reto |
-C. | Kreas alian dosieron dum registrado de pakaĵo se ĝia grandeco estas pli granda ol la specifita |
-r. | Malfermas legan dosieron, kiu estis kreita per la opcio -w. |
-J. | Timestamp-formato uzos por registri pakojn |
-J. | Permesas, ke vi vidu ĉiujn disponeblajn tempajn formatojn. |
-G. | Uzata por krei dosieron kun ŝtipoj. La opcio ankaŭ postulas la instrukciojn de la tempa valoro, post kiu nova ŝtipo estos kreita. |
-V, -vv, -vvv | Depende de la nombro de signoj en la opcio, la komanda eligo fariĝos pli da detaloj (la pliiĝo estas rekte proporcia al la nombro de signoj) |
-f. | En la eligo montras la nomon de la IP-adreso-Domajno |
-F. | Permesas legi informojn ne de la reto-interfaco, sed de la specifa dosiero |
-D. | Pruvas ĉiujn retajn interfacojn, kiujn oni povas uzi |
-N. | Malaktivigas la montradon de domajnaj nomoj |
-Z. | Specifas la uzanton laŭ la raporto pri kiu ĉiuj dosieroj estos kreitaj. |
-K. | Skip-test-analizo |
-Q. | Pruvo de Mallonga Informo |
-H. | Permesas detekti 802.11-titolojn |
-I. | Uzata dum kaptado de pakoj en monitora reĝimo |
Post rompi la opciojn, tuj sub ni moviĝas rekte al siaj aplikoj. Dume, filtriloj estos konsiderataj.
Filtriloj
Kiel menciite ĉe la komenco de la artikolo, vi povas aldoni filtrilojn al TCPdump-sintakso. Nun la plej populara pri ili estos konsiderata:
Filtrilo | Difino |
---|---|
Gastiganto. | Servas por indiki la nomon de la gastiganto |
Net. | Specifas IP-subneton kaj reton |
IP. | Uzata por specifi la adreson de la protokolo |
Src | Montras pakojn senditaj de la specifa adreso. |
Dst | Montras pakaĵojn akiritajn de la specifita adreso. |
ARP, UDP, TCP | Filtrado de unu el la protokoloj |
Haveno. | Montras informojn pri specifa haveno |
kaj, aŭ | Servas kombini plurajn filtrilojn en la teamo |
Malpli, pli granda | Pako eligo malpli aŭ pli specifita grandeco |
Ĉiuj supre filtriloj povas esti kombinitaj unu kun la alia, do en la eldono de la komando vi observos nur la informojn, kiujn vi volas vidi. Por kompreni pli detale pri la uzo de la supraj filtriloj, ĝi valoras ĉefajn ekzemplojn.
Vidu ankaŭ: Ofte uzataj komandoj en Fina stacio Linukso
Ekzemploj de uzado
Ofte uzata TCPDUMP-komando-sintaksaj opcioj nun montriĝos. Ne eblos listigi ilin, ĉar iliaj variaĵoj povas esti senfina aro.Rigardu la liston de interfacoj
Oni rekomendas komence kontroli la liston de ĉiuj ĝiaj retaj interfacoj, kiujn oni povas spuri. De la supra tabelo, ni scias, ke por tio vi bezonas uzi la -d-opcion, do en la terminalo, kuri la sekvan komandon:
Sudo tcpdump -d.
Ekzemplo:
Kiel vi povas rimarki, en la ekzemplo estas ok interfacoj, kiujn oni povas vidi per la komando TCPdump. La artikolo ricevos ekzemplojn per PPP0, vi povas uzi iun ajn alian.
Normala trafika kapto
Se vi bezonas spuri unu retan interfacon, vi povas fari ĉi tion uzante la opcion -i. Ne forgesu eniri la interfacan nomon post eniri ĝin. Jen ekzemplo de la ekzekuto de tia teamo:
Sudo tcpdump -i ppp0
Bonvolu noti: Antaŭ la komando mem vi devas eniri "sudo", ĉar ĝi postulas la rajton de superuzanto.
Ekzemplo:
Noto: Post premado de ENTER en "Terminalo", interkaptitaj pakaĵoj kontinue. Ĉesigu sian riveron, vi devas premi la CTRL + C-klavon.
Se vi plenumas komandon sen aldonaj opcioj kaj filtriloj, vi vidos la sekvan ekranan formaton por kontrolitaj pakoj:
22: 18: 52.597573 ip vrrp-topf2.p.mail.ru.https> 10.0.6.67.35482: Flagoj [P.], Seq 1: 595, ACK 1118, Win 6494, Opcioj [NOP, NOP, TS PLA 257060077 ECR 697597623], Longitudo 594
Kie koloro estas asignita:
- Blua - la tempo de ricevo de la pakaĵo;
- Oranĝa - versio de la protokolo;
- Verda - adreso de la sendinto;
- Purpura - adreso de ricevanto;
- griza - aldona informo pri TCP;
- Ruĝa - la grandeco de la pakaĵo (montrita en bajtoj).
Ĉi tiu sintakso havas la kapablon eligi en la fenestro "fina stacio sen uzi aldonajn opciojn."
Trafika kapto kun opcio -v
Kiel vi scias de la tablo, la -v-opcio permesas al vi pliigi la kvanton da informoj. Ni analizos pri la ekzemplo. Kontrolu la saman interfacon:
Sudo tcpdump -v -i ppp0
Ekzemplo:
Ĉi tie vi povas vidi, ke la sekva linio aperis en la eligo:
IP (TOS 0x0, TTL 58, ID 30675, OFFSET 0, Flagoj [Df], Pra TCP (6), Longitudo 52
Kie koloro estas asignita:
- Oranĝa - versio de la protokolo;
- blua - la vivdaŭro de la protokolo;
- Verda - Field-kapta longo;
- Purpura - versio de la pakaĵo TCP;
- Ruĝa - la grandeco de la pakaĵo.
Ankaŭ en la komanda sintakso vi povas preskribi la opcion -vv aŭ -vvv, kiu ebligos al vi pliigi la kvanton da informoj montritaj sur la ekrano.
-W kaj -r opcio
La opcio-tablo menciis la kapablon konservi ĉiujn elmontritajn datumojn en apartan dosieron por poste esti vidataj. Ĉar ĉi tio respondas al la opcio -w. Estas sufiĉe simpla uzi ĝin, nur eniru ĝin en la komandon, kaj tiam enigu la nomon de la estonta dosiero kun la etendo ".PCap". Konsideru ĉion pri la ekzemplo:
Sudo tcpdump -i ppp0 -w file.pcap
Ekzemplo:
Bonvolu noti: Dum rekordaj protokoloj al la dosiero pri la ekrano "Terminal", neniu teksto estas montrata.
Kiam vi volas vidi la registritan eliron, vi devas uzi la opcion -R, post kiu vi skribas la nomon de la antaŭe registrita dosiero. Withouti aplikas sen aliaj ebloj kaj filtriloj:
Sudo tcpdump -r file.pcap
Ekzemplo:
Ambaŭ ĉi tiuj opcioj estas perfekte taŭgaj en kazoj, kie vi bezonas ŝpari grandajn volumojn de teksto por la posta analizo.
Filtrado de IP.
El la filtrila tablo, ni scias, ke DST permesas al vi montri konzolon nur tiujn pakaĵojn, kiujn oni akiris per la adreso estas specifitaj en la komanda sintakso. Tiel, estas tre konvene vidi la pakaĵojn ricevitajn de via komputilo. Por fari tion, en la komando vi nur bezonas specifi vian IP-adreson:
Sudo tcpdump -i ppp0 ip dst 10.0.6.67
Ekzemplo:
Kiel vi povas vidi, krom DST, ni ankaŭ preskribis IP-filtrilon. Alivorte, ni diris al la komputilo tiel ke kiam elektante pakojn, li atentis sian IP-adreson, kaj ne al aliaj parametroj.
IP povas esti filtrita kaj senditaj pakoj. En la ekzemplo, ni donos nian IP denove. Tio estas, nun ni spuras kiujn pakoj estas foriritaj de nia komputilo al aliaj adresoj. Por fari tion, vi devas ekzekuti la sekvan komandon:
Sudo tcpdump -i ppp0 ip src 10.0.6.67
Ekzemplo:
Kiel vi povas vidi, en la komanda sintakso, ni ŝanĝis la DST-filtrilon sur la SRC, tiel rakontante al la aŭto serĉi la sendinton per IP.
Gastiga filtrado
Analoge kun IP en la teamo, ni povas specifi la gastigan filtrilon por kudri pakojn kun la gastiganto de intereso. Tio estas, en la sintakso, anstataŭ la IP-adreso de la sendinto / ricevanto, necesos indiki ĝian gastiganton. Ŝajnas ĉi tio:
Sudo tcpdump -i ppp0 dst gastiganto google-public-dns-a.google.com
Ekzemplo:
En la bildo vi povas vidi, ke nur tiuj pakoj senditaj de nia IP en Google.com estas montritaj en la terminalo. Kiel mi povas kompreni, anstataŭ la gastiganto de Google, vi povas eniri iun alian.
Kiel en la kazo de filtrado per IP, en la DST-sintakso, vi povas anstataŭigi la SRC por vidi la pakaĵojn senditajn al via komputilo:
Sudo tcpdump -i ppp0 src gastiganto google-public-dns-a.google.com
Noto: La gastiga filtrilo devas stari post DST aŭ SRC, alie la komando donos eraron. En la kazo de filtrado de IP, kontraŭe, DST kaj SRC staras antaŭ la IP-filtrilo.
Apliko kaj aŭ filtrilo
Se vi bezonas la bezonon uzi plurajn filtrilojn samtempe en la sama komando, tiam vi devas uzi la kaj aŭ filtrilon (dependas de la kazo). Punktaj filtriloj en la sintakso kaj apartigante ilin per ĉi tiuj operatoroj, vi "faru" labori ilin kiel unu. Pri la ekzemplo ĝi aspektas tiel:
Sudo tcpdumm -i ppp0 ip dst 95.47.144.254 aŭ IP SRC 95.47.144.254
Ekzemplo:
De la sintakso de la komando, estas klare, ke ĉiuj pakoj senditaj al la "terminalo" estas montritaj sur la adreso 95.47.144.254 kaj pakoj akiritaj de la sama adreso. Vi ankaŭ povas ŝanĝi iujn variablojn en ĉi tiu esprimo. Ekzemple, anstataŭ IP, specifu gastiganton aŭ anstataŭigi la adresojn mem.
Haveno kaj Portrange Filtrilo
La haveno filtrilo estas perfekta en kazoj kie vi bezonas ricevi informojn pri pakoj kun specifa haveno. Do, se vi bezonas vidi nur respondojn aŭ DNS-petojn, vi devas specifi havenon 53:
Sudo tcpdump -vv -i ppp0 haveno 53
Ekzemplo:
Se vi volas vidi HTTP-pakojn, vi devas eniri Havenon 80:
Sudo tcpdump -vv -i PPP0-haveno 80
Ekzemplo:
Interalie, eblas spuri la gamon de havenoj samtempe. Por ĉi tiu celo, la portugala filtrilo estas aplikita:
Sudo tcpdump porttrange 50-80
Kiel vi povas vidi, en ligamento kun la portugala filtrilo, ne necesas specifi aldonajn opciojn. Nur nur starigu la teritorion.
Filtrado de protokoloj
Vi ankaŭ povas montri nur la trafikon, kiu korespondas al iu ajn protokolo. Por fari tion, uzu la nomon de ĉi tiu protokolo kiel filtrilo. Ni analizos pri la ekzemplo de UDP:
Sudo tcpdump -vvv -i ppp0 udp
Ekzemplo:
Kiel vi povas vidi en la bildo, post ekzekuti la komandon en la terminalo, nur pakoj kun la UDP-protokolo aperis. Sekve, vi povas filtri kaj alia, ekzemple, ARP:
Sudo tcpdump -vvv -i ppp0 arp
aŭ TCP:
Sudo tcpdump -vvv -i ppp0 tcp
Pura Filtrilo
La pura operatoro helpas filtri la pakaĵojn per la nomado de ilia reto. I estas ankaŭ facile uzebla, kaj ankaŭ la ceteraj - vi bezonas specifi la puran atributon en la sintakso, tiam enigu la retan adreson. Jen ekzemplo de tia teamo:
Sudo tcpdump -i ppp0 reto 192.168.1.1
Ekzemplo:
Pako filtrado
Ni ne konsideris du pli interesajn filtrilojn: malpli kaj pli grandaj. De la tablo kun filtriloj, ni scias, ke ili servas por produkti datumajn pakaĵojn pli (malpli) aŭ malpli (pli granda) grandeco indikita post enigo de la atributo.
Supozu, ke ni volas sekvi nur la pakaĵojn, kiuj ne superas 50 bitojn, tiam la teamo havos la sekvan formon:
Sudo tcpdump -i ppp0 malpli 50
Ekzemplo:
Nun ni vidu la pakaĵojn en la terminalo, kies grandeco estas pli ol 50 bitoj:
Sudo tcpdump -i ppp0 pli granda 50
Ekzemplo:
Kiel vi povas vidi, ili estas aplikitaj egale, la diferenco estas nur en la nomo de la filtrilo.
Konkludo
Je la fino de la artikolo, ni povas konkludi, ke la teamo Tcpdump. - Ĉi tio estas bonega ilo kun kiu vi povas spuri iujn datumojn transdonitaj en la interreto. Sed por ĉi tio ne sufiĉas por simple eniri la ordonon mem en la "terminalon". Eblos atingi la deziratan rezulton nur se vi uzas ĉiajn opciojn kaj filtrilojn, same kiel iliajn kombinaĵojn.