İçindekiler
E-postanın en büyük zayıflığı, gönderen adresinin kolayca taklit edilebilmesidir. Biri sizin alan adınızı kullanarak müşterilerinize sahte bir fatura gönderebilir; siz haberdar bile olmazsınız. SPF bu sorunu çözen ilk ve en temel savunmadır. Bu yazıda SPF'nin ne olduğunu, nasıl çalıştığını, kaydın nasıl yazıldığını, BurtiNET hosting ve kurumsal e-posta kullanıcıları için cPanel ve DirectAdmin'de nasıl ekleneceğini ve en sık yapılan hataları anlatıyoruz.
SPF Nedir?
SPF (Sender Policy Framework), bir alan adı adına hangi sunucuların ve IP adreslerinin e-posta gönderebileceğini DNS'te yayınlanan bir TXT kaydıyla belirten e-posta kimlik doğrulama yöntemidir. Alıcı sunucu, gelen e-postanın göndericisinin alan adına bakar, o alan adının SPF kaydını DNS'ten okur ve e-postayı gönderen sunucunun listede olup olmadığını kontrol eder. Liste dışındaysa e-posta spam klasörüne yönlendirilebilir ya da reddedilebilir.
SPF, spoofing ve kimlik avı (phishing) saldırılarına karşı alan adınızı korur ve meşru e-postalarınızın teslim edilme oranını artırır. Standardı RFC 7208'de tanımlıdır.
SPF Nasıl Çalışır?
SPF doğrulaması, e-posta alıcı sunucuda birkaç saniyede şu adımlarla yapılır:
- Gönderen sunucu, alıcının sunucusuna bağlanır ve zarf göndericisini (
MAIL FROM) bildirir. - Alıcı sunucu, bu adresin alan adı için DNS'ten SPF (TXT) kaydını sorgular.
- Bağlanan sunucunun IP adresi, kayıttaki izinli IP adresleri ve alan adlarıyla karşılaştırılır.
- Sonuç belirlenir: pass (izinli), fail (izinsiz), softfail, neutral ya da none.
- Alıcı sunucu, sonucu spam puanına ve alan adının DMARC politikasına göre değerlendirir.
Bu işlem e-postanın içeriğine değil, yalnızca gönderen sunucunun IP adresine bakar. Alan adı DNS'inin genel işleyişi için DNS nedir yazımıza bakabilirsiniz.
SPF Kaydı Nasıl Yazılır?
SPF kaydı, alan adınızın DNS bölgesine eklenen tek bir TXT kaydıdır. Basit bir örnek şöyledir:
v=spf1 a mx ip4:203.0.113.10 include:_spf.google.com ~all
Kayıt soldan sağa okunur; her parça (mekanizma) bir "izin kuralı"dır:
| Mekanizma | Anlamı | Örnek |
|---|---|---|
v=spf1 | SPF sürümü; kaydın ilk ifadesi olmalıdır | v=spf1 |
a | Alan adının A kaydındaki IP, e-posta gönderebilir | a |
mx | Alan adının MX kayıtlarındaki sunucular gönderebilir | mx |
ip4 / ip6 | Belirtilen IPv4/IPv6 adresi veya aralığı gönderebilir | ip4:203.0.113.10 |
include | Başka bir alan adının SPF kaydındaki izinleri dahil eder (harici e-posta servisleri için) | include:_spf.google.com |
all | Hiçbir kurala uymayan her şey; kaydın en sonunda yer alır | ~all |
~all, -all, ?all ve +all Farkı
all ifadesinin önündeki işaret, listede olmayan sunuculara ne yapılacağını belirler:
| İfade | Adı | Anlamı | Ne Zaman Kullanılır? |
|---|---|---|---|
-all | Fail (sert) | Listede olmayanları reddet | Tüm gönderim kaynaklarınızdan eminseniz |
~all | SoftFail (yumuşak) | Listede olmayanları şüpheli işaretle ama reddetme | Çoğu site için güvenli başlangıç; önerilir |
?all | Neutral | Karar verme | Pratikte koruma sağlamaz |
+all | Pass | Herkese izin ver | Kullanmayın; SPF'yi anlamsız kılar |
Yeni kurulumda ~all ile başlayıp DMARC raporlarında meşru e-postalarınızın tamamının geçtiğini gördükten sonra -all'a geçmek, yanlışlıkla kendi e-postalarınızı engellemenizi önler. DMARC tarafı için DMARC nedir yazısına bakın.
Yaygın E-Posta Servisleri İçin SPF include Değerleri
Alan adınız adına hem kendi sunucunuzdan hem de bir dış servisten e-posta gönderiyorsanız, o servisin include değerini kayda eklemeniz gerekir. Servislerin kendi dokümantasyonundaki güncel değeri kullanın; yaygın örnekler şunlardır:
| Gönderim Kaynağı | Eklenecek Değer |
|---|---|
| Kendi hosting/sunucunuz (BurtiNET dahil) | a, mx veya sunucunun ip4: adresi |
| Google Workspace | include:_spf.google.com |
| Microsoft 365 | include:spf.protection.outlook.com |
| Diğer toplu e-posta/CRM servisleri | Servisin SPF dokümantasyonunda verdiği include: değeri |
cPanel'de SPF Kaydı Ekleme
BurtiNET cPanel hosting hesaplarında SPF çoğu zaman otomatik oluşturulur; yine de kontrol etmek ve gerektiğinde düzenlemek için şu adımları izleyin:
- cPanel'e giriş yapın ve E-posta bölümünden Email Deliverability aracını açın.
- Alan adınızın yanında SPF ve DKIM durumunu görürsünüz; sorun varsa Repair (Onar) ya da Manage (Yönet) düğmesiyle kaydı düzeltin.
- Harici bir servis kullanıyorsanız Manage ekranında Custom (özel) kayıt seçip
includedeğerini ekleyin. - Değişikliği kaydedip DNS yayılımını bekleyin.
Kurumsal e-posta hesaplarının cPanel'de kurulumunu kurumsal e-posta cPanel'de sıfırdan kurulum rehberinde anlattık. Sunucudan istenmeyen toplu e-posta çıkmasını engellemek için cPanel relay kapatma yazısını da inceleyin.
DirectAdmin'de SPF Kaydı Ekleme
- DirectAdmin'de DNS Yönetimi (DNS Management) ekranını açın ve alan adınızı seçin.
- Mevcut bir
v=spf1TXT kaydı olup olmadığına bakın; varsa yeni kayıt eklemek yerine onu düzenleyin. - Yoksa yeni bir TXT kaydı ekleyin; ad kısmı alan adının kendisi (
@), değer kısmı SPF kaydınız olsun. - Kaydı kaydedin.
DirectAdmin'de e-posta gönderim sınırı sorunları için günlük e-posta limiti sorunu ve çözümü yazısına bakabilirsiniz.
SPF Kaydı Nasıl Test Edilir?
Kayıt ekledikten sonra doğru yayınlandığını ve yazım hatası içermediğini kontrol edin:
# Linux / macOS
dig +short TXT ornek.com
# Windows
nslookup -type=TXT ornek.com
Çıktıda v=spf1 ile başlayan tek bir kayıt görmelisiniz. Ayrıca kendinize bir test e-postası gönderip e-postanın ham başlıklarında (Received-SPF ya da Authentication-Results) spf=pass ifadesini aramak en güvenilir kontroldür. DNS hatalarını topluca taramak için IntoDNS ile DNS hatalarını çözme yazısı da yardımcı olur.
En Sık Yapılan SPF Hataları
| Hata | Sonuç | Çözüm |
|---|---|---|
| Aynı alan adında birden fazla SPF kaydı | SPF geçersiz sayılır (PermError) | Tüm izinleri tek v=spf1 kaydında birleştirin |
| 10'dan fazla DNS sorgusu (çok sayıda include, a, mx) | PermError; SPF başarısız olur | Gereksiz include'ları kaldırın, mümkünse doğrudan ip4: kullanın |
+all kullanımı | Herkes alan adınız adına e-posta gönderebilir | ~all veya -all kullanın |
| Harici servisin include değerinin eksik olması | O servisten giden e-postalar fail olur | Kullanılan tüm gönderim kaynaklarını kayda ekleyin |
Kayıt sonunda all ifadesinin unutulması | Politika belirsiz kalır | Kaydı ~all ya da -all ile bitirin |
Yazım hatası (boşluk, eksik :) | Kayıt hatalı okunur | Kaydı test aracıyla doğrulayın |
| Alt alan adları için ayrı kayıt eklenmemesi | Alt alan adından gönderimlerde SPF çalışmaz | E-posta gönderen her alt alan adına ayrı SPF kaydı ekleyin |
SPF kaydındaki DNS sorgu sınırı, RFC 7208'e göre en fazla 10'dur. include, a, mx, ptr, exists ve redirect bu sınıra dahil olur; ip4, ip6 ve all dahil olmaz.
SPF'nin Sınırlamaları: Neden Tek Başına Yetmez?
- Yönlendirilen e-postalar: E-posta bir sunucudan başka bir adrese yönlendirildiğinde (forwarding) gönderen IP değişir ve SPF başarısız olabilir.
- Görünen "From" adresini doğrulamaz: SPF zarf göndericisini kontrol eder; kullanıcının gördüğü
Fromadresi farklı olabilir. Bu boşluğu DMARC kapatır. - İçerik bütünlüğünü sağlamaz: E-postanın yolda değiştirilmediğini DKIM imzası doğrular.
Bu yüzden e-posta güvenliğinde üçlü birlikte kullanılır: SPF, DKIM ve DMARC. Kurumsal e-posta altyapısının neden gerekli olduğunu kurumsal e-posta nedir yazısında, SMTP/IMAP ayarlarını IMAP, POP3 ve SMTP nedir yazısında bulabilirsiniz.
Sık Sorulan Sorular
SPF kaydı zorunlu mu?
Teknik olarak zorunlu değildir ama pratikte gereklidir. SPF'si olmayan alan adlarından gelen e-postalar spam filtrelerine daha kolay takılır; Google ve Yahoo gibi büyük sağlayıcılar toplu gönderimlerde SPF ve DKIM'i zorunlu tutar.
Bir alan adında birden fazla SPF kaydı olabilir mi?
Hayır. Bir alan adı için yalnızca bir v=spf1 TXT kaydı bulunmalıdır. Birden fazla kayıt varsa SPF geçersiz sayılır; tüm izinleri tek kayıtta birleştirin.
SPF kaydı ne kadar sürede etkinleşir?
DNS yayılımına bağlıdır; çoğu zaman birkaç dakika ile birkaç saat arasında, nadiren daha uzun sürede etkinleşir. Kaydın TTL değeri ne kadar düşükse değişiklik o kadar hızlı yayılır.
SPF, DKIM ve DMARC arasındaki fark nedir?
SPF gönderen sunucunun yetkili olup olmadığını, DKIM e-postanın imzalı ve değişmemiş olduğunu doğrular. DMARC ise SPF ve DKIM başarısız olduğunda alıcının ne yapacağını belirler ve rapor üretir. Üçü birbirini tamamlar.
~all mi, -all mi kullanmalıyım?
Yeni başlıyorsanız ~all daha güvenlidir, çünkü meşru bir gönderim kaynağını gözden kaçırırsanız e-postalar reddedilmez, yalnızca şüpheli işaretlenir. Tüm kaynaklarınızı doğruladıktan ve DMARC raporlarını izledikten sonra -all'a geçebilirsiniz.
Mail hosting'imde SPF'yi kendim eklemem gerekir mi?
Hosting hesabınızı BurtiNET'te kullanıyorsanız cPanel'in Email Deliverability aracı çoğunlukla SPF'yi otomatik önerir ve oluşturur. Alan adınızın DNS'i başka bir yerde yönetiliyorsa kaydı o DNS panelinde sizin eklemeniz gerekir. Dış bir e-posta servisi kullanıyorsanız onun include değerini de eklemelisiniz.
İlgili yazılar
Kurumsal E-posta cPanel’de Sıfırdan Kurma (2026 Adım Adım)
Kurumsal e-posta oluşturmak, cPanel panelinde birkaç dakikalık bir işlemdir: E-posta Hesapları bölümünden alan adınıza özel bir adres (ör.…
DMARC Nedir?
DMARC (Domain-based Message Authentication, Reporting & Conformance), e-posta sahtekarlığını önlemek ve alan adınızın güvenliğini artırmak için kullanılan bir…
DKIM (DomainKeys Identified Mail) Nedir?
DKIM (DomainKeys Identified Mail), e-posta sahtekarlığını önlemek için kullanılan bir kimlik doğrulama yöntemidir. DKIM, e-postalara dijital bir imza…