
DNSSEC: DNS Güvenlik Uzantıları ile Alan Adı Güvenliği
DNSSEC nedir, DNS zehirlenmesi saldırılarına karşı nasıl koruma sağlar, DNSSEC nasıl etkinleştirilir ve DS kayıtları nasıl yapılandırılır.
DNSSEC Nedir? DNS Güvenlik Uzantıları ve Pratik Etkinleştirme
DNSSEC (DNS Security Extensions), bir alan adının DNS yanıtlarına dijital imza ekleyerek "bu yanıt gerçekten yetkili sunucudan mı geldi?" sorusunu kriptografik olarak çözen bir güvenlik katmanıdır. Yıllarca opsiyonel görünen bu katman, son birkaç yılda phishing ve DNS cache poisoning vakalarının artmasıyla beraber küçük orta ölçekli kurumlar için bile gündelik bir konu hâline geldi. Buyukweb müşterilerinden gelen "DNSSEC açmalı mıyım?" sorusuna verdiğim genel cevabı bu yazıda detaylandırıyorum.
Önce Şunu Netleştirelim: DNSSEC Ne Yapar, Ne Yapmaz?
DNSSEC yapar:
- DNS yanıtının yetkili sunucudan geldiğini doğrular
- Saldırganın MITM ile sahte DNS cevabı enjekte etmesini engeller
- Kullanıcıyı sahte siteye yönlendirme tipi dolandırıcılığı zorlaştırır
DNSSEC yapmaz:
- DNS sorgusunu şifrelemez (içerik açık kalır; bunun için DoH/DoT gerekir)
- Web sitesini saldırılardan korumaz (bu WAF/CDN işi)
- Sunucu tarafı güvenliği sağlamaz (bu firewall/HIDS işi)
DNSSEC sadece "kim cevap verdi" sorusuna kriptografik garanti verir. Bu garanti, başka güvenlik katmanlarına değil, DNS güveninin kendisine dair bir katmandır.
DNS Cache Poisoning: DNSSEC Neden Var?
DNS sorgusu UDP/53 üzerinde imzasız bir protokol olarak çalışıyor. Saldırgan, ağda yeterli pozisyondaysa veya zafiyetli bir resolver bulursa, sahte yanıt enjekte edip hedef domaini farklı bir IP'ye yönlendirebilir. Saldırı senaryosu:
1. Kullanıcı: example.com → ?
2. Saldırgan (yarış kazanır): example.com → 1.2.3.4 (kendi sunucusu)
3. Resolver bunu cache'ler, sonraki sorgular da aynı sahte IP'ye gider
4. Kullanıcı kendini yetkili sitede sanır; phishing/keylog/oturum çalma başlar
DNSSEC, her DNS yanıtına dijital imza (RRSIG) iliştirir. Resolver imzayı bölgenin DNSKEY'i ile doğrular; uyumsuzluk varsa yanıtı reddeder. Chain of trust, kök bölgeden (.) TLD'ye (.com), oradan domaine kadar zincirleme imzalama ile kurulur.
DNSSEC Kayıt Türleri
RRSIG (Resource Record Signature):
- Bir DNS kaydının dijital imzası
- Her A, MX, TXT vb. kaydın kendi RRSIG'i olur
DNSKEY (DNS Public Key):
- Bölgenin açık anahtarı (imzaları doğrulamak için)
- ZSK (Zone Signing Key): Kayıtları imzalar (kısa ömürlü, sık döndürülür)
- KSK (Key Signing Key): Sadece DNSKEY setini imzalar (uzun ömürlü, güçlü)
DS (Delegation Signer):
- Üst bölgede (registrar) bulunan KSK'nın hash özeti
- Chain of Trust'ı buradan kurar
NSEC / NSEC3:
- Var olmayan kayıt için "yok" yanıtının kanıtı
- NSEC3 zone walking saldırısını zorlaştırmak için karma kullanır
Pratik olarak, kendi DNS sunucusunu yöneten müşteriler bu beş kayıtla sürekli temas eder; managed DNS (Cloudflare, registrar paneli) kullananlar ise sadece DS kaydını registrar'a ekleyip işi bitirir.
DNSSEC Sizin İçin Mi? (Dürüst Karar Matrisi)
Buyukweb müşterilerinin büyük çoğunluğu için pratik tavsiye: registrar paneli destekliyorsa açın, BIND/PowerDNS gibi kendi DNS'inizi yönetiyorsanız Tam yapılandırma öncesi otomasyonu olgunlaştırın.
| Senaryo | DNSSEC Tavsiye | Sebep |
|---|---|---|
| Cloudflare + Registrar | ✓ Aç | Tek tık, otomatik anahtar yönetimi |
| Hosting paneline (cPanel) DNS | ⚠ Sağlayıcı destekliyorsa | Manuel rollover karmaşık olabilir |
| Kendi BIND/PowerDNS sunucusu | ⚠ Otomasyon hazır değilse erteleyin | İmza süresi dolduğunda site offline olur |
| Sadece geliştirici/test domaini | ✗ Açmayın | Pratik fayda yok, ek karmaşıklık |
| Bankacılık/devlet/kritik servis | ✓ Mutlaka | KVKK/yasal uyumluluk perspektifi |
Buyukweb perspektifi: Hosting paketlerimizdeki DNS, cPanel WHM üzerinden yönetiliyor. Kendi DNS'inizi VDS üzerinde BIND/PowerDNS ile çalıştırmak istiyorsanız VDS sunucu paketleri bunun için uygun; ama DNSSEC otomasyonunu (anahtar rollover, imza yenileme) özellikle ilk kurulumda ihmal eden müşterilerde aralıklı çözümleme hatası gördük. Tercih etmeyin durumu: küçük blog veya tek kullanıcılı portal için DNSSEC zahmeti getiriyor, riskini taşıyor; managed DNS (Cloudflare ücretsiz planı yeterli) ile aynı korumayı tek tık ile alabiliyorsunuz.
Pratik Etkinleştirme Yöntemleri
Yöntem 1: Registrar Paneli Üzerinden (En Kolay)
Türkiye'deki çoğu registrar (NIC.TR yetkili kayıt operatörleri dahil) DNSSEC için DS kaydı eklemenize izin verir. Adımlar:
- DNS yöneticinizden (Cloudflare/managed DNS) DS kayıt değerini alın
- Registrar panelinde domaininize gidin → "DNSSEC" sekmesi
- Key Tag, Algorithm, Digest Type, Digest alanlarını girin
- Kaydedin → 24-48 saat propagasyon
Cloudflare örneği:
Cloudflare Panel → DNS → Settings → DNSSEC → Enable
→ Key Tag: 12345
→ Algorithm: 13 (ECDSAP256SHA256)
→ Digest Type: 2 (SHA-256)
→ Digest: ABC123...
Bu değerleri registrar panelinde DS kaydı olarak girin.
Yöntem 2: Kendi BIND Sunucunuzda Inline Signing
BIND 9.16+ ile inline signing kullanın; manuel anahtar üretimi/imzalama yerine BIND otomatik yönetir.
# /etc/bind/named.conf.local
zone "ornek.com" {
type master;
file "/etc/bind/zones/ornek.com.zone";
key-directory "/etc/bind/keys";
auto-dnssec maintain;
inline-signing yes;
};
# Anahtar üretimi (KSK ve ZSK)
cd /etc/bind/keys
dnssec-keygen -a ECDSAP256SHA256 -b 256 -n ZONE -f KSK ornek.com
dnssec-keygen -a ECDSAP256SHA256 -b 256 -n ZONE ornek.com
systemctl restart bind9
ECDSAP256SHA256 (algorithm 13) günümüzde RSA-SHA256'ya tercih ediliyor; daha küçük imzalar, daha hızlı doğrulama. BIND yeni kurulumlarda bu varsayılan oluyor.
Yöntem 3: PowerDNS
PowerDNS pdnsutil ile basitleştirilmiş yönetim sunar:
# Zone'a DNSSEC ekle
pdnsutil secure-zone ornek.com
# DS kaydını al
pdnsutil show-zone ornek.com | grep DS
# DS değerini registrar paneline gir
PowerDNS DNSSEC için BIND'a göre daha "set-and-forget" yaklaşım sunar; rollover otomasyonu varsayılan olarak çalışır.
DNSSEC'i Doğrulama
Yapılandırma sonrası mutlaka test edin. Birkaç komut:
# AD (Authentic Data) bayrağını kontrol et
dig +dnssec ornek.com A
# flags: qr rd ra ad ← "ad" görmelisiniz
# DNSKEY ve DS kaydını çek
dig +dnssec ornek.com DNSKEY
dig +dnssec ornek.com DS
# Doğrulama yapan resolver ile test (8.8.8.8 doğrular)
dig @8.8.8.8 +dnssec +multi ornek.com A
# Görsel doğrulama
# https://dnsviz.net/d/ornek.com ← Chain of trust görsel
# https://dnssec-analyzer.verisignlabs.com ← Detaylı analiz
DNSSEC doğru kuruluysa AD (Authentic Data) bayrağı yanıtta görünür. Yoksa DS kaydı eksik veya imzalar geçersizdir.
DNSSEC'in Sık Karşılaşılan Hataları
1. SERVFAIL — En Sık Sorun
Dig çıktısında status: SERVFAIL görüyorsanız büyük ihtimalle DS ile DNSKEY uyumsuz. Çözüm:
# DS kaydını yeniden üret
dnssec-dsfromkey -2 /etc/bind/keys/Kornek.com.+013+xxxxx.key
# Çıktıyı registrar paneline gir
Algorithm uyumsuzluğu da SERVFAIL üretir; KSK'nız RSA ise registrar'a gönderdiğiniz DS de RSA olmalı.
2. İmza Süresi Dolması
DNSSEC imzaları ömürlüdür; varsayılan 30 gün. Otomatik yenilenmiyorsa imza dolduğunda alan adınız çözümlenmez. Inline signing veya auto-dnssec maintain bunu otomatik halleder; ama monitoring şart:
# İmza süresini kontrol
dig +dnssec ornek.com A | awk '/RRSIG/ {print $9, $10}'
# 20260601000000 20260501000000 → 1 Haziran'da dolacak
# Cron ile günlük kontrol + alert
3. Anahtar Rollover Hatası
ZSK veya KSK değiştirirken yanlış sırada yapılırsa zone "imzasız" görünebilir. Kural:
- ZSK rollover (sık): Yeni ZSK ekle → her iki ZSK ile imzala → eski ZSK'yı kaldır
- KSK rollover (yıllık): Yeni KSK üret → DS kaydını registrar'a ekle → 48 saat bekle → eski KSK'yı kaldır
DNSViz veya unbound-host ile ara aşamalarda mutlaka doğrulama yapın.
4. Acil Devre Dışı Bırakma
Bir şey ters giderse ve domain çözülmüyorsa:
- Registrar panelinden DS kaydını kaldır
- Üst bölge TTL'i kadar bekle (genelde 24-48 saat)
- Zone dosyasından DNSSEC yapılandırmasını kaldır
- Sorunu çöz, yeniden etkinleştir
DS kaldırıldığı an chain of trust kırılır; resolver'lar bölgeyi "imzalı kabul etmek zorunda" hissetmez. Bu acil durum kapısıdır.
DNSSEC Performans Etkisi
DNSSEC yanıtları imzasız yanıtlardan büyüktür; UDP 512 byte sınırını sıkça aşar ve TCP fallback gerekebilir. Modern resolver'lar EDNS0 ile bunu yönetir, ama gözlenen pratik:
- Sorgu boyutu 2-4x artar (RRSIG, DNSKEY ek kayıtları sebebiyle)
- İlk sorgu 5-15 ms ek gecikme getirir; cache'lendikten sonra fark yok
- Resolver doğrulama yükü minimal (modern CPU'larda)
E-ticaret sitesi gibi yoğun DNS sorgu yapan platformlarda fark hissedilmez; ama IoT cihazları gibi dar bant senaryolarında ölçüm yapılmalı.
Sık Sorulan Sorular
DNSSEC + Cloudflare yeterli mi, ek bir şey gerekir mi?
Çoğu senaryo için yeterli. Cloudflare DNSKEY/RRSIG yönetimini siz değil onlar yapar; siz sadece DS kaydını registrar'a girmekle sorumlusunuz. Tek tık DNSSEC için en pratik çözüm.
DNSSEC açtım, web sitem hâlâ HTTP. Sorun olur mu?
Olmaz. DNSSEC ile HTTPS iki farklı katman. DNSSEC DNS yanıtını imzalar; HTTPS web içeriğini şifreler. İdeal olan ikisi birden, ama DNSSEC'i HTTPS olmadan da kullanabilirsiniz.
DNSSEC, DNS sorgularımı şifreler mi?
Hayır. İçerik açık kalır. Sorgu içeriğini şifrelemek için DNS-over-HTTPS (DoH) veya DNS-over-TLS (DoT) gerekir. Bunlar farklı katmandır.
Buyukweb hosting paketlerinde DNSSEC var mı?
Hosting paneliniz cPanel WHM ise DNS doğrudan WHM tarafında yönetiliyor; managed DNS değişikliği için Cloudflare gibi bir CDN/DNS önyüzü kullanmanız önerilir. Kendi VDS'inizde BIND/PowerDNS yönetiyorsanız DNSSEC tüm yapılandırma sizin elinizde, VDS paketlerimiz bu kullanım için uygun.
.com.tr domainlerinde DNSSEC çalışıyor mu?
Evet. NIC.TR DS kaydı kabul ediyor; çoğu .tr registrarı kontrol panelinden DNSSEC etkinleştirilebilir. Bazı küçük registrarlarda destek hâlâ ekleniyor; doğrulamak için registrar'ınıza sorun.
KSK'mı kaybettim, ne olur?
Felaket senaryosu. Yeni KSK üretip yeni DS kaydını registrar'a göndermeniz, eski TTL boyunca bekleyip sonra eskilerini temizlemeniz gerekir. Bu süreçte alanınız 24-48 saat aralıklı çözümlenir. Anahtar yedekleme (offline, şifreli) şart.
NSEC vs NSEC3 hangisi tercih edilmeli?
NSEC3 (genellikle yeni kurulumlarda varsayılan). NSEC zone walking saldırısına açık; NSEC3 hash kullanarak bunu zorlaştırır. Eski sistemlerle uyum gerekiyorsa NSEC, aksi durumda NSEC3.
DNSSEC ile e-posta güvenliği (SPF, DKIM, DMARC) ilişkisi ne?
DNSSEC, e-posta TXT kayıtlarının (SPF, DKIM, DMARC) bütünlüğünü garanti eder. Bir saldırgan SPF kaydını sahte cevapla değiştiremez. E-posta güvenliği için DNSSEC bir altyapı katmanıdır.
Sonuç ve Buyukweb Yaklaşımımız
DNSSEC, DNS güveninin temel taşı. Yıllarca "akademik" görünen bu protokol artık registrar paneli ile tek tık etkinleştirilebilir hâlde. Buyukweb tavsiyemiz:
- Cloudflare/managed DNS kullanıyorsanız: Açın, kayıp yok
- Kendi DNS'inizi VDS'de yönetiyorsanız: Önce monitoring/rollover otomasyonunu kurun, sonra açın
- Küçük blog/test: DNSSEC zahmeti getirir; managed DNS daha pratik
Buyukweb tarafında VDS sunucu paketleri BIND/PowerDNS DNSSEC kurulumu için uygun altyapı sağlar; teknik destek ekibimiz kurulum sürecinde rehberlik eder. Hosting tarafındaki DNS ihtiyacı için cPanel paneli yeterli; ek DNS güvenliği için Cloudflare önerilir.
İlgili Büyükweb Hizmetleri
Domain ve DNS altyapısı için Türkiye lokasyonlu paketler:
- VDS Sunucu (kendi DNS sunucunuz için)
- cPanel Web Hosting
- WordPress Hosting
- WHMCS Hosting
- Tüm hosting ve sunucu paketleri
Sorularınız için 0850 302 60 70 numaralı destek hattımıza veya iletişim sayfamıza yazabilirsiniz.
Domain & DNS İlgili Hizmetlerimiz
Bu yazıda anlatılan teknik konuyu profesyonel altyapıyla deneyimleyin
Etiketler:

