tcpdump Nasıl Kullanılır ve 6 Örnek

tcpdump Nasıl Kullanılır ve 6 Örnek

Ağınızdaki trafiği analiz etmek için veri paketlerini mi yakalamaya çalışıyorsunuz? Belki bir sorunla karşılaşan ve ağda iletilen verileri izlemek isteyen bir sunucu yöneticisisiniz. Durum ne olursa olsun, ihtiyacınız olan şey tcpdump Linux yardımcı programıdır.





Bu yazıda, tcpdump komutunu Linux sisteminize nasıl kuracağınız ve kullanacağınızla ilgili bazı kılavuzlarla birlikte ayrıntılı olarak tartışacağız.





tcpdump Komutu Nedir?

Tcpdump kullanıcının bir ağdaki paketleri ve trafiği verimli bir şekilde filtrelemesine olanak tanıyan güçlü bir ağ izleme aracıdır. TCP/IP ve ağınızda iletilen paketler hakkında detaylı bilgi alabilirsiniz. Tcpdump, bir komut satırı yardımcı programıdır; bu, onu Linux sunucularında ekran olmadan çalıştırabileceğiniz anlamına gelir.





Sistem yöneticileri ayrıca tcpdump yardımcı programını aşağıdakilerle entegre edebilir: cron günlüğe kaydetme gibi çeşitli görevleri otomatikleştirmek için. Sayısız özelliği onu çok yönlü kıldığı için, tcpdump bir güvenlik aracının yanı sıra sorun giderme işlevi görür.

Linux'ta tcpdump Nasıl Kurulur

Çoğu zaman tcpdump'ın sisteminizde önceden kurulu olduğunu göreceksiniz, ancak bazı Linux dağıtımları paketle birlikte gönderilmez. Bu nedenle, yardımcı programı sisteminize manuel olarak yüklemeniz gerekebilir.



tcpdump'ın sisteminizde kurulu olup olmadığını aşağıdaki komutu kullanarak kontrol edebilirsiniz. Hangi emretmek.

which tcpdump

Çıktı bir dizin yolu gösteriyorsa ( /usr/bin/tcpdump ), ardından sisteminizde paket kuruludur. Ancak değilse, sisteminizdeki varsayılan paket yöneticisini kullanarak kolayca yapabilirsiniz.





Ubuntu gibi Debian tabanlı dağıtımlara tcpdump kurmak için:

sudo apt-get install tcpdump

CentOS'a tcpdump yüklemek de kolaydır.





sudo yum install tcpdump

Arch tabanlı dağıtımlarda:

sudo pacman -S tcpdump

Fedora'ya yüklemek için:

sudo dnf install tcpdump

tcpdump paketinin gerektirdiğini unutmayın libcap bir bağımlılık olarak, sisteminize de yüklediğinizden emin olun.

Linux'ta Ağ Paketlerini Yakalamak için Tcpdump Örnekleri

Artık tcpdump'u Linux makinenize başarıyla yüklediğinize göre, bazı paketleri izlemenin zamanı geldi. tcpdump, işlemlerin çoğunu yürütmek için süper kullanıcı izinleri gerektirdiğinden, eklemeniz gerekecek sudo komutlarınıza.

1. Tüm Ağ Arayüzlerini Listeleyin

Yakalamak için hangi ağ arayüzlerinin mevcut olduğunu kontrol etmek için, -NS tcpdump komutuyla işaretleyin.

tcpdump -D

geçmek --list-arayüzleri argüman olarak flag aynı çıktıyı döndürür.

tcpdump --list-interfaces

Çıktı, sisteminizde bulunan tüm ağ arayüzlerinin bir listesi olacaktır.

Ağ arayüzlerinin listesini aldıktan sonra, sisteminizdeki paketleri yakalayarak ağınızı izleme zamanı. Hangi arayüzü kullanmak istediğinizi belirtebilseniz de, herhangi bağımsız değişken, herhangi bir etkin arabirimi kullanarak ağ paketlerini yakalamak için tcpdump komutları verir.

tcpdump --interface any

Sistem aşağıdaki çıktıyı gösterecektir.

Word'de sayfa sonu nasıl kaldırılır

İlgili: Açık Sistemler Arabağlantı Modeli Nedir?

2. tcpdump Çıktı Formatı

Üçüncü satırdan başlayarak, çıktının her satırı tcpdump tarafından yakalanan belirli bir paketi belirtir. İşte tek bir paketin çıktısı nasıl görünüyor.

17:00:25.369138 wlp0s20f3 Out IP localsystem.40310 > kul01s10-in-f46.1e100.net.https: Flags [P.], seq 196:568, ack 1, win 309, options [nop,nop,TS val 117964079 ecr 816509256], length 33

Tüm paketlerin bu şekilde yakalanmadığını, ancak çoğunun izlediği genel formatın bu olduğunu unutmayın.

Çıktı aşağıdaki bilgileri içerir.

  1. Alınan paketin zaman damgası
  2. Arayüz adı
  3. paket akışı
  4. Ağ protokolünün adı
  5. IP adresi ve bağlantı noktası ayrıntıları
  6. TCP bayrakları
  7. Paketteki verilerin sıra numarası
  8. Verileri onayla
  9. Pencere boyutu
  10. paket uzunluğu

İlk alan ( 17:00: 25.369138 ) sisteminizin paketi gönderdiği veya aldığı zaman damgasını görüntüler. Kaydedilen saat, sisteminizin yerel saatinden alınır.

xbox one denetleyicisi iki kez yanıp sönüyor ve kapanıyor

İkinci ve üçüncü alanlar, kullanılan arabirimi ve paketin akışını belirtir. Yukarıdaki fragmanda, wlp0s20f3 kablosuz arabirimin adıdır ve Dışarı paket akışıdır.

Dördüncü alan, ağ protokolü adıyla ilgili bilgileri içerir. Genel olarak, iki protokol bulacaksınız- IP ve IP6 , burada IP, IPV4'ü belirtir ve IP6, IPV6 içindir.

Sonraki alan, kaynak ve hedef sistemin IP adreslerini veya adını içerir. IP adreslerini port numarası takip eder.

Çıktıdaki altıncı alan, TCP bayraklarından oluşur. tcpdump çıktısında kullanılan çeşitli bayraklar vardır.

Bayrak AdıDeğerAçıklama
GÖRMESBağlantı başladı
SONFBağlantı tamamlandı
İTMEKPVeri aktarılır
RSTrBağlantı sıfırlandı
ne yazık ki.teşekkür

Çıktı ayrıca birkaç TCP bayrağının bir kombinasyonunu da içerebilir. Örneğin, BAYRAK [f.] FIN-ACK paketi anlamına gelir.

Çıktı snippet'inde daha ileri gidildiğinde, sonraki alan sıra numarasını içerir ( sıra 196:568 ) paketteki veriler. İlk paket her zaman pozitif bir tamsayı değerine sahiptir ve sonraki paketler veri akışını iyileştirmek için göreli sıra numarasını kullanır.

Sonraki alan onay numarasını içerir ( geri 1 ) veya basit Ack numarası. Göndericinin makinesinde yakalanan paketin onay numarası olarak 1 vardır. Alıcı tarafında, Ack numarası bir sonraki paketin değeridir.

Çıktıdaki dokuzuncu alan, pencere boyutunu ( 309 kazanmak ), alıcı arabelleğinde bulunan bayt sayısıdır. Maksimum Segment Boyutu (MSS) dahil olmak üzere pencere boyutunu izleyen birkaç başka alan vardır.

son alan ( uzunluk 33 ) tcpdump tarafından yakalanan toplam paketin uzunluğunu içerir.

3. Yakalanan Paket Sayısını Sınırlayın

tcpdump komutunu ilk kez çalıştırırken, siz bir kesme sinyali geçene kadar sistemin ağ paketlerini yakalamaya devam ettiğini fark edebilirsiniz. kullanarak önceden yakalamak istediğiniz paket sayısını belirterek bu varsayılan davranışı geçersiz kılabilirsiniz. -C bayrak.

tcpdump --interface any -c 10

Yukarıda bahsedilen komut, herhangi bir aktif ağ arayüzünden on paket yakalayacaktır.

4. Paketleri Alanlara Göre Filtreleyin

Bir sorunu giderirken, terminalinizde büyük bir metin bloğu almak bunu kolaylaştırmaz. İşte burada tcpdump'taki filtreleme özelliği devreye giriyor. Paketleri ana bilgisayar, protokol, bağlantı noktası numarası ve daha fazlası dahil olmak üzere çeşitli alanlara göre filtreleyebilirsiniz.

Yalnızca TCP paketlerini yakalamak için şunu yazın:

tcpdump --interface any -c 5 tcp

Benzer şekilde, çıktıyı port numarasını kullanarak filtrelemek istiyorsanız:

tcpdump --interface any -c 5 port 50

Yukarıda belirtilen komut, yalnızca belirtilen bağlantı noktasından iletilen paketleri alır.

Belirli bir ana bilgisayar için paket ayrıntılarını almak için:

tcpdump --interface any -c 5 host 112.123.13.145

Belirli bir ana bilgisayar tarafından gönderilen veya alınan paketleri filtrelemek istiyorsanız, kaynak veya vesaire komutuyla tartışın.

tcpdump --interface any -c 5 src 112.123.13.145
tcpdump --interface any -c 5 dst 112.123.13.145

Mantıksal operatörleri de kullanabilirsiniz. ve ve veya iki veya daha fazla ifadeyi bir araya getirmek için. Örneğin, kaynak IP'ye ait paketleri almak için 112.123.13.145 ve bağlantı noktasını kullan 80 :

tcpdump --interface any -c 10 src 112.123.13.145 and port 80

Karmaşık ifadeler kullanılarak birlikte gruplandırılabilir parantez aşağıdaki gibi:

tcpdump --interface any -c 10 '(src 112.123.13.145 or src 234.231.23.234) and (port 45 or port 80)'

5. Paket İçeriğini Görüntüle

kullanabilirsiniz -İLE ve -x ağ paketinin içeriğini analiz etmek için tcpdump komutuyla işaretler. NS -İLE bayrak anlamına gelir ASCII biçim ve -x belirtir onaltılık biçim.

Sistem tarafından yakalanan bir sonraki ağ paketinin içeriğini görüntülemek için:

tcpdump --interface any -c 1 -A
tcpdump --interface any -c 1 -x

İlgili: Paket Kaybı Nedir ve Nedeni Nasıl Düzeltilir?

6. Yakalama Verilerini Dosyaya Kaydetme

Yakalama verilerini referans amacıyla kaydetmek istiyorsanız, tcpdump size yardımcı olmak için orada. sadece geç -içinde çıktıyı ekranda görüntülemek yerine bir dosyaya yazmak için varsayılan komutla işaretleyin.

tcpdump --interface any -c 10 -w data.pcap

NS .pcap dosya uzantısı anlamına gelir paket yakalama veri. Ayrıca, yukarıda belirtilen komutu kullanarak ayrıntılı modda da verebilirsiniz. -v bayrak.

tcpdump --interface any -c 10 -w data.pcap -v

okumak için .pcap tcpdump kullanarak dosya, -r bayrak ve ardından dosya yolu. NS -r anlamına gelir Okumak .

youtube ne kadar bant genişliği kullanır
tcpdump -r data.pcap

Dosyaya kaydedilen paket verilerinden ağ paketlerini de filtreleyebilirsiniz.

tcpdump -r data.pcap port 80

Linux'ta Ağ Trafiğini İzleme

Size bir Linux sunucusunu yönetme görevi verildiyse, tcpdump komutu cephaneliğinize dahil etmek için harika bir araçtır. Ağınızda iletilen paketleri gerçek zamanlı olarak yakalayarak ağla ilgili sorunları kolayca çözebilirsiniz.

Ancak tüm bunlardan önce cihazınızın internete bağlı olması gerekir. Linux'a yeni başlayanlar için komut satırı üzerinden Wi-Fi ile bağlantı kurmak bile biraz zor olabilir. Ancak doğru araçları kullanıyorsanız, bu çok kolay.

Paylaş Paylaş Cıvıldamak E-posta Nmcli ile Linux Terminali Üzerinden Wi-Fi'ye Nasıl Bağlanılır

Linux komut satırı üzerinden bir Wi-Fi ağına bağlanmak ister misiniz? İşte nmcli komutu hakkında bilmeniz gerekenler.

Sonrakini Oku
İlgili konular
  • Linux
  • Güvenlik
  • Ağ Adli Tıp
Yazar hakkında Deepesh Sharma(79 Makale Yayımlandı)

Deepesh, MUO'da Linux için Junior Editördür. Tüm yeni gelenlere keyifli bir deneyim sunmayı amaçlayan Linux hakkında bilgilendirici kılavuzlar yazıyor. Filmlerden emin değilim, ama teknoloji hakkında konuşmak istersen, o senin adamın. Boş zamanlarında onu kitap okurken, farklı müzik türleri dinlerken veya gitar çalarken bulabilirsiniz.

Deepesh Sharma'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın