Linux-da şəbəkə paketlərini təhlil etmək və ya tutmaq lazımdırsa, bunun üçün bir konsol yardım proqramından istifadə etmək yaxşıdır. Tcpdump. . Ancaq problem olduqca mürəkkəb idarəetmədə yaranır. Adi bir istifadəçi yararlılıq ilə işləmir, ancaq bu, yalnız ilk baxışdan görünür. Məqalədə TCPDumpın necə qurulduğunu, onu necə istifadə edəcəyini və istifadəsinin çoxsaylı nümunələri təqdim ediləcəyi barədə təsvir ediləcəkdir.
Oxuyun da: Ubuntu, Debian, Ubuntu Serverində İnternet bağlantısı quraşdırma təlimatları
Quraşdırma
Linux əməliyyat sistemlərinin əksər inkişaf etdiriciləri, əvvəlcədən quraşdırılmışdır, lakin nədənsə paylanmada itkin düşsə, həmişə yükləyə və terminal vasitəsilə quraşdıra bilərsiniz. Əgər OS, Debian'a əsaslanır və bu Ubuntu, Linux Nanə, Kali Linux və bəyənir, bu əmri icra etməlisiniz:Sudo apt tcpdump quraşdırın
Quraşdırdığınız zaman bir parol daxil etməlisiniz. Unutmayın ki, göstərilməyibsə, "D" simvolu daxil etmək və Enter düyməsini basmaq üçün lazım olan quraşdırmanı təsdiqləmək üçün göstərilmir.
Qırmızı şapka, Fedora və ya Centos varsa, quraşdırma qrupu aşağıdakı formaya sahib olacaqdır:
Sudo yam tcpdump quraşdırın
Utility quraşdırıldıqdan sonra dərhal istifadə edə bilər. Bu barədə və başqa bir çox şey mətndə deyiləcəkdir.
Ayrıca oxuyun: Ubuntu Serverdə PHP Quraşdırma Bələdçisi
Sintaksis
Hər hansı digər əmr kimi, TCPDump öz sintaksisi var. Bunu bilmək, əmr edərkən nəzərə alınacaq bütün lazımi parametrləri təyin edə bilərsiniz. Sintaksis aşağıdakı kimidir:
Tcpdump seçimləri - Filter interfeysi
Komandanı istifadə edərkən izləmə üçün interfeysi göstərməlisiniz. Filtrlər və seçimlər məcburi dəyişənlər deyil, lakin daha çevik parametrləri yerinə yetirməyə imkan verir.
Seçimlər
Ən azı seçim mütləq göstərilmir, hələ də siyahıya ehtiyacınız var. Cədvəl bütün siyahısını deyil, yalnız ən populyar, lakin onlar vəzifələrin çoxunu həll etmək üçün kifayət qədərdir.Seçim | Tərif |
---|---|
-A. | ASCII formatı ilə paketləri çeşidləməyə imkan verir |
-L. | Bir sürüşmə funksiyası əlavə edir |
-İ. | Girdikdən sonra izləniləcək şəbəkə interfeysini göstərməlisiniz. Bütün interfeysləri izləməyə başlamaq üçün seçimdən sonra "hər hansı bir" sözünü daxil edin. |
-c. | Göstərilən paketlərin sayını yoxladıqdan sonra izləmə prosesini tamamlayır |
-w. | Yoxlama hesabatı olan bir mətn faylı yaradır |
-E. | İnternet bağlantısı paketinin səviyyəsini göstərir |
-L. | Yalnız göstərilən şəbəkə interfeysini dəstəkləyən protokolları göstərir |
-C. | Ölçüsü göstəriləndən daha böyük olduqda bir paket qeyd edərkən başqa bir fayl yaradır |
-r. | -W seçimindən istifadə edərək yaradılan bir oxu faylı açır. |
-J. | Timestamp formatı paketləri qeyd etmək üçün istifadə ediləcəkdir |
-J. | Bütün mövcud vaxt işarələrini görmək imkanı verir. |
-G. | Qeydləri olan bir fayl yaratmaq üçün istifadə olunur. Seçim də vaxt dəyərinin göstərişlərini tələb edir, bundan sonra yeni bir giriş yaradılacaqdır. |
-V, -VV, -VVV | Seçimdəki simvolların sayından asılı olaraq, əmr çıxışı daha çox təfərrüata çevriləcək (artım simvolların sayına birbaşa mütənasibdir) |
-f. | Çıxışda IP ünvanı domeninin adını göstərir |
-F. | Şəbəkə interfeysindən, ancaq göstərilən fayldan məlumat oxumağa imkan verir |
-D. | İstifadə edilə bilən bütün şəbəkə interfeyslərini nümayiş etdirir |
-N. | Domen adlarının ekranını deaktiv edir |
-Z. | Bütün faylların yaradılacağı hesabına istifadəçini müəyyənləşdirir. |
-K. | Test analizini atlayın |
-Q. | Qısa məlumatların nümayişi |
-H. | 802.11 başlıqlarını aşkar etməyə imkan verir |
-İ. | Monitor rejimində paketləri çəkərkən istifadə olunur |
Seçimləri pozduqdan sonra, yalnız öz tətbiqlərinə hərəkət edirik. Bu vaxt filtrlərə nəzərə alınacaq.
Filtrlər
Məqalənin əvvəlində qeyd olunduğu kimi, TCPDump sintaksisinə filtrlər əlavə edə bilərsiniz. İndi onlardan ən populyar hesab olunur:
Süzgəc | Tərif |
---|---|
Ev sahibi. | Ev sahibinin adını göstərməyə xidmət edir |
xalis. | IP alt şəbəkəsini və şəbəkəni göstərir |
IP. | Protokolun ünvanını təyin etmək üçün istifadə olunur |
Src | Göstərilən ünvandan göndərilən paketləri göstərir. |
Dst | Göstərilən ünvanda əldə edilən paketləri göstərir. |
ARP, UDP, TCP | Protokollardan birində filtrasiya |
Port. | Müəyyən bir liman ilə əlaqəli məlumatlar göstərir |
və ya və ya | Komandada birdən çox filtri birləşdirməyə xidmət edir |
az, daha böyükdür | Paket çıxışı az və ya daha çox göstərilmiş ölçüdə |
Yuxarıda göstərilən filtrlərin hamısı bir-biri ilə birləşdirilə bilər, buna görə də əmr verilməsində yalnız görmək istədiyiniz məlumatları müşahidə edəcəksiniz. Yuxarıdakı filtrlərin istifadəsində daha ətraflı məlumatı başa düşmək üçün lider nümunələr lazımdır.
Buna da baxın: Terminal Linux-da tez-tez istifadə olunan əmrlər
İstifadə nümunələri
Tez-tez istifadə olunan TCPDump əmrləri sintaksis seçimləri indi göstəriləcəkdir. Onları sadalamaq mümkün olmayacaq, çünki onların dəyişmələri sonsuz bir dəst ola bilər.İnterfeyslərin siyahısına baxın
Əvvəlcə izlənilə bilən bütün şəbəkə interfeyslərinin siyahısını yoxlamaq tövsiyə olunur. Yuxarıdakı cədvəldən bilirik ki, bu üçün -D seçimindən istifadə etməlisiniz, buna görə terminalda aşağıdakı əmri işlədin:
Sudo tcpdump -d.
Misal:
Nümunə görə, nümunədə TCPDump əmrindən istifadə edərək baxıla bilən səkkiz interfeys var. Məqalədə PPP0 ilə nümunələr veriləcək, digərlərindən istifadə edə bilərsiniz.
Normal trafik ələ keçirilməsi
Bir şəbəkə interfeysini izləmək lazımdırsa, bu -i seçimindən istifadə edərək bunu edə bilərsiniz. Girdikdən sonra interfeys adını daxil etməyi unutmayın. Budur belə bir komandanın icrasına bir nümunə:
Sudo tcpdump -i ppp0
Diqqət edin: Əmr əmrinin qarşısında "sudo", superuserin haqqını tələb etdiyi üçün "sudo" da daxil olmalısınız.
Misal:
Qeyd: "Terminal" a daxil olunduqdan sonra, ələ keçirilən paketlər davamlı olacaqdır. Axınlarını dayandırmaq üçün CTRL + C düyməsinə birləşməsini basmaq lazımdır.
Əlavə seçimlər və filtrlər olmadan bir əmri icra edirsinizsə, izlənilən paketlər üçün aşağıdakı ekran formatını görəcəksiniz:
22: 18: 52.597573 IP Vrrp-Topf2.P.Mail.HTTPS> 10.0.6.67.35482: Bayraqlar [P.], SEQ 1: 595, ACK 1118, ONLAR 6494, Seçimlər ECR 697597623, uzunluğu 594
Rəngin harada ayrıldığı:
- mavi - paketin alınması vaxtı;
- Narıncı - Protokolun versiyası;
- Yaşıl - göndərənin ünvanı;
- Bənövşəyi - alıcının ünvanı;
- Boz - TCP haqqında əlavə məlumat;
- Qırmızı - paketin ölçüsü (baytlarda göstərilir).
Bu sintaksis əlavə seçimlərdən istifadə etmədən "Terminal" pəncərəsində çıxma qabiliyyətinə malikdir.
Seçim ilə trafik ələ keçirmə -V
Cədvəldən bildiyiniz kimi, -V seçimi məlumatın miqdarını artırmağa imkan verir. Nümunə təhlil edəcəyik. Eyni interfeysi yoxlayın:
Sudo tcpdump -v -i ppp0
Misal:
Burada növbəti sətirin çıxışda göründüyünü görə bilərsiniz:
IP (TOS 0x0, TTL 58, ID 30675, Offset 0, Bayraqlar [df], proto tcp (6), uzunluğu 52
Rəngin harada ayrıldığı:
- Narıncı - Protokolun versiyası;
- mavi - protokolun ömrü;
- Yaşıl - sahə başlığı uzunluğu;
- Bənövşəyi - TCP paketinin versiyası;
- Qırmızı - paketin ölçüsü.
Ayrıca əmr sintaksisində, ekranda göstərilən məlumatların miqdarını daha da artırmaq imkanı verəcək -VV və ya -VVV seçimini təyin edə bilərsiniz.
-W və -r seçimi
Seçim cədvəli bütün göstərilən məlumatları sonradan ayrıca bir fayla saxlamaq imkanı qeyd olundu. Bunun üçün -W seçiminə uyğundur. Onu istifadə etmək olduqca sadədir, sadəcə əmrdə daxil edin və sonra gələcək sənədin adını ".pcap" uzantısı ilə daxil edin. Bütün nümunəni nəzərdən keçirin:
Sudo tcpdump -i ppp0 -w fayl.pcap
Misal:
Xahiş edirik unutmayın: "Terminal" ekrandakı rekord qeydləri zamanı mətn göstərilmir.
Yazılan çıxışı görmək istədikdə, əvvəllər qeydə alınmış faylın adını yazan seçim seçimindən istifadə etməlisiniz. Digər seçimlər və filtrlər olmadan tətbiq olunur:
Sudo tcpdump -r fayl.pcap
Misal:
Bu seçimlərin hər ikisi sonrakı təhlil üçün böyük həcmdə mətnin saxlamağınız lazım olan hallarda mükəmməldir.
IP tərəfindən süzgəc.
Filtr masasından DST konsol göstərməyə imkan verir ki, bu ünvana görə əldə edilən bu paketləri əmr sintaksisində göstərilmişdir. Beləliklə, kompüteriniz tərəfindən alınan paketlərə baxmaq çox rahatdır. Bunu etmək üçün, sadəcə IP ünvanınızı göstərməlisiniz:
Sudo tcpdump -i ppp0 IP DST 10.0.6.67
Misal:
Gördüyünüz kimi, DST-dən əlavə bir IP filtrini də təyin etdik. Başqa sözlə, kompüterə dedik ki, paketləri seçərkən, digər parametrlərə deyil, IP ünvanlarına diqqət yetirmişdir.
IP süzülə bilər və paket göndərilə bilər. Nümunədə bir daha ip verəcəyik. Yəni indi hansı paketlərin kompüterimizdən digər ünvanlara getdiyini izləyirik. Bunu etmək üçün aşağıdakı əmri yerinə yetirmək lazımdır:
Sudo tcpdump -i PPP0 IP SRC 10.0.6.67
Misal:
Gördüyünüz kimi, əmr sintaksisində, SRC-də DST filtrini dəyişdirdik və bununla da avtomobilin göndəricini IP tərəfindən axtarmağı söylədik.
Host süzgəc
Komandanın IP ilə bənzətməsi ilə, maraq dairəsi ilə paketlər tikmək üçün ev sahibi filtrini göstərə bilərik. Yəni, Sintaksisdə göndəricinin / alıcının IP ünvanı əvəzinə, onun ev sahibliyini göstərmək lazım olacaq. Bu belə görünür:
Sudo tcpdump -i ppp0 dst host google-publick-dns-a.google.com
Misal:
Şəkildə yalnız IP-dən Google.com-da göndərilən bu paketləri Terminalda nümayiş etdirdiyini görə bilərsiniz. Google Host əvəzinə necə başa düşə bilərəm, başqa birini daxil edə bilərsiniz.
IP-nin süzülməsi vəziyyətində, DST sintaksisində, kompüterinizə göndərilən paketləri görmək üçün SRC-ni əvəz edə bilərsiniz:
Sudo tcpdump -i PPP0 SRC Google-publick-dns-a.google.com
Qeyd: Host filtri DST və ya SRC-dən sonra dayanmalıdır, əks halda əmr səhv verəcəkdir. IP-nin süzülməsi halında, əksinə, DST və SRC IP filtrinin qarşısında dayanır.
Tətbiqi və ya süzgəc
Eyni əmrdə bir neçə filtrdən istifadə etmək lazımdırsa, onda istifadə etməlisiniz və ya süzgəcdən istifadə etməlisiniz (işdən asılıdır). Sintaksisində filtrləri göstərin və onları bu operatorlarla ayıran, "Etmək" onları bir kimi işləyin. Nümunədə bu belə görünür:
Sudo tcpdump -i PPP0 IP DST 95.47.144.254 və ya IP SRC 95.47.144.254
Misal:
Komandanın sintaksisindən, "Terminal" a göndərilən bütün paketlər 95.47.144.254 ünvanında və eyni ünvanda əldə edilən paketlərdə göstərilir. Bu ifadədəki bəzi dəyişənləri də dəyişdirə bilərsiniz. Məsələn, bir IP əvəzinə, host göstərin və ya ünvanları özünüz dəyişdirin.
Port və portrange filtri
Liman filtri, xüsusi bir port ilə paketlər haqqında məlumat əldə etməyiniz lazım olan hallarda mükəmməldir. Beləliklə, yalnız cavabları və ya DNS sorğularını görmək lazımdırsa, Port 53-i göstərməlisiniz:
Sudo tcpdump -VV -i ppp0 port 53
Misal:
HTTP paketlərini görmək istəyirsinizsə, 80 port daxil etməlisiniz:
Sudo tcpdump -vvv -i ppp0 port 80
Misal:
Digər şeylər arasında bir anda limanların çeşidini izləmək mümkündür. Bu məqsədlə portrange filtri tətbiq olunur:
Sudo tcpdump portrange 50-80
Gördüyünüz kimi, portrange filtri olan bir ligamentdə əlavə seçimləri təyin etmək lazım deyil. Sadəcə aralığı təyin edin.
Protokollar tərəfindən süzülmə
İstənilən protokola uyğun yalnız trafik də göstərə bilərsiniz. Bunu etmək üçün bu Protokolun adını filtr kimi istifadə edin. UDP nümunəsini təhlil edəcəyik:
Sudo tcpdump -vvvv -i ppp0 udp
Misal:
Şəkildə gördüyünüz kimi, terminaldakı əmri yerinə yetirdikdən sonra yalnız UDP protokolu ilə paketlər meydana çıxdı. Müvafiq olaraq, məsələn, ARP-ni süzgəcdən keçirə bilərsiniz və süzgəcdən keçirə bilərsiniz:
Sudo tcpdump -vvvv -i ppp0 arp
və ya tcp:
Sudo tcpdump -vvvv -i ppp0 tcp
Xalis filtri
Net operator şəbəkələrinin təyin edilməsini alaraq paketləri süzməyə kömək edir. İstifadəsi də asandır, həm də istirahət - sintaksisindəki xalis atributu göstərməlisiniz, sonra şəbəkə ünvanını daxil edin. Budur belə bir komandanın nümunəsi:
Sudo tcpdump -i ppp0 xalis 192.168.1.1
Misal:
Paket süzgəci
Daha iki maraqlı filtri nəzərdən keçirmədik: daha az və daha çox. Filtrlər ilə masadan, məlumat paketlərini daha az (az) və ya daha az (daha az) və ya atributu daxil etdikdən sonra göstərdiklərini bildirin.
Tutaq ki, yalnız 50 bitdən çox olmayan paketləri izləmək istəyirik, sonra komanda aşağıdakı formaya sahib olacaq:
Sudo tcpdump -i ppp0 az 50
Misal:
İndi, ölçüsü 50 bitdən çox olan terminaldakı paketləri görək:
Sudo tcpdump -i ppp0 daha çox 50
Misal:
Gördüyünüz kimi, onlar eyni dərəcədə tətbiq olunur, fərq yalnız filtrin adı ilə.
Rəy
Məqalənin sonunda komandanın nəticəsində bir nəticə çıxara bilərik Tcpdump. - Bu, İnternetdən keçən hər hansı bir məlumatı izləyə biləcəyiniz əla bir vasitədir. Ancaq bunun üçün sadəcə əmrləri "terminal" a daxil etmək üçün kifayət deyil. İstədiyiniz nəticəni əldə etmək mümkün olacaq, yalnız hər cür seçim və filtrlərdən, habelə onların birləşmələrindən istifadə edirsinizsə.