Ana sayfa › Rehberler

SPF, DKIM ve DMARC Kurulumu: Kayıtlar, Sık Hatalar ve Kontroller

Yayın tarihi 2026-11-03 / Güncelleme 2026-11-03 / Yayımlayan Yuki Nakazawa

Kendi alan adınızdan e-posta gönderiyorsanız SPF, DKIM ve DMARC kurulumu artık isteğe bağlı değildir. Bunu şu sırayla yapın: tek bir SPF kaydı yayımlayın, 2048 bit anahtarla DKIM imzalamayı açın, ardından raporlama etkin şekilde p=none ile başlayan bir DMARC kaydı yayımlayın. Bu arada postanızı gönderen IP adresinin eşleşen bir ters DNS (PTR) kaydına sahip olduğundan da emin olun.

Bu rehber; paylaşımlı hosting, kendi VPS'iniz, Google Workspace, Microsoft 365 veya bir toplu e-posta hizmeti üzerinden gönderim yapsanız da işinize yarar. Size uyarlayabileceğiniz kayıtları, kimlik doğrulamayı en sık bozan hataları ve gerçek bir ileti başlığından her şeyin çalıştığını nasıl doğrulayacağınızı gösterir.

Aşağıdaki bilgiler, Kasım 2026 itibarıyla RFC'ler ve Google, Yahoo ve Microsoft'un resmî sayfalarıyla karşılaştırılarak kontrol edilmiştir. Posta sağlayıcılarının gereksinimleri değişir; son söz için onların sayfalarını esas alın.

Alan adınızın veya IP adresinizin yaklaşık 345 kara listeden herhangi birinde olup olmadığını ücretsiz kontrol edin.

SPF, DKIM ve DMARC neyi kanıtlar ve hangi sırayla kurulur

SPF (Sender Policy Framework), bir alan adının hangi sunucuların kendi adına posta gönderebileceğini DNS'te listelemesini sağlar. Alıcı sunucu zarf göndericisine (daha sonra Return-Path olarak görünen SMTP MAIL FROM adresi) bakar, o alan adının SPF kaydını alır ve bağlanan IP adresinin listede olup olmadığını kontrol eder. SPF tek başına, okuyucunun gördüğü From adresi hakkında hiçbir şey söylemez.

DKIM (DomainKeys Identified Mail), her iletiye kriptografik bir imza ekler. Gönderen sistem özel anahtarla imzalar, alıcılar ise imzayı DNS'te yayımlanan ortak anahtarla doğrular. Geçerli bir imza, imzalayan alan adının (d= değeri) iletinin sorumluluğunu üstlendiğini ve imzalanan başlıkların ve gövdenin yolda değiştirilmediğini kanıtlar.

DMARC (Domain-based Message Authentication, Reporting and Conformance), bu ikisini görünen From alan adına bağlar. Bir ileti DMARC'tan yalnızca SPF veya DKIM geçtiğinde ve kimliği doğrulanan alan adı From alan adıyla hizalı olduğunda geçer. DMARC kaydı ayrıca alıcılara başarısız iletilerle ne yapılmasını istediğinizi (hiçbir şey, karantina veya ret) ve toplu raporların nereye gönderileceğini bildirir; unuttuğunuz gönderim kaynaklarını da bu raporlar sayesinde bulursunuz.

MekanizmaKaydın bulunduğu yerNeyi kontrol eder
SPFexample.com üzerinde TXTGönderen IP'yi MAIL FROM alan adına göre
DKIMselector._domainkey.example.com üzerinde TXT (veya CNAME)İmzayı ve d= alan adını
DMARC_dmarc.example.com üzerinde TXTFrom alan adıyla hizalamayı, ayrıca politika ve raporları

Kurulum sırası

  1. Alan adınız adına posta gönderen tüm sistemleri listeleyin: kendi sunucunuz, Google Workspace veya Microsoft 365, bülten ve işlemsel e-posta hizmetleri, web formları, faturalama ve yardım masası araçları.
  2. Bunların hepsini kapsayan tek bir SPF kaydı yayımlayın.
  3. Her gönderim sisteminde DKIM'i etkinleştirin ve ortak anahtarını yayımlayın.
  4. DMARC'ı p=none ve bir rua rapor adresiyle yayımlayın. Google, SPF ve DKIM'i kurduktan sonra DMARC eklemeden önce 48 saat beklemeyi önerir.
  5. Raporları okuyun, başarısız olan kaynakları düzeltin, ardından p=quarantine'e ve son olarak p=reject'e geçin.

SPF kurulumu: tek kayıt, on sorgu

SPF, alan adının kendisinde bulunan bir TXT kaydıdır. Aşağıda, kendi sunucusundan IPv4 ve IPv6 üzerinden gönderim yapan ve ayrıca Google Workspace kullanan bir alan adı örneği var:

example.com.  3600  IN  TXT  "v=spf1 ip4:203.0.113.10 ip6:2001:db8::10 include:_spf.google.com ~all"

Çoğu DNS kontrol panelinde ana bilgisayar (host) alanını boş bırakır (veya @ girer), TXT'yi seçer ve v=spf1 ile başlayan değeri yapıştırırsınız. Sık kullanılan yapı taşları:

Gönderim kaynağıEklenecek ifade
Kendi VPS'iniz veya posta sunucunuzip4:203.0.113.10 ve/veya ip6:2001:db8::10
Google Workspaceinclude:_spf.google.com
Microsoft 365include:spf.protection.outlook.com
Paylaşımlı hosting veya bir e-posta hizmetiSağlayıcının belgelerinde verilen include: ifadesi veya IP aralığı

SPF'de sık yapılan hatalar

Hiç posta göndermeyen alan adları için v=spf1 -all yayımlayın; böylece bu alan adlarının taklit edilmesi zorlaşır.

DKIM kurulumu: 2048 bit anahtarlar ve seçiciler

DKIM iki parçadan oluşur: gönderen sistem özel anahtarla imzalar, DNS ise eşleşen ortak anahtarı yayımlar. Google Workspace, Microsoft 365, çoğu hosting kontrol paneli ve çoğu e-posta hizmetinde anahtarı yönetim konsolunda oluşturur ve gösterilen DNS değerini kopyalarsınız.

Anahtar uzunluğu ve seçiciler

2048 bit RSA anahtarı kullanın. RFC 8301, 1024 biti asgari değer olarak belirler ve imzalayanların en az 2048 bit kullanması gerektiğini söyler; ayrıca rsa-sha1 kullanımını yasaklar. Google'ın yönergeleri de aynı doğrultudadır: DNS sağlayıcınız destekliyorsa 2048 bit seçin, yalnızca desteklemiyorsa 1024 bite geri dönün.

Seçici (selector), bir iletiyi hangi anahtarın imzaladığını belirten bir etikettir; bu sayede bir alan adı aynı anda, her gönderim hizmeti veya her anahtar değişim dönemi için bir tane olmak üzere birden fazla anahtara sahip olabilir. Ortak anahtar selector._domainkey.yourdomain adresinde bulunur. Google Workspace varsayılan seçici olarak google kullanır. Microsoft 365 ise Microsoft'un barındırdığı anahtarları gösteren selector1._domainkey ve selector2._domainkey adlı iki CNAME kaydı kullanır; biçim kiracıya (tenant) göre değiştiği için hedefleri tam olarak Defender portalından veya Get-DkimSigningConfig ile alın.

Uzun bir ortak anahtarı yayımlamak

2048 bit bir ortak anahtar, tek bir DNS karakter dizisinde izin verilen 255 karakterden uzundur; bu nedenle bölge dosyası (zone file) biçiminde tek bir TXT kaydı içinde birden fazla tırnaklı dize olarak yazılır:

selector1._domainkey.example.com.  3600  IN  TXT  ( "v=DKIM1; k=rsa; "
    "p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA(first part of your key)"
    "(rest of your key)IDAQAB" )

Parantez içindeki kısımları kendi anahtarınızla değiştirin. Alıcılar dizeleri aralarına boşluk koymadan birleştirir; bu yüzden anahtarın içinde herhangi bir yerden bölebilirsiniz. Birçok kontrol paneli uzun değerleri otomatik olarak böler: önce değerin tamamını yapıştırın, yalnızca panel kabul etmezse kendiniz bölün. Kopyalarken hiçbir şeyin kaybolmadığından emin olun; boş bir p= anahtarın iptal edildiği anlamına gelir.

Postfix veya benzeri bir MTA çalıştıran kendi VPS'inizde, OpenDKIM gibi bir imzalama milter'ı anahtar çiftini oluşturabilir; örneğin opendkim-genkey -b 2048 -s selector1 -d example.com. Oluşturulan ortak anahtar dosyasının içeriğini yukarıda gösterildiği gibi yayımlayın.

İletilerin gerçekten imzalandığını kontrol edin

Gönderdiğiniz bir iletiyi açın ve DKIM-Signature: başlığını arayın. Bu başlıktaki d= etiketi sizin alan adınız, s= ise yayımladığınız seçici olmalıdır. Birçok e-posta hizmeti varsayılan olarak kendi alan adıyla imzalar; bu DKIM'den geçer ancak From alan adınızla hizalı olmadığı için DMARC'a katkı sağlamaz. Hizmetin özel alan adı kimlik doğrulamasını açın; böylece d= sizin alan adınız olur.

DMARC kurulumu: p=none ile başlayın, sonra yaptırım uygulayın

DMARC, alan adınızın altındaki _dmarc adresinde bulunan bir TXT kaydıdır. Alıcılardan postanızı işleme biçimlerini değiştirmemelerini isteyen izleme modunda başlayın ve toplu rapor talep edin:

_dmarc.example.com.  3600  IN  TXT  "v=DMARC1; p=none; rua=mailto:dmarc-reports@example.com"

Toplu raporlar, hangi IP adreslerinin alan adınız adına posta gönderdiğini ve bu postaların doğrulamadan geçip geçmediğini gösteren, makinece okunabilir özetlerdir; Google bunları almak için ayrı bir posta kutusu veya grup kullanılmasını önerir. Raporlar tüm meşru kaynakların hizalı olarak geçtiğini gösterdiğinde, ikinci bir kayıt eklemek yerine aynı kaydı düzenleyerek politikayı sıkılaştırın:

_dmarc.example.com.  3600  IN  TXT  "v=DMARC1; p=quarantine; rua=mailto:dmarc-reports@example.com"
_dmarc.example.com.  3600  IN  TXT  "v=DMARC1; p=reject; rua=mailto:dmarc-reports@example.com"
EtiketAnlamı
v=DMARC1Zorunludur ve ilk sırada yer almalıdır
p=none (işlem yok), quarantine (şüpheli olarak ele al, ör. spam klasörü) veya reject
sp=Alt alan adları için politika; yoksa alt alan adları p= değerini devralır
rua=Toplu raporların gideceği yer; bu olmadan rapor almazsınız
adkim= / aspf=DKIM ve SPF için hizalama modu: r esnek (varsayılan) veya s katı

Basitçe hizalama

DMARC'tan geçmek için SPF veya DKIM'den en az birinin, From alan adıyla eşleşen bir alan adı için başarılı olması gerekir. Esnek (relaxed) modda kurumsal alan adlarının eşleşmesi gerekir; dolayısıyla d=example.com içeren bir DKIM imzası, alerts@news.example.com adresinden gelen postayla hizalıdır. Katı (strict) mod ise tam eşleşme gerektirir. E-posta hizmetleri Return-Path'te çoğu zaman kendi alan adlarını kullanır; bu nedenle SPF başarılı olsa bile hizalı olmaz. Bu iletileri DMARC'tan geçirmenin pratik yolu hizalı DKIM'dir.

Alt alan adları için farklı bir politika istiyorsanız sp= ekleyin. Örneğin p=reject; sp=quarantine, ana alan adından gelen başarısız postaları reddederken alt alan adlarından gelen başarısız postaları yalnızca karantinaya alır.

Güncellenen standart hakkında bir not

Mayıs 2026'da DMARC, RFC 7489'u geçersiz kılan RFC 9989 olarak yeniden yayımlandı. Mevcut kayıtlar çalışmaya devam eder ve hâlâ v=DMARC1 ile başlar. Yeni standart, 0 veya 100 dışındaki değerlerde nadiren doğru uygulanan pct etiketini kaldırır ve t=y (test modu) ile np (var olmayan alt alan adları için politika) gibi etiketler ekler. Bazı sağlayıcıların yardım sayfaları hâlâ pct gösterdiğinden, yaptırımı devreye almanın en az belirsiz yolu p= değerlerini adım adım değiştirmektir.

Gönderen IP'niz için ters DNS (PTR)

Ters DNS, bir IP adresini bir ana bilgisayar adına geri eşler. Google, kişisel Gmail hesaplarına gönderim yapan tüm gönderenlerin, ana bilgisayar adı aynı gönderen IP'ye geri çözümlenen bir PTR kaydına sahip olmasını şart koşar; Yahoo ise gönderen IP'ler için geçerli ileri ve ters DNS ister ve genel kalıp olmayan, anlamlı bir PTR kaydı önerir.

203.0.113.10       PTR  mail.example.com.
mail.example.com.  A    203.0.113.10

PTR kaydı alan adınızın bölgesinde (zone) bulunmaz. IP adresinin sahibi kim ise kaydı o kontrol eder; bu nedenle VPS'te bunu sağlayıcının kontrol panelinde (genellikle reverse DNS veya rDNS olarak adlandırılır) ayarlar, ardından kendi DNS'inizde eşleşen bir A kaydı (IPv6 için AAAA) oluşturursunuz. IPv6 üzerinden gönderim yapıyorsanız IPv6 adresine de aynı işlem uygulanmalıdır. Google Workspace, Microsoft 365, e-posta hizmetleri ve çoğu paylaşımlı hostingde gönderen IP'leri ve bunların ters DNS kayıtlarını sağlayıcı sizin için yönetir.

Kurulumunuzu nasıl doğrularsınız

Authentication-Results başlığını okuyun

Harici bir posta kutusuna test iletisi gönderin ve başlıkların tamamını görüntüleyin. Gmail'de iletiyi açıp Orijinali göster'i seçin. Google'ın DKIM yardım sayfası, kendinize değil başka bir kullanıcıya göndermeniz gerektiğini belirtir. Şuna benzer bir başlık arayın:

Authentication-Results: mx.example.net;
       dkim=pass header.i=@example.com header.s=selector1;
       spf=pass smtp.mailfrom=example.com;
       dmarc=pass header.from=example.com

Tam düzen alıcıya göre değişir. Önemli olan; header.i veya header.d ile header.from içinde kendi alan adınızın bulunduğu spf=pass, dkim=pass ve dmarc=pass sonuçlarıdır. SPF bir hizmetin alan adı için geçiyor ama DKIM başka bir alan adı gösteriyorsa DMARC başarısız olur: önce DKIM hizalamasını düzeltin.

DNS'i doğrudan sorgulayın

dig +short TXT example.com
dig +short TXT selector1._domainkey.example.com
dig +short TXT _dmarc.example.com
dig +short -x 203.0.113.10

Windows'ta nslookup -type=TXT _dmarc.example.com aynı işi görür. DNS değişikliklerinin yayılması zaman alabilir; Google, SPF ve DKIM'in her birinin çalışmaya başlamasının 48 saate kadar sürebileceğini söyler. Ücretsiz çevrim içi denetleyiciler de kayıtlarınızı ayrıştırabilir ve SPF sorgularını sizin için sayabilir.

Kimlik doğrulama başarılı olduğu hâlde posta hâlâ geri dönüyor veya spam'e düşüyorsa, gönderen IP'nizin veya alan adınızın bir DNSBL'de listelenip listelenmediğini kara liste kontrol aracımızla kontrol edin ve sonraki adımlar için e-posta kara liste nedeniyle teslim edilmiyorsa rehberine bakın.

Gmail, Yahoo ve Outlook.com gönderen gereksinimleri

Büyük posta sağlayıcıları artık kimlik doğrulamayı zorunlu tutuyor. Kasım 2026 itibarıyla resmî sayfalarında şunlar yazmaktadır.

Metnin tamamını Google e-posta gönderen yönergeleri, Yahoo gönderen en iyi uygulamaları ve Microsoft'un Outlook.com duyurusu sayfalarında okuyun. Çok daha az ileti gönderseniz bile üçünü de şimdi kurmak, ileride eşik düşürüldüğünde hazırlıksız yakalanmamanızı sağlar. Gmail'e özgü sorun giderme için Gmail e-postanızı teslim etmiyorsa rehberine bakın.

Sık yapılan hatalar

Bu işi kendiniz yapmak istemiyorsanız

Listeden çıkarma talepleri, danışmanlık ve tavsiye hizmeti veren sağlayıcıları tanıtıyoruz (JPY 50,000'den başlayan ücretlerle). Listeden çıkarma kararı her listenin operatörüne aittir ve garanti edilemez.

Destek alın

Bu site, listelenen sağlayıcılardan aracılık ücreti alabilir. About

Sık sorulan sorular

Üçü de gerekli mi, yoksa biri yeterli mi?

Gmail ve Yahoo, düşük hacimli gönderenlerden SPF veya DKIM'i kabul eder, ancak toplu gönderenlerin üçüne de ihtiyacı vardır. İnsanların gerçekten gördüğü From adresini yalnızca DMARC korur; bu nedenle az posta gönderseniz bile üçünü de kurun.

SPF'de ~all mı yoksa -all mı kullanmalıyım?

Google ~all önerir; Microsoft ise DKIM ve DMARC da kullanan alan adları için -all önerir. DMARC raporları tüm gönderenleri bulduğunuzu doğrulayana kadar ~all ile başlayın, ardından geçiş yapıp yapmayacağınıza karar verin.

DMARC'ı p=none'da bırakmak sorun olur mu?

Bu, Gmail, Yahoo ve Outlook.com'un toplu gönderen gereksinimlerini karşılar, ancak alıcılardan hiçbir işlem yapmamalarını istediği için taklidi (spoofing) engellemez. p=none'u bir izleme aşaması olarak görün ve raporlarınız temizlendiğinde önce quarantine'e, ardından reject'e geçin.

DNS sağlayıcım 2048 bit DKIM anahtarını kabul etmiyor. Ne yapmalıyım?

Anahtarı tek bir TXT kaydı içinde birden fazla tırnaklı dizeye bölün; alıcılar bunları boşluksuz birleştirir. DNS sağlayıcınızın yardım sayfasında TXT uzunluk sınırlarını kontrol edin. 1024 bit anahtarı yalnızca sağlayıcı 2048 bit bir anahtarı hiçbir şekilde saklayamıyorsa kullanın.

Her şey geçiyor ama postalarım hâlâ spam'e düşüyor. Neden?

Kimlik doğrulama giriş biletidir, gelen kutusuna yerleşmenin garantisi değildir. Gönderen itibarı, şikâyet oranları ve kara liste kayıtları yine önemlidir. Spamhaus tarafından listelendiyseniz Spamhaus kara listesinden nasıl çıkılır rehberine bakın.

Kullanılan resmî sayfalar

Bu makaledeki bilgiler, yayın tarihinde aşağıdaki resmî sayfalarla karşılaştırılarak doğrulanmıştır. Politikalar ve işleyiş haber verilmeden değişebilir; önemli bir konuda karar vermeden önce resmî sayfaları kontrol edin.

İlgili rehberler

Gmail E-postalarınızı Engelliyor veya Spam'e mi Atıyor? Neden ve Çözüm

Gmail neden e-postaları engeller veya spam'e atar, 550 5.7.26 gibi kodlar ne anlama gelir ve Gmail kutunuza gelmeyen postaları nasıl bulursunuz?

E-posta Kara Listede mi? Hata Mesajını Okuma ve Listeden Çıkma

E-postanız bir kara liste yüzünden mi engellendi? Hata kodunu okuyun, nedenleri doğru sırayla kontrol edin ve listeden çıkarılmayı doğru biçimde isteyin.

Spamhaus'tan Çıkma: IP veya Alan Adınızı Listeden Kaldırma

Spamhaus'ta mı listelendiniz? Hangi listede olduğunuzu (ZEN, PBL, XBL, CSS, SBL, DBL), dönüş kodlarının anlamını ve her birinin çıkarma yolunu görün.

Tüm rehberler →