zed
Editör
- Katılım
- 9 Eylül 2026
- Mesajlar
- 10
- Tepkime puanı
- 28
- Puan
- 9
Nmap: Sıfırdan Profesyonelliğe Eğitim
1. Nmap Nedir, Ne İşe Yarar?
Nmap (Network Mapper), ağ keşfi ve güvenlik taraması için kullanılan açık kaynaklı, ücretsiz bir araçtır. Gordon Lyon (Fyodor) tarafından 1997'de geliştirilmiştir.
Temel işlevleri:
Host keşfi:
Bir ağda hangi cihazların aktif (ayakta) olduğunu tespit eder.
Port taraması:
Bir cihaz üzerinde hangi portların açık, kapalı veya filtrelenmiş olduğunu bulur.
Servis/versiyon tespiti:
Açık portlarda hangi servisin (HTTP, SSH, FTP vb.) ve hangi versiyonun çalıştığını belirler.
İşletim sistemi tespiti:
Hedef cihazın işletim sistemini tahmin eder.
Script taraması (NSE):
Nmap Scripting Engine ile zafiyet tarama, brute-force testi gibi ileri seviye işlemler yapar
Kimler kullanır: Ağ yöneticileri (envanter çıkarma, güvenlik denetimi), sızma testi (pentest) uzmanları, güvenlik araştırmacıları, sistem yöneticileri.
Temel işlevleri:
Host keşfi:
Bir ağda hangi cihazların aktif (ayakta) olduğunu tespit eder.
Port taraması:
Bir cihaz üzerinde hangi portların açık, kapalı veya filtrelenmiş olduğunu bulur.
Servis/versiyon tespiti:
Açık portlarda hangi servisin (HTTP, SSH, FTP vb.) ve hangi versiyonun çalıştığını belirler.
İşletim sistemi tespiti:
Hedef cihazın işletim sistemini tahmin eder.
Script taraması (NSE):
Nmap Scripting Engine ile zafiyet tarama, brute-force testi gibi ileri seviye işlemler yapar
Kimler kullanır: Ağ yöneticileri (envanter çıkarma, güvenlik denetimi), sızma testi (pentest) uzmanları, güvenlik araştırmacıları, sistem yöneticileri.
Nmap kurulumunu kontrol etmek ve yardım menüsünü görmek için:
bash
nmap --version
nmap -h
Temel komut yapısı şu şekildedir:
bash
nmap [seçenekler] [hedef]
seçenekler: Tarama tipini, hızını, çıktı formatını vb. belirler
hedef: IP adresi, domain adı veya IP aralığı (örn:192.168.1.1 example.com 192.168.1.0/24)
bash
nmap --version
nmap -h
-h (help) komutu tüm parametrelerin kısa bir özetini verir. Detaylı dokümantasyon için resmi kaynak: man nmapTemel komut yapısı şu şekildedir:
bash
nmap [seçenekler] [hedef]
seçenekler: Tarama tipini, hızını, çıktı formatını vb. belirler
hedef: IP adresi, domain adı veya IP aralığı (örn:192.168.1.1 example.com 192.168.1.0/24)
3. Yaygın Basit Nmap Komutları
Komut | Açıklama |
|---|---|
nmap 192.168.1.1 | Hedefe basit bir tarama yapar (varsayılan olarak en yaygın 1000 portu tarar) |
nmap -sn 192.168.1.0/24 | Ping taraması; port taramadan sadece hangi hostların ayakta olduğunu listeler |
nmap -p 80 192.168.1.1 | Sadece belirtilen portu (80) tarar |
nmap -p 1-1000 192.168.1.1 | Belirtilen port aralığını tarar |
nmap -p 192.168.1.1 | Tüm 65535 portu tarar |
nmap -sV 192.168.1.1 | Açık portlardaki servis ve versiyon bilgisini tespit eder |
nmap -O 192.168.1.1 | Hedefin işletim sistemini tahmin etmeye çalışır |
nmap -A 192.168.1.1 | Agresif tarama; OS tespiti, versiyon tespiti, script taraması ve traceroute'u birleştirir |
nmap -v 192.168.1.1 | Verbose (ayrıntılı) çıktı verir, tarama sürecini daha görünür kılar |
nmap -oN sonuc.txt 192.168.1.1 | Sonucu bir dosyaya (normal formatta) kaydeder |
4. Kendi Nmap Komutunu Nasıl Yazarsın?
Kendi ihtiyacına göre komut oluşturmak için mantık şu şekilde işler; parametreleri Lego parçaları gibi düşünebilirsin:
Adım 1 – Tarama tipi seç (nasıl tarasın?)
-sS → SYN taraması (gizli, hızlı, en yaygın kullanılan yöntem, root/admin yetkisi gerekir)
-sT→ TCP connect taraması (yetki gerektirmez, biraz daha yavaş ve tespit edilmesi kolay)
-sU → UDP taraması
Adım 2 – Hangi portlar?
-p 80,443 → belirli portlar
-p-→ tüm portlar
(belirtmezsen varsayılan en popüler 1000 port taranır)
Adım 3 – Ek bilgi toplama ekle mi? (opsiyonel)
-sV→ versiyon bilgisi
-O→ işletim sistemi bilgisi
Adım 4 – Hız/zamanlama ayarla (opsiyonel)
-T0(çok yavaş, gizli) ile -T5 (çok hızlı, agresif) arasında değişir. Genellikle -T4 dengeli bir tercihtir.
Adım 5 – Çıktıyı kaydet mi? (opsiyonel)
-oN dosya.txt (normal), -oX dosya.xml (XML), -oG dosya.gnmap (grepable)
Örnek birleştirme:
bash
nmap -sS -p 1-1000 -sV -T4 -oN rapor.txt 192.168.1.1
Bu komut: SYN taraması yap, 1-1000 arası portlara bak, servis versiyonlarını tespit et, hızlı çalış ve sonucu rapor.txt'ye kaydet.
Adım 1 – Tarama tipi seç (nasıl tarasın?)
-sS → SYN taraması (gizli, hızlı, en yaygın kullanılan yöntem, root/admin yetkisi gerekir)
-sT→ TCP connect taraması (yetki gerektirmez, biraz daha yavaş ve tespit edilmesi kolay)
-sU → UDP taraması
Adım 2 – Hangi portlar?
-p 80,443 → belirli portlar
-p-→ tüm portlar
(belirtmezsen varsayılan en popüler 1000 port taranır)
Adım 3 – Ek bilgi toplama ekle mi? (opsiyonel)
-sV→ versiyon bilgisi
-O→ işletim sistemi bilgisi
Adım 4 – Hız/zamanlama ayarla (opsiyonel)
-T0(çok yavaş, gizli) ile -T5 (çok hızlı, agresif) arasında değişir. Genellikle -T4 dengeli bir tercihtir.
Adım 5 – Çıktıyı kaydet mi? (opsiyonel)
-oN dosya.txt (normal), -oX dosya.xml (XML), -oG dosya.gnmap (grepable)
Örnek birleştirme:
bash
nmap -sS -p 1-1000 -sV -T4 -oN rapor.txt 192.168.1.1
Bu komut: SYN taraması yap, 1-1000 arası portlara bak, servis versiyonlarını tespit et, hızlı çalış ve sonucu rapor.txt'ye kaydet.
5. Profesyonel / Operasyonel Amaçlı Hazır Komutlar
Komut | Açıklama |
|---|---|
nmap -sS -sV -O -p- -T4 hedef | Kapsamlı bir tarama: gizli SYN taraması + versiyon + OS tespiti + tüm portlar |
nmap -sC -sV hedef | Varsayılan NSE scriptlerini çalıştırarak versiyon taramasıyla birlikte temel zafiyet/bilgi toplama yapar |
nmap --script vuln hedef | Bilinen zafiyetleri (vulnerability) tespit etmeye yönelik NSE script kategorisini çalıştırır |
nmap -sU -sS -p U:53,161,T:21-25,80,443 (hedef ip) | Hem UDP hem TCP portlarını aynı anda, belirli port listesiyle tarar |
nmap -Pn -sS -p- (hedef ip) | Ping engelleyen (ICMP bloklu) hedeflerde host'un ayakta olduğunu varsayarak tarama yapar |
nmap -f -T2 hedef | Paketleri parçalayarak (fragmentation) ve yavaş tarayarak IDS/güvenlik duvarlarından kaçınmaya çalışır |
nmap -sV --version-intensity 9 hedef | Versiyon tespitinde en yüksek doğruluk seviyesini zorlar (daha yavaş ama daha kesin) |
nmap -A -T4 -oA tam_rapor hedef | Tüm bilgileri toplar (OS, versiyon, script, traceroute) ve sonucu 3 farklı formatta (normal/XML/grepable) kaydeder |
nmap --script=http-enum hedef | Web sunucusunda dizin/dosya keşfi yapan NSE scriptini çalıştırır |
nmap -sn -PS22,80,443 192.168.1.0/24 | Belirli portlara SYN paketi göndererek ağdaki aktif hostları keşfeder (ICMP bloklu ortamlarda işe yarar) |
6. Bu Profesyonel Komutları Nasıl Kurgularsınız?
Operasyonel seviyede mantık aynı Lego sistemine ek olarak şu katmanları içerir:
Gizlilik/kaçınma katmanı: Hedefte bir IDS/IPS/firewall olabileceğini varsayarsan -f (fragmentasyon), -T0/-T1/-T2 (yavaş tarama), -D RND:10 (decoy/sahte IP'lerle karıştırma), --data-length (paket boyutunu değiştirme) gibi seçenekler eklenir.
Derinlemesine bilgi toplama katmanı: -sC (script) ve --script <kategori> ile NSE scriptlerini devreye sokarsın. Kategoriler: vuln, auth, brute, discovery, safe vb.
Kapsam genişletme katmanı: -p- ile tüm portları, -sU ile UDP'yi de dahil ederek taramanın kapsamını büyütürsün.
Raporlama katmanı: -oA <sim> ile tüm formatlarda (.nmap, .xml, .gnmap) otomatik kayıt alarak sonucu belgelersin, böylece sonradan analiz edebilir veya başka araçlara (örn. Metasploit) aktarabilirsiniz.
Genel format:
bash
nmap [kaçınma seçenekleri] [tarama tipi] [port kapsamı] [script/versiyon/OS] [zamanlama] [çıktı] hedef
Örnek profesyonel bir komut böyle inşa edilir:
bash
nmap -sS -T2 -f -p- -sV --script=vuln -oA rapor 192.168.1.1
Gizlilik/kaçınma katmanı: Hedefte bir IDS/IPS/firewall olabileceğini varsayarsan -f (fragmentasyon), -T0/-T1/-T2 (yavaş tarama), -D RND:10 (decoy/sahte IP'lerle karıştırma), --data-length (paket boyutunu değiştirme) gibi seçenekler eklenir.
Derinlemesine bilgi toplama katmanı: -sC (script) ve --script <kategori> ile NSE scriptlerini devreye sokarsın. Kategoriler: vuln, auth, brute, discovery, safe vb.
Kapsam genişletme katmanı: -p- ile tüm portları, -sU ile UDP'yi de dahil ederek taramanın kapsamını büyütürsün.
Raporlama katmanı: -oA <sim> ile tüm formatlarda (.nmap, .xml, .gnmap) otomatik kayıt alarak sonucu belgelersin, böylece sonradan analiz edebilir veya başka araçlara (örn. Metasploit) aktarabilirsiniz.
Genel format:
bash
nmap [kaçınma seçenekleri] [tarama tipi] [port kapsamı] [script/versiyon/OS] [zamanlama] [çıktı] hedef
Örnek profesyonel bir komut böyle inşa edilir:
bash
nmap -sS -T2 -f -p- -sV --script=vuln -oA rapor 192.168.1.1
7. Yasal Uyarı
Bu konu yalnızca eğitim amaçlıdır.
Nmap güçlü bir araçtır ve yanlış/izinsiz kullanımı ciddi yasal sonuçlar doğurabilir:
Sadece sahip olduğun veya yazılı izin aldığın sistemleri/ağları tara. Türkiye'de bu durum 5237 sayılı Türk Ceza Kanunu'nun 243-245. maddeleri kapsamında (bilişim sistemine izinsiz girme, sisteme zarar verme) suç teşkil edebilir. Diğer ülkelerde de benzer yasalar mevcuttur (örn. ABD'de Computer Fraud and Abuse Act).
İzinsiz tarama, kurban tarafında güvenlik ihlali girişimi olarak algılanır ve hukuki takibe konu olabilir, ceza ve/veya hapis cezasıyla sonuçlanabilir.
Kurumsal ortamda pentest yapıyorsanız mutlaka yazılı bir yetkilendirme belgesi (scope of work / rules of engagement) bulundurmalısınız.
Test ortamları için yasal ve güvenli pratik alanları kullan: kendi kurduğun lab ortamları (VirtualBox/VMware ile), veya bu amaçla var olan platformlar (HackTheBox, TryHackMe, DVWA, Metasploitable gibi).
Nmap güçlü bir araçtır ve yanlış/izinsiz kullanımı ciddi yasal sonuçlar doğurabilir:
Sadece sahip olduğun veya yazılı izin aldığın sistemleri/ağları tara. Türkiye'de bu durum 5237 sayılı Türk Ceza Kanunu'nun 243-245. maddeleri kapsamında (bilişim sistemine izinsiz girme, sisteme zarar verme) suç teşkil edebilir. Diğer ülkelerde de benzer yasalar mevcuttur (örn. ABD'de Computer Fraud and Abuse Act).
İzinsiz tarama, kurban tarafında güvenlik ihlali girişimi olarak algılanır ve hukuki takibe konu olabilir, ceza ve/veya hapis cezasıyla sonuçlanabilir.
Kurumsal ortamda pentest yapıyorsanız mutlaka yazılı bir yetkilendirme belgesi (scope of work / rules of engagement) bulundurmalısınız.
Test ortamları için yasal ve güvenli pratik alanları kullan: kendi kurduğun lab ortamları (VirtualBox/VMware ile), veya bu amaçla var olan platformlar (HackTheBox, TryHackMe, DVWA, Metasploitable gibi).
8. Kaynakça
Nmap Resmi Dokümantasyon:
Nmap Kitap (Ücretsiz online):
Nmap Scripting Engine (NSE) Dokümantasyonu:
Nmap Reference Guide:
İçeriklerden Faydalanmak için Üye olmanız Gerekmektedir. Giriş yap veya üye ol.
Nmap Kitap (Ücretsiz online):
İçeriklerden Faydalanmak için Üye olmanız Gerekmektedir. Giriş yap veya üye ol.
Nmap Scripting Engine (NSE) Dokümantasyonu:
İçeriklerden Faydalanmak için Üye olmanız Gerekmektedir. Giriş yap veya üye ol.
Nmap Reference Guide:
İçeriklerden Faydalanmak için Üye olmanız Gerekmektedir. Giriş yap veya üye ol.
Moderatör tarafında düzenlendi: