SPF, DKIM ve DMARC nedir? Adım adım kurulum rehberi
Bu üç DNS kaydı, gönderdiğiniz mailin gerçekten sizden geldiğini kanıtlar. Üçü de eksikse mailiniz içeriğine hiç bakılmadan elenir. Bu rehber, kayıtların ne yaptığını ve alan adı panelinize tam olarak neyi yapıştıracağınızı anlatıyor.
E-posta protokolü 1980’lerde, kimsenin yalan söylemeyeceği varsayımıyla tasarlandı. Bu yüzden bir mailin “kimden” alanına istediğinizi yazabilirsiniz — protokol bunu doğrulamaz. SPF, DKIM ve DMARC, bu boşluğu sonradan kapatmak için eklenmiş üç katmandır.
Üçü birlikte şu soruya cevap verir: bu mail gerçekten bu alan adından mı çıktı? Cevap “bilmiyorum” olduğunda alıcı sağlayıcısı en güvenli yolu seçer ve maili spam klasörüne koyar.
SPF — hangi sunucular sizin adınıza gönderebilir?
SPF (Sender Policy Framework), alan adınız adına mail göndermeye yetkili sunucuların listesidir. Alıcı sunucu maili aldığında “bu IP bu alan adı için yetkili mi” diye bakar.
Kayıt nasıl görünür?
DNS bölümünüze TXT türünde, adı `@` (yani alan adının kendisi) olan bir kayıt eklersiniz:
v=spf1 include:_spf.saglayiciniz.com ~all
- `v=spf1` — sürüm; her SPF kaydı böyle başlar.
- `include:` — yetki verdiğiniz sağlayıcı. Hostinger, Google Workspace, Microsoft 365 gibi her sağlayıcının kendi değeri vardır ve panellerinde yazar.
- `~all` — listede olmayan sunuculardan gelen mail şüpheli sayılsın. `-all` daha katıdır (doğrudan reddedilir), `+all` ise kaydı işlevsiz kılar; asla kullanmayın.
DKIM — mailin dijital imzası
DKIM (DomainKeys Identified Mail), giden her maile kriptografik bir imza ekler. İmzayı doğrulayan açık anahtar sizin DNS kaydınızda durur. Alıcı sunucu imzayı anahtarla karşılaştırır; tutuyorsa mailin hem sizden geldiği hem de yolda değiştirilmediği kanıtlanmış olur.
DKIM kaydı, sağlayıcınızın verdiği bir seçici (selector) altında durur ve genellikle şöyle bir ada sahiptir:
secici._domainkey.alanadiniz.com
Değeri uzun bir anahtar dizesidir (`v=DKIM1; k=rsa; p=MIIBIjANBgkq...`). Bu değeri elle yazmayın — kopyalayıp yapıştırın. Tek karakterlik bir eksik, imzanın tamamını geçersiz kılar ve hiçbir yerde hata görünmez.
DMARC — doğrulama tutmazsa ne yapılsın?
SPF ve DKIM “doğru mu” sorusunu cevaplar; DMARC “doğru değilse ne yapayım” sorusunu. Aynı zamanda alan adınız adına gönderilen mailler hakkında rapor almanızı sağlar.
Kayıt
Adı `_dmarc` olan bir TXT kaydı eklersiniz:
v=DMARC1; p=none; rua=mailto:dmarc@alanadiniz.com
| Politika | Ne yapar | Ne zaman kullanılır |
|---|---|---|
| p=none | Hiçbir şey; yalnızca rapor gönderir | İlk kurulumda — başlangıç için doğrusu |
| p=quarantine | Doğrulanmayan maili spam’e koyar | Birkaç hafta sorunsuz rapordan sonra |
| p=reject | Doğrulanmayan maili tamamen reddeder | Kurulum tamamen oturduktan sonra |
Doğrudan `p=reject` ile başlamayın. Unuttuğunuz bir sistem (fatura yazılımı, form eklentisi, CRM) alan adınızdan mail gönderiyorsa o mailler bir anda tamamen kaybolur ve haberiniz olmaz. Birkaç hafta `p=none` ile raporları izleyin, sonra kademeli sıkılaştırın.
Adım adım kurulum
- 1Alan adı sağlayıcınızın panelinde DNS Bölgesi / DNS Zone bölümünü açın.
- 2Mail sağlayıcınızın verdiği SPF `include:` değerini alın ve tek bir TXT kaydı olarak `@` adına ekleyin.
- 3Mail sağlayıcınızın panelinden DKIM’i etkinleştirin; size bir seçici adı ve uzun bir anahtar verecek. TXT olarak ekleyin.
- 4`_dmarc` adında bir TXT kaydı ekleyin, `p=none` ile başlayın.
- 5Değişikliklerin yayılmasını bekleyin ve gerçek bir mail göndererek doğrulayın.
Doğrulama: “yaptım ama görünmüyor” tuzağı
Kaydı doğru eklediğiniz hâlde kontrol araçları “eksik” demeye devam edebilir. Sebebi genellikle hata değil, negatif önbelleklemedir.
DNS’te bir kayıt sorulup bulunamadığında, “bulunamadı” cevabı da önbelleğe alınır (RFC 2308). Süresi alan adının SOA kaydındaki değere bağlıdır ve birçok sağlayıcıda bir saattir. Yani kaydı eklemeden önce bir kez kontrol ettiyseniz, ekledikten sonra bir saat boyunca hâlâ “yok” cevabı alırsınız.
Kurulumdan sonra kontrol listesi
- Alan adında tek bir SPF kaydı var mı?
- SPF `-all` değil `~all` ile mi bitiyor? (Başlangıç için `~all` daha güvenli.)
- DKIM anahtarı tam mı, sonundaki karakterler kesilmiş mi?
- DMARC `p=none` ile mi başladı, rapor adresi çalışıyor mu?
- Gerçek bir alıcıya gönderilen mailin başlıklarında `dkim=pass` ve `spf=pass` yazıyor mu?
Son maddeyi Gmail’de kontrol etmek kolaydır: maili açın, üç noktadan Orijinali göster deyin ve üstteki özet satırına bakın. Üçünün de `PASS` olması gerekir.
Kayıtlar tamamsa ve mailleriniz hâlâ spam’e düşüyorsa sorun kimlikte değil itibarda olabilir; mailleriniz neden spam’e düşüyor yazısındaki diğer on bir sebebe bakın.
Sık sorulanlar
DNS değişikliği ne kadar sürede etkili olur?
Kaydın kendi TTL değerine bağlı olarak genellikle birkaç dakika ile birkaç saat arasında. Ancak sizin gördüğünüz gecikmenin sebebi çoğu zaman yayılma değil, daha önce alınmış “bulunamadı” cevabının önbellekte durmasıdır. Doğrudan DNS-over-HTTPS ile sorgulamak bunu atlar.
Üçünden biri eksik olsa ne olur?
SPF eksikse gönderen sunucunun yetkisi doğrulanamaz. DKIM eksikse mailin yolda değişmediği kanıtlanamaz ve iletilen (forward) maillerde doğrulama kolayca bozulur. DMARC eksikse ilk ikisi tutmadığında ne yapılacağı belirsiz kalır ve alan adınız adına sahte mail gönderilmesine karşı korumasız olursunuz.
Alt alan adı için ayrı kayıt gerekir mi?
SPF ve DKIM için evet — `mail.firmaniz.com` üzerinden gönderim yapıyorsanız o alt alan adının kendi kayıtları olmalıdır. DMARC ana alan adından alt alan adlarına miras kalır; `sp=` etiketiyle alt alan adları için ayrı politika belirleyebilirsiniz.
DMARC raporlarını okumak zorunda mıyım?
Zorunlu değil ama ilk birkaç hafta çok işe yarar: alan adınızdan hangi sistemlerin mail gönderdiğini gösterir. Çoğu firma bu raporda unuttuğu bir servisi keşfeder. Raporlar XML biçimindedir; ücretsiz görselleştirme araçlarıyla okunabilir hâle gelir.
Bunu kendiniz kurmak zorunda değilsiniz
Sektörünüzü ve hedef şehri söyleyin; firmaları ve kurumsal e-posta adreslerini çıkaralım, kendi alan adınızdan kademeli olarak gönderelim. Kurulumu, DNS kayıtlarını ve ısınmayı biz üstleniyoruz.