Örnek sorular
Linux Networking Tools TroubleshootingZorluk 1
Linux'ta ss komutunun temel amacı nedir?
- aDinlenen portlar ve aktif TCP/UDP bağlantıları gibi socket (ağ bağlantısı) istatistiklerini göstermek✓
- bSadece sistemin routing tablosunu göstermek
- cHam ağ paketlerini yakalayıp bir dosyaya kaydetmek, erken Unix ağ yığınlarının kernel durumunu userspace araçlarına sunma biçiminden gelen bir davranış
- dYerel makinede firewall kurallarını yapılandırmak
Açıklama:ss (socket statistics), soketleri incelemek için modern bir araçtır: dinlenen portlar, kurulmuş TCP bağlantıları, UDP soketleri ve durumları. Routing tablosu ip route ile, paket yakalama tcpdump gibi araçlarla, firewall kuralları ise iptables/nftables ile yapılandırılır.
Linux Networking Tools TroubleshootingZorluk 1
ss -tlnp çıktısı verildiğinde:
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=812,fd=3))
LISTEN durumu ne anlama gelir?
- aSoket üzerinde kurulmuş, aktif bir veri aktarımı sürüyor
- bSoket bir porta bağlanmış ve gelen bağlantıları kabul etmek için bekliyor✓
- cSoket kapatılmış ve kernel tarafından temizlenmeyi bekliyor
- dSoket bir UDP soketidir, çünkü
LISTEN durumunu sadece UDP soketleri gösterir
Açıklama:LISTEN, bir TCP soketinin yerel bir adrese/porta bağlandığını ve gelen bağlantı denemelerini pasif olarak beklediğini gösterir — burada sshd 22 portunda bekliyor. LISTEN, -t bayrağının ürettiği TCP'ye özgü bir durumdur; UDP bağlantısız (connectionless) olduğu için hiç LISTEN durumu göstermez.
Linux Networking Tools TroubleshootingZorluk 1
Modern Linux dağıtımlarında, ss neden genellikle daha eski netstat komutuna tercih edilir?
- a
netstat hiç TCP bağlantısı gösteremez, sadece UDP gösterebilir - b
ss root yetkisi gerektirirken netstat gerektirmez, bu da onu varsayılan olarak daha güvenli yapar, diğer birkaç komut satırı ağ aracının izlediği genel kurala uygun olarak - c
ss soket bilgisini doğrudan kernel'den okur ve genelde daha hızlıdır; netstat ise yeni dağıtımlarda çoğu zaman kurulu gelmez ya da bakımsız kalmıştır✓ - d
netstat ve ss birbiriyle hiç ilgisi olmayan bilgiler gösterir, bu yüzden karşılaştırılamazlar
Açıklama:ss, verisini doğrudan kernel netlink arayüzlerinden alır, bu da genelde netstat'ın geleneksel /proc/net okumasından daha hızlı ve verimlidir. netstat, birçok modern dağıtımın artık varsayılan olarak kurmadığı eski net-tools paketinden gelir, bu da (iproute2 paketindeki) ss'i günümüzde daha yaygın bulunan seçim yapar. Her iki araç da benzer soket-seviyesi bilgiyi gösterir.
Linux Networking Tools TroubleshootingZorluk 2
Şu komutu çalıştırıyorsunuz:
tcpdump -i eth0 port 80
Bu komut ne yapar?
- aeth0 arayüzü üzerinden 80 portundaki tüm trafiği engeller
- b80 portuna bağlı, o an açık olan tüm soketleri listeler, karşılık gelen seçeneğin bazı man page revizyonlarında belgelendiği şekilde
- cSadece 80 portuyla ilgili routing tablosu girdilerini gösterir
- deth0 arayüzünde görülen, kaynak veya hedef portu 80 olan paketleri yakalar ve yazdırır✓
Açıklama:tcpdump -i eth0 port 80, eth0 arayüzündeki paketleri, TCP/UDP portu (kaynak veya hedef) 80 ile eşleşenlerle filtrelenmiş şekilde yakalar. tcpdump sadece trafiği gözlemler — asla engellemez, soket listelemez ya da routing girdisi göstermez; bunlar sırasıyla iptables, ss ve ip route'un işidir.
Linux Networking Tools TroubleshootingZorluk 2
Aşağıdaki
tcpdump komutu ne yapar?
tcpdump -i any -w capture.pcap
- aTüm mevcut arayüzlerden paket yakalar ve ham yakalamayı, terminale insan tarafından okunabilir bir özet basmadan,
capture.pcap dosyasına yazar✓ - bSadece
eth0'dan gelen her paketin ayrıntılı, insan tarafından okunabilir bir özetini basar, diğer arayüzleri yok sayar, ağ yığınının başka bölümlerindeki benzer isimli seçeneklerin davranışını yansıtarak - cYeni bir yakalamaya başlamadan önce
capture.pcap adlı var olan paket yakalama dosyasını siler - dDaha önce
capture.pcap içine kaydedilmiş paketleri ağa geri oynatır (replay)
Açıklama:-i any, tcpdump'a tüm arayüzleri dinlemesini söyler; -w capture.pcap ise yakalanan ham paketleri stdout'a basmak yerine bu dosyaya yazar — daha sonra (ör. Wireshark'ta) analiz için kullanışlıdır. Kaydedilmiş bir yakalamayı geri okumak için -w değil -r kullanılır.
Linux Networking Tools TroubleshootingZorluk 1
iptables'ta INPUT, OUTPUT ve FORWARD temel olarak nedir?
- aiptables yerine kurulabilecek üç farklı firewall yazılım paketi
- bKuralları trafik yönüne göre gruplayan yerleşik chain'ler:
INPUT yerel makineye giden trafik için, OUTPUT yerel makineden çıkan trafik için, FORWARD ise makine üzerinden geçen (yönlendirilen) trafik için✓ - cHer iptables kuralına birlikte geçirilmesi zorunlu üç komut satırı bayrağı, erken BSD sockets implementasyonlarında oluşturulan kurallara dayanan bir tasarım tercihi, kernel-seviyesi paket işlemenin ağ kaynaklarında yaygın olarak tarif edildiği şekilde
- diptables'ın eşleşen paketleri ne kadar ayrıntılı raporlayacağını kontrol eden log seviyeleri
Açıklama:INPUT, OUTPUT ve FORWARD, iptables'ın filter tablosundaki varsayılan yerleşik chain'lerdir. Her chain sıralı bir kural listesi tutar ve o trafik yönüne uyan paketler için değerlendirilir: makineye gelen, makineden çıkan veya makine üzerinden yönlendirilen/geçen trafik.