E-posta sunucuları arasında şifreli kalkanlardan geçen zarfları ve DNS yönlendirme yollarını gösteren teknik çizim.

E-postalar Neden Spama Düşer? SPF, DKIM ve DMARC Rehberi

E-postalar neden spama düşer sorusunun yanıtı eksik DNS yapılandırmasıdır. SPF, DKIM ve DMARC ayarlarıyla teslim edilebilirliği nasıl artıracağınızı öğrenin.

"E-postalar neden spama düşer?" sorusunun en yaygın ve temel yanıtı, alıcı sunucuların (Gmail, Outlook, Yahoo vb.) gönderici kimliğinizi doğrulayamamasıdır. E-posta altyapısının temelini oluşturan SMTP protokolü, doğası gereği kimlik doğrulama mekanizmalarından yoksundur; yani herkes herhangi bir e-posta adresi adına ileti göndermeyi deneyebilir. Bu zafiyeti kapatmak ve spam göndericilerini engellemek için büyük e-posta sağlayıcıları artık SPF, DKIM ve DMARC DNS kayıtlarını zorunlu tutmaktadır. Bu kayıtlar eksikse veya hatalı yapılandırılmışsa, iletileriniz ne kadar temiz ve meşru olursa olsun spam klasörünü boylar, hatta bazen sunucu tarafından doğrudan reddedilir.

Bu yazıda, bir sunucu yöneticisi olarak e-posta teslim edilebilirliğini (deliverability) en üst düzeye çıkarmak için uygulamanız gereken adımları, DNS yapılandırmalarının teknik detaylarını ve sık yapılan hataları inceleyeceğiz. Ayrıca, modern bir e-posta sunucusu kurarken bu süreçleri nasıl otomatize edebileceğinizi göreceğiz.

E-posta Kimlik Doğrulaması Neden Bu Kadar Önemli?

Geçmişte e-posta sunucuları, gelen iletileri yalnızca IP adresinin kara listede (blacklist) olup olmadığına ve içeriğinde spam kelimeler geçip geçmediğine bakarak değerlendirirdi. Ancak günümüzde oltalama (phishing) saldırılarının artmasıyla birlikte odak noktası "kimlik doğrulama" kaydı.

Büyük sağlayıcılar, kendi kullanıcılarını korumak için gönderen alan adının (domain) gerçekten o sunucuya yetki verip vermediğini bilmek ister. Eğer sizin alan adınız sirketiniz.com ise, Gmail'in sunucuları şu üç soruyu sorar:

  1. Bu IP adresi, sirketiniz.com adına e-posta göndermeye yetkili mi? (SPF)
  2. Bu ileti yoldayken değiştirilmiş mi, gerçekten sirketiniz.com sunucusundan mı çıkmış? (DKIM)
  3. Eğer ilk iki sorudan biri başarısız olursa, bu iletiye ne yapmalıyım? (DMARC)

Bu üçlü sacayağı tam olarak kurulmadığında, itibarınız (reputation) düşer ve iletileriniz spama düşer.

SPF (Sender Policy Framework) Nedir ve Nasıl Ayarlanır?

SPF, alan adınız adına hangi IP adreslerinin veya sunucuların e-posta gönderebileceğini belirten, DNS üzerinde tutulan bir TXT kaydıdır. Alıcı sunucu, iletiyi teslim alırken zarf göndericisine (Envelope From) bakar ve o alan adının SPF kaydını sorgular. İletiyi gönderen IP adresi bu listede yoksa, SPF doğrulaması başarısız olur.

Basit bir SPF kaydı şu şekilde görünür:

v=spf1 mx a ip4:192.0.2.50 ~all

Bu kaydın anlamı şudur:

  • v=spf1: Bu bir SPF kaydıdır.
  • mx: Alan adının MX kayıtlarında belirtilen sunucular e-posta gönderebilir.
  • a: Alan adının A kaydındaki IP adresi e-posta gönderebilir.
  • ip4:192.0.2.50: Bu spesifik IPv4 adresi e-posta gönderebilir.
  • ~all: (Soft fail) Listede olmayan IP'lerden gelen iletileri kabul et ama şüpheli (spam) olarak işaretle. -all (Hard fail) kullanırsanız, listede olmayan IP'lerden gelen iletiler doğrudan reddedilir.

Sık Yapılan SPF Hataları

  • Birden Fazla SPF Kaydı: Bir alan adında yalnızca bir adet v=spf1 ile başlayan TXT kaydı bulunabilir. Eğer hem Google Workspace kullanıyor hem de web sunucunuzdan bildirim gönderiyorsanız, iki ayrı kayıt açmak yerine bunları tek bir kayıtta (v=spf1 include:_spf.google.com ip4:192.0.2.50 ~all) birleştirmelisiniz.
  • DNS Sorgu Sınırını Aşmak: SPF mekanizması, include, a, mx gibi yönergelerle başka alan adlarını işaret ettiğinde arka planda DNS sorguları çalışır. Bu sorguların toplam sayısı 10'u geçemez. Geçerse SPF doğrulaması kalıcı hata (PermError) verir.

DKIM (DomainKeys Identified Mail) ile İletileri İmzalamak

SPF yalnızca IP adresini doğrular. Ancak paylaşımlı bir sunucuda barınıyorsanız veya iletileriniz başka sunucular üzerinden (forwarding) geçiyorsa SPF tek başına yetersiz kalır. İşte burada DKIM devreye girer.

DKIM, e-postalarınızın başlıklarına (header) ve gövdesine kriptografik bir dijital imza ekler. Bu sistem asimetrik şifreleme mantığıyla çalışır:

  1. Sunucunuzda (örneğin Postfix üzerinde) gizli bir anahtar (private key) oluşturulur.
  2. Bu gizli anahtarın eşi olan açık anahtar (public key), DNS'te bir TXT kaydı olarak yayınlanır.
  3. Sunucunuzdan çıkan her e-posta, gizli anahtarla imzalanır.
  4. Alıcı sunucu, DNS'teki açık anahtarı çeker ve imzayı doğrular. İmza geçerliyse, iletinin yolda değiştirilmediği ve gerçekten sizin sunucunuzdan çıktığı kanıtlanmış olur.

Bir DKIM DNS kaydı genellikle şu formattadır (örnek seçici: default):

default._domainkey.sirketiniz.com IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBC..."

DKIM yapılandırması, sunucu tarafında anahtar yönetimi gerektirdiği için geleneksel yöntemlerle yapılandırması zahmetli olabilir. Anahtarların belirli periyotlarla (örneğin yılda bir) değiştirilmesi (key rotation) güvenlik açısından önerilir.

DMARC (Domain-based Message Authentication, Reporting, and Conformance)

DMARC, SPF ve DKIM'in patronudur. Alıcı sunucuya şu talimatı verir: "Eğer SPF ve DKIM denetimlerinden biri veya her ikisi birden başarısız olursa, bu iletiye ne yapmalıyım?"

Ayrıca DMARC, "Hizalama" (Alignment) adı verilen çok kritik bir kontrol daha yapar. Kötü niyetli kişiler, zarf göndericisini (Envelope From) kendi sahip oldukları geçerli bir alan adı yapıp, e-postanın "Kimden" (Header From) kısmına [email protected] yazabilirler. Bu durumda SPF ve DKIM geçerli olsa bile, kullanıcı sahte bir gönderici görür. DMARC, zarf göndericisi ile "Kimden" adresinin birbiriyle eşleşmesini zorunlu kılar.

Temel bir DMARC kaydı _dmarc.sirketiniz.com adresine TXT kaydı olarak eklenir:

v=DMARC1; p=quarantine; rua=mailto:[email protected];
  • p=none: Yalnızca izleme modu. Başarısız iletiler normal şekilde teslim edilir ama size rapor gönderilir. İlk kurulumda bu mod önerilir.
  • p=quarantine: Başarısız iletileri spam klasörüne at.
  • p=reject: Başarısız iletileri sunucu kapısında reddet. En güvenli moddur ancak SPF ve DKIM yapılandırmanızdan %100 emin olmadan bu moda geçmemelisiniz.
  • rua: Alıcı sunucuların günlük XML raporlarını göndereceği e-posta adresidir. Bu raporları inceleyerek alan adınızı kimlerin kullandığını görebilirsiniz.

PTR (Ters DNS) Kaydı Neden Kritik?

DNS kayıtlarında genellikle alan adını IP adresine (A kaydı) yönlendiririz. Ters DNS (Reverse DNS veya PTR) ise IP adresini alan adına çevirir. Alıcı sunucular, size bağlanan IP adresinin PTR kaydını sorgular ve dönen sunucu adının (hostname), bağlantı sırasında verilen HELO/EHLO adıyla eşleşmesini bekler.

Eğer sunucunuzun PTR kaydı yoksa veya varsayılan bir bulut sağlayıcı adında (örneğin ec2-198-51-100-2.compute.amazonaws.com) kalmışsa, birçok katı e-posta sağlayıcısı iletilerinizi anında spama atar veya reddeder.

PTR kaydı, alan adınızın DNS panelinden (Cloudflare, Route 53 vb.) yapılmaz. Sunucuyu kiraladığınız veri merkezinin veya bulut sağlayıcının (Hetzner, DigitalOcean vb.) kontrol panelinden, o IP adresine atanır.

bipanel ile E-posta Teslim Edilebilirliğini Artırmak

Kendi sunucunuzda e-posta barındırmak, yukarıda sayılan protokollerin yanı sıra spam filtreleri, virüs taraması ve kuyruk yönetimi gibi karmaşık bileşenleri yönetmeyi gerektirir. Geleneksel hosting panellerinde bu ayarları manuel yapmak veya ek yazılımlar satın almak zorunda kalabilirsiniz.

bipanel, kendi özel sunucunuzda (Ubuntu, Debian, AlmaLinux, Rocky Linux veya RHEL) barındırdığınız hesaplar için tam teşekküllü bir e-posta altyapısı sunar. Postfix, Dovecot ve Rspamd bileşenleriyle kurulan bu altyapı, teslim edilebilirliği artırmak için varsayılan olarak şu özelliklerle gelir:

Otomatik SPF, DKIM ve DMARC Yönetimi

bipanel'de bir alan adı eklediğinizde veya DNS bölgesini yönettiğinizde, sistem sizin için en uygun SPF, DKIM ve DMARC kayıtlarını otomatik olarak oluşturur. DKIM anahtarları sunucu tarafında güvenli bir şekilde üretilir ve DNS bölgenize eklenir. Eğer DNS'inizi Cloudflare gibi dış bir sağlayıcıda tutuyorsanız, bipanel'in bulut eşitleme özelliği sayesinde bu kayıtlar sağlayıcıya anında gönderilir.

Gönderen Kimliği ve Teslimat Koruması

Giden e-postaların kalitesi, sunucunuzun IP itibarını doğrudan etkiler. bipanel, giden iletilerde SPF, DKIM ve DMARC denetimleri yapar ve gönderen kimliğini korur. Ek olarak:

  • Saatlik Gönderim Sınırları: Hesap başına veya alan adı başına saatlik e-posta gönderim limitleri belirleyerek, olası bir parola sızıntısında sunucunuzun spam merkezine dönüşmesini engellersiniz.
  • Rspamd ile Çift Yönlü Filtreleme: Sadece gelen değil, giden iletiler de spam filtresinden ve ClamAV virüs taramasından geçer. Şüpheli iletiler dışarı çıkmadan durdurulur.
  • Teslim Takibi ve Kuyruk Yönetimi: İletinizin nereye gittiğini, neden dönmediğini veya kuyrukta neden beklediğini panel üzerinden anlık görebilirsiniz. Yüksek oranda geri dönen (bounce) iletilerde sistem yöneticisine uyarı verilir.

SMTP Aktarma (Smarthost) ve Alan Adı Bazlı Yönlendirme

Eğer sunucunuzun bulunduğu veri merkezinin IP bloğu kötü bir itibara sahipse (örneğin bazı ucuz VPS sağlayıcılarında sıkça görülür), e-postalarınızı kendi sunucunuzdan çıkarmak yerine Amazon SES, SendGrid veya Mailgun gibi profesyonel SMTP sağlayıcıları üzerinden aktarmak isteyebilirsiniz.

bipanel Topluluk sürümünde sunucu genelinde SMTP aktarma (smarthost) desteği bulunur. Pro sürümünde ise bunu bir adım öteye taşıyarak Alan Adına Göre SMTP Aktarıcı tanımlayabilirsiniz. Böylece, sunucudaki bazı müşterilerinizin e-postaları genel ağdan çıkarken, kritik öneme sahip müşterilerinizin e-postalarını onlara özel tanımlanmış, itibarı yüksek bir sağlayıcı üzerinden gönderebilirsiniz.

(Not: Docker ve Railway kurulum modlarında e-posta sunucusu, yetkili DNS sunucusu ve FTP bulunmaz. E-posta hizmetlerini kullanabilmek için bipanel'i temiz bir Linux sunucusuna doğrudan kurmanız gerekir.)

Sonuç ve Sonraki Adımlar

E-postalarınızın spama düşmesini engellemek bir şans işi değil, doğru yapılandırma meselesidir. SPF ile IP adreslerinizi yetkilendirmeli, DKIM ile iletilerinizi imzalamalı, DMARC ile politikalarınızı belirlemeli ve PTR kaydınızın doğruluğundan emin olmalısınız. Ayrıca sunucunuzun giden trafiğini izlemek, ele geçirilmiş hesapların spam göndermesini durdurmak için hayati önem taşır.

Tüm bu süreçleri manuel olarak yönetmek saatlerinizi alabilir ve hata yapma riskini artırır. Modern, güvenli ve performanslı bir altyapıya geçmek isterseniz, bipanel'i temiz bir Ubuntu 24.04 LTS (veya tercih ettiğiniz desteklenen bir işletim sistemine) tek bir komutla kurabilirsiniz.

3 barındırma hesabına kadar tamamen ücretsiz olan Topluluk sürümünü hemen denemek için bipanel'i İndirin sayfasını ziyaret edebilir veya daha fazla hesap, gelişmiş yedekleme, çok katmanlı bayilik ve yapay zekâ asistanı gibi özellikler için Fiyatlar sayfamızdan Pro planlarımızı inceleyebilirsiniz.

Sık sorulan sorular

SPF, DKIM ve DMARC kayıtlarının üçü de zorunlu mu?

Evet, günümüzde Gmail ve Yahoo gibi büyük sağlayıcılar, özellikle toplu e-posta gönderenler için bu üç kaydı da zorunlu tutmaktadır. Bu kayıtların eksikliği, itibarınız ne kadar iyi olursa olsun iletilerinizin spama düşmesine veya tamamen reddedilmesine neden olur.

DMARC kaydımı p=reject yaptım, e-postalarım gitmiyor. Neden?

DMARC politikanızı 'reject' (reddet) yapmak, SPF veya DKIM denetimlerinden geçemeyen tüm iletilerin çöpe atılmasını söyler. Eğer SPF kaydınızda eksik IP adresleri varsa veya sunucunuz iletileri DKIM ile imzalamıyorsa, kendi meşru e-postalarınız da reddedilir. Önce 'p=none' ile test etmeniz önerilir.

Ters DNS (PTR) kaydını DNS panelimden ekleyebilir miyim?

Hayır, PTR kaydı genellikle alan adınızın DNS panelinden (örneğin Cloudflare) eklenmez. Bu kayıt, sunucunuzun IP adresinin sahibi olan veri merkezi veya bulut sağlayıcınızın kontrol panelinden ayarlanmalıdır.

bipanel'de DKIM anahtarlarını manuel mi oluşturmam gerekiyor?

Hayır. bipanel'in sunucu kurulumlarında, alan adı eklendiğinde SPF, DKIM ve DMARC kayıtları otomatik olarak oluşturulur. Sunucu, kendi ürettiği gizli anahtarla giden iletileri imzalar ve açık anahtarı DNS bölgenize ekler.

Sunucumun IP adresi kara listede (blacklist), ne yapmalıyım?

Öncelikle sunucunuzdan spam çıkışına neden olan sorunu (zayıf parolalar, zararlı yazılımlar vb.) çözmelisiniz. Eğer IP bloğu sağlayıcıdan dolayı kötüyse, bipanel üzerinden SMTP aktarma (smarthost) yapılandırarak e-postalarınızı Amazon SES veya Mailgun gibi temiz sağlayıcılar üzerinden gönderebilirsiniz.

Bu yazının İngilizcesi: Why Emails Go to Spam: A Guide to SPF, DKIM and DMARC

İlgili yazılar

Tüm yazılar →
İki sunucu ortamı arasında veri akışını ve sorunsuz geçişi temsil eden modern ve temiz bir teknik illüstrasyon.

cPanel Alternatifi: Ajanslar İçin Geçiş ve Maliyet Rehberi

Hesap başına lisans maliyetlerinden kurtulun. Sunucu başına lisanslanan cPanel alternatifi bipanel ile ajansınızı büyütmenin ve kolay geçişin yollarını keşfedin.