Mail Gitmiyor: Exim/Postfix Sorunları
SMTP çalışması yeterli değil. Exim/Postfix queue, SPF/DKIM/DMARC hataları ve IP reputation sorunlarını production tecrübesiyle anlatıyorum.
Mail Sunucularında Görünmeyen Sorun: “Her Şey Çalışıyor Ama Mail Gitmiyor”
Mail sistemleri dışarıdan bakınca en stabil çalışan servislerden biri gibi görünür. SMTP ayağa kalkar, portlar açıktır, gönderim yapılır ve her şey “çalışıyor” hissi verir.
Ama üretim ortamında gerçek tablo genelde farklıdır:
- Mail gider ama spam’e düşer
- Mail gider ama gecikmeli ulaşır
- Mail gider ama bazı sağlayıcılarda tamamen reddedilir
- En kötüsü: hiçbir hata yoktur ama teslimat yoktur
Benim mail sistemleriyle gerçek anlamda uğraşmam da tam olarak bu noktada başladı.
İlk Yanılgı: “SMTP çalışıyorsa sorun yoktur”
İlk kurduğum mail sunucularında klasik yaklaşım şuydu:
telnet mail.domain.com 25
Bağlantı varsa sistem çalışıyor sanıyordum.
Ama production’da mesele bağlantı değil, itibar (reputation) meselesi.
Bir süre sonra şunu fark ettim:
- SMTP açık olması = mail gönderilebilir demek değil
- Mailin gitmesi = deliverability probleminin çözülmesi demek değil
Gerçek Problem: IP Reputation
Bir IP adresi mail dünyasında yeni ise, aslında “güvenilmez” kabul ediliyor.
Özellikle:
- Yeni VPS IP’leri
- Daha önce spam kullanılmış bloklar
- Paylaşımlı hosting altyapıları
çok hızlı şekilde blacklist’e düşebiliyor.
En kritik nokta şu:
Sen düzgün mail gönderiyor olsan bile geçmiş IP davranışı seni etkiler.
SPF, DKIM, DMARC Üçlüsü (Ama Yanlış Yapıldığında Hiçbir Şey İfade Etmez)
Birçok sistemde bu kayıtlar var ama yanlış yapılandırılmış oluyor.
Örnek SPF:
v=spf1 ip4:1.2.3.4 include:_spf.google.com ~all
Burada küçük bir hata bile:
- Gmail deliverability düşüşü
- Outlook spam düşmesi
- Yahoo reject oranı
oluşturabiliyor.
DKIM tarafında ise en sık gördüğüm hata:
- Key rotation yapılmaması
- Selector karmaşası
- Farklı subdomain’lerde uyumsuzluk
DMARC ise çoğu sistemde ya hiç yok ya da “monitoring modunda” bırakılmış oluyor.
Exim / Postfix Queue Gerçeği
Mail sistemlerinde en çok yanlış anlaşılan yer queue mantığıdır.
Birçok kişi şunu sanıyor:
Mail queue’da ise sonra gider.
Gerçekte ise queue şunları anlatır:
- Hedef sunucu reject ediyor olabilir
- Greylisting uygulanıyor olabilir
- DNS resolution sorunu olabilir
- Rate limit’e takılmış olabilirsin
- IP throttling uygulanıyor olabilir
Özellikle Exim tarafında queue büyüdüğünde ilk refleks restart atmak oluyor ama bu genelde hiçbir şeyi çözmez.
Spam Filter Yanlış Anlaşılması
Spam filter sistemleri (Rspamd / SpamAssassin) çoğu zaman “engel” gibi görülüyor ama aslında bir skor sistemi.
Örnek:
- Subject score
- Body score
- Header score
- URL reputation
- Sending IP reputation
Bir mail:
- %90 temiz
- ama tek bir link yüzünden spam’e düşebilir
En Kritik Gerçek: Deliverability Teknik Değil, Davranışsal Bir Şey
Mail sistemlerinde zamanla şunu öğrendim:
SMTP kurulumu %10’dur. Deliverability %90 davranış + geçmiş + trafik pattern’idir.
Örneğin:
- Bir anda 10.000 mail göndermek
- Yeni IP’den yüksek volume çıkmak
- Sürekli değişen sender pattern
- Bounce oranının yükselmesi
hepsi reputation’u etkiler.
Log Okumayı Öğrenmeden Mail Yönetilmez
Mail sistemlerinde en değerli veri loglardır.
Örnek Exim log:
tail -f /var/log/exim/mainlog
Burada aslında şunu görürsün:
- reject reason
- remote SMTP response
- greylisting delay
- policy rejection
Ama en önemli şey:
Pattern okumayı öğrenmektir.
Tek bir hata değil, tekrar eden davranış önemlidir.
Gerçek Production Sorunu: “Mail Gidiyor Ama Kullanıcı Görmüyor”
En zor debug edilen senaryo budur.
Çünkü:
- SMTP 250 OK döner
- Queue boşalır
- Sistem hata vermez
Ama kullanıcı maili görmez.
Sebep genelde:
- Spam folder
- Quarantine
- Provider filtering (Gmail/Outlook internal)
- Domain reputation
Bu noktada artık sistem değil, dış dünya karar veriyordur.
Çözüm Yaklaşımı: Sistem Değil Ekosistem Yönetimi
Mail altyapısında tek bir sunucu yönetmiyorsun.
Şunları birlikte yönetiyorsun:
- DNS reputation
- IP reputation
- Domain history
- Content scoring
- Sending behavior
- Blacklist monitoring
Yani aslında bir “mail sistemi” değil, bir itibar sistemi yönetiyorsun.
Sonuç
Mail sunucuları dışarıdan bakınca basit görünür ama production’da en zor sistemlerden biridir.
Çünkü burada sorunlar:
- Sessizdir
- Log’da her zaman açık görünmez
- Dış provider’lara bağlıdır
- Davranışa göre değişir
Zamanla şunu öğrendim:
Mail sistemlerinde asıl iş server kurmak değil, güven inşa etmektir.
Yorumlar
İlgili Yazılar
DDoS Saldırısı Değil: Connection Exhaustion Gerçeği
DDoS sanılan birçok sistem problemi aslında connection exhaustion kaynaklıdır. CPU normalken site neden çöker? Gerçek production deneyimi.
3 dkGenelNginx Rate Limiting Gerçek Kullanıcıları Neden Engeller?
Nginx rate limiting yanlış yapılandırıldığında gerçek kullanıcıları engelleyebilir. False positive sebepleri ve doğru yapılandırmayı anlatıyorum.
3 dkGenelCloudflare Origin IP Gizleme: Gerçek Güvenlik Yöntemleri
Cloudflare origin IP gizleme doğru yapılandırılmazsa güvenlik açığı oluşur. Reverse proxy bypass, firewall ve DNS hatalarını gerçek deneyimle anlatıyorum.
2 dk