Nmap (Network Mapper), bir ağdaki hangi cihazların ayakta olduğunu, hangi portların açık olduğunu ve bu portlarda hangi servislerin çalıştığını keşfetmek için kullanılan ücretsiz ve açık kaynaklı bir ağ tarama aracıdır. Sistem yöneticileri kendi ağlarının envanterini çıkarmak, güvenlik ekipleri ise yetkili testlerde saldırı yüzeyini haritalamak için Nmap'i kullanır.
Nmap, Gordon Lyon (takma adıyla Fyodor) tarafından geliştirilmiş, uzun yıllardır aktif olarak bakımı yapılan bir komut satırı aracıdır. Grafik arayüzlü sürümü olan Zenmap da mevcuttur. Bu rehberde Nmap'in ne işe yaradığını, nasıl kurulacağını ve ilk taramanı nasıl yapacağını yeni başlayan biri gözünden ele alıyoruz.
Nmap ne işe yarar?
Nmap, bir ağ hakkında "kim var, hangi kapılar açık, arkalarında ne çalışıyor" sorularına yanıt verir. Temel olarak üç iş yapar: ağdaki canlı cihazları bulur (host keşfi), her cihazdaki açık portları listeler (port taraması) ve bu portlardaki servis ile sürüm bilgisini tahmin eder (servis tespiti). Bu bilgiler bir sistemin dijital "yüzeyini" ortaya çıkarır; yani dışarıdan erişilebilir noktaları gösterir.
Port nedir, neden taranır?
Port, bir cihazdaki farklı ağ servislerini birbirinden ayıran numaralı bir kapıdır (0-65535 arası). Örneğin web sunucuları genelde 80 ve 443, SSH 22, veritabanları ise kendi portlarını dinler. Port taraması, bu kapılardan hangilerinin açık ve dinlemede olduğunu tespit eder. Bir port açıksa, arkasında iletişime hazır bir servis var demektir; bu da hem yönetim hem de güvenlik açısından bilinmesi gereken bir bilgidir.
Nmap nasıl kurulur?
Nmap; Linux, Windows ve macOS için ücretsizdir. Kali Linux ve Parrot gibi güvenlik odaklı dağıtımlarda genellikle önceden yüklü gelir. Kurulum çoğu sistemde tek komutla yapılır:
# Debian / Ubuntu / Kali
sudo apt update && sudo apt install nmap
# Fedora
sudo dnf install nmap
# macOS (Homebrew ile)
brew install nmap
Windows için resmi nmap.org sitesindeki kurulum sihirbazını (Zenmap dahil) kullanabilirsin. Kurulumu doğrulamak için nmap --version komutunu çalıştırman yeterli.
Nmap ile ilk taramanı nasıl yaparsın?
En basit tarama, tek bir hedefe komutu vermektir. Nmap projesi, herkesin yasal olarak deneyebilmesi için scanme.nmap.org adında bir test sunucusu sunar; öğrenirken bunu kullanabilirsin. Kendi yerel ağında ise yönlendiricinin (router) IP adresini deneyebilirsin.
# Tek bir hedefi tara
nmap scanme.nmap.org
# Yerel ağdaki canlı cihazları listele (ping taraması)
nmap -sn 192.168.1.0/24
# Belirli portları tara
nmap -p 80,443 scanme.nmap.org
# Tüm 65535 portu tara
nmap -p- 192.168.1.10
Not: 192.168.1.0/24 ifadesi bütün bir yerel alt ağı temsil eder. Kendi ağının aralığını ip a (Linux) veya ipconfig (Windows) ile öğrenebilirsin.
En sık kullanılan Nmap komutları nelerdir?
Aşağıdaki tablo, yeni başlayanların en çok işine yarayacak temel bayrakları (flag) özetler. Bazı taramalar (örneğin ham SYN taraması) yönetici/root yetkisi ister.
| Komut | Ne yapar? | Yetki |
|---|---|---|
nmap -sn hedef | Sadece host keşfi; portları taramaz, kimler ayakta gösterir | Normal |
nmap -p- hedef | Tüm 65535 TCP portunu tarar | Normal |
nmap -sV hedef | Açık portlardaki servis ve sürümü tespit etmeye çalışır | Normal |
nmap -O hedef | İşletim sistemini tahmin etmeye çalışır | Root |
nmap -sS hedef | SYN (yarı-açık) taraması; hızlı ve göze az batar | Root |
nmap -A hedef | Servis, sürüm, OS tespiti ve traceroute'u birleştirir | Root |
nmap -T4 hedef | Tarama hızını artırır (0 en yavaş, 5 en agresif) | Normal |
Tarama sonuçlarındaki port durumları ne anlama gelir?
Nmap her port için bir "durum" bildirir. Bu durumları doğru okumak, sonucu yorumlamanın anahtarıdır. Aşağıdaki tablo en sık karşılaşacağın durumları açıklar.
| Durum | Anlamı |
|---|---|
| open | Port açık ve bir servis bağlantı kabul ediyor |
| closed | Port erişilebilir ama arkasında dinleyen bir servis yok |
| filtered | Bir güvenlik duvarı ya da filtre yanıtı engelliyor; durum belirsiz |
| open|filtered | Nmap açık mı yoksa filtrelenmiş mi olduğuna karar veremedi |
Örneğin bir web sunucusunda 80 ve 443 portlarının open görünmesi normaldir. Beklenmedik bir portun açık olması ise incelenmesi gereken bir bulgudur.
Nmap kullanmak yasal mı?
Nmap'in kendisi tamamen yasal bir araçtır; önemli olan onu nerede kullandığındır. Yalnızca sahibi olduğun ya da açık yazılı izin aldığın sistemleri tara. İzinsiz port taraması Türkiye'de bilişim sistemlerine yetkisiz erişim ve engelleme suçlarını düzenleyen TCK maddeleri kapsamında hukuki sorun doğurabilir. Öğrenirken güvenli kalmak için üç seçeneğin var: kendi kurduğun bir sanal makine, kendi ev ağın veya Nmap'in resmi test sunucusu scanme.nmap.org. Başkalarının ağını "sadece merak ettim" diyerek taramak makul bir gerekçe değildir.
Savunma tarafında Nmap nasıl kullanılır?
Nmap sadece keşif için değil, savunma için de güçlü bir araçtır. Bir sistem yöneticisi olarak kendi sunucularını düzenli tarayarak "dışarıya hangi kapılar açık, açık olmaması gereken bir servis çalışıyor mu?" sorusuna yanıt bulabilirsin. Bu, saldırganın göreceği yüzeyi senin önce görmen demektir. Pratikte savunma refleksleri şunlardır: kullanılmayan servisleri kapat, gereksiz portları güvenlik duvarıyla filtrele, açık servislerin sürümlerini güncel tut ve beklenmedik açık portları alarm olarak değerlendir. Nmap'in taramasını periyodik yaparak envanterindeki değişiklikleri de takip edebilirsin.
Nmap'i öğrenmek, ağ güvenliğine giriş için en pratik başlangıçlardan biridir. Öğrendiklerini güvenli bir ortamda denemek istersen labs.altaysec.com.tr üzerinde tarayıcıdan çalışan laboratuvarlara, gerçek CTF pratiği için ise pratik.altaysec.com.tr antrenman arenasına göz atabilirsin.
Sık Sorulan Sorular
Nmap ücretsiz mi?
Evet. Nmap tamamen ücretsiz ve açık kaynaklıdır; Linux, Windows ve macOS'ta çalışır. Kaynak kodu herkese açıktır ve grafik arayüzü Zenmap de ücretsiz sunulur.
Nmap ile port taraması yapmak suç mu?
Aracın kendisi yasaldır. Ancak izinsiz olarak başkalarının sistemlerini taramak Türkiye'de bilişim suçları kapsamında hukuki sonuç doğurabilir. Yalnızca sahibi olduğun ya da yazılı izin aldığın sistemleri, ya da resmi test hedefi scanme.nmap.org'u tara.
Nmap kullanmak için Kali Linux şart mı?
Hayır. Kali'de önceden yüklü gelir ama Nmap her işletim sisteminde kurulabilir. Ubuntu'da sudo apt install nmap, macOS'ta brew install nmap ya da Windows kurulum sihirbazı yeterlidir.
"filtered" durumu ne anlama gelir?
Bir portun filtered görünmesi, önündeki bir güvenlik duvarı veya paket filtresinin Nmap'in yanıt almasını engellediği anlamına gelir. Bu durumda portun açık mı kapalı mı olduğu net değildir; genellikle koruma katmanının çalıştığının işaretidir.