Kendi sunucunda mail barındırmak ilk bakışta cazip: sınırsız hesap, sınırsız kota, ek ücret yok. Ama işin bir gerçeği var — kendi mail sunucusunu kurmak kolay, maillerin gerçekten karşı tarafa ulaşmasını sağlamak zordur.
Gmail ve Outlook, tanımadıkları bir IP'den gelen maile baştan şüpheyle yaklaşır. Doğru kayıtları kurmazsan mailin ya spam klasörüne düşer ya da hiç teslim edilmez, üstelik bunu sana kimse bildirmez.
Bu rehberde mail sunucusunu kurup teslimat oranını yükseltecek her ayarı yapacağız. Örneklerde
0. Başlamadan önce: kendi mail sunucunu kurmalı mısın?
Dürüst tavsiye:
Kritik nokta şu: bir mailin ulaşmaması, geç ulaşmasından çok daha kötüdür. Müşteri şifre sıfırlama maili alamazsa bunu sana söylemez, sadece gider.
1. PTR (reverse DNS) kaydı — en kritik adım
Bunu yapmadan diğer hiçbir şeyin anlamı yok. PTR kaydı, IP adresinin hangi alan adına ait olduğunu söyler. Kaydı olmayan IP'lerden gelen mailler çoğu sunucu tarafından doğrudan reddedilir.
PTR kaydı sunucuda değil, sunucu sağlayıcının panelinde ayarlanır. Hetzner, DigitalOcean, Contabo gibi sağlayıcıların hepsinde bu ayar vardır; genelde "Reverse DNS" veya "rDNS" başlığı altında bulunur.
Değeri sunucunun hostname'i ile aynı yap:
Kontrol et:
Çıktı
2. Mail domainini ve hesapları oluştur
Panelden yapacaksan Mail → Add Mail Domain yolunu izle. Domain eklerken DKIM support kutucuğunun işaretli olduğundan emin ol.
3. DNS kayıtlarını ekle
Şimdi işin can alıcı kısmı. Bu dört kaydı DNS yönetim panelinde (Cloudflare, sağlayıcın veya HestiaCP'nin kendi DNS'i) oluşturacaksın.
3.1 MX kaydı
Ayrıca
3.2 SPF kaydı
SPF, "bu alan adı adına hangi sunucular mail gönderebilir" listesidir.
Sonundaki
Önemli: Bir alan adında sadece bir tane SPF kaydı olabilir. Harici servis de kullanıyorsan hepsini tek satırda birleştir:
3.3 DKIM kaydı
DKIM, giden her maili dijital olarak imzalar. HestiaCP mail domaini eklerken anahtarı otomatik üretir, sen sadece DNS'e eklersin.
Anahtarı al:
Ya da panelde Mail → Oblifex. Com → DKIM bağlantısından görebilirsin.
Anahtarı kopyalarken satır sonlarını ve boşlukları temizle, tek satır hâlinde yapıştır.
3.4 DMARC kaydı
DMARC, SPF veya DKIM doğrulaması başarısız olursa ne yapılacağını söyler.
Baştan
4. Kurulumu test et
Bu adımı atlama; bir hata varsa maillerin sessizce kaybolur.
4.1 mail-tester. Com
En pratik yöntem. Siteye gir, verdiği adrese kendi sunucundan bir mail gönder, sonra puanı gör. 10 üzerinden 9 ve üstü hedeflemelisin. Puan düşükse hangi kaydın eksik olduğunu satır satır söyler.
4.2 DNS kayıtlarını doğrula
4.3 IP'n kara listede mi?
Yeni aldığın IP daha önce spam gönderen biri tarafından kullanılmış olabilir. Kara listedeyse sağlayıcıdan IP değişikliği iste, kendini temizletmekle uğraşma.
5. Alternatif: SMTP relay kullanmak
IP'n kara listedeyse, sağlayıcın 25. portu kapatıyorsa ya da teslimatı garantiye almak istiyorsan, mailleri güvenilir bir servis üzerinden gönderebilirsin. Mail kutuları yine sende kalır, sadece giden mail dışarıdan çıkar.
Exim'i relay için ayarla:
Şifre dosyasını oluştur:
Popüler seçenekler: Brevo, Mailgun, Amazon SES, Postmark. Çoğunda aylık birkaç bin mail ücretsizdir; forum bildirimleri için fazlasıyla yeter.
6. Mail istemcisi ayarları
Kullanıcılarına vereceğin bilgiler:
Webmail erişimi:
Mail hostname'i için de SSL almayı unutma:
7. Sunucudaki sitelerin mail göndermesi
WordPress ve XenForo gibi yazılımlar varsayılan olarak PHP'nin
Çözüm: SMTP kullan.
WordPress için
XenForo için Admin Panel → Setup → Options → Email options bölümünden gönderim yöntemini SMTP olarak seç ve aynı bilgileri gir.
Sık karşılaşılan hatalar
Mailler Gmail'de spam'e düşüyor
Genelde eksik PTR ya da DKIM'dir. Mail-tester. Com puanına bak, eksik olanı söyler.
Hiç mail gönderilemiyor
Sağlayıcın 25. portu kapatmış olabilir; bulut sağlayıcılarında bu çok yaygındır. Kontrol et:
Bağlanamıyorsan destek talebi aç ya da SMTP relay kullan.
Mail geliyor ama gönderilemiyor
SMTP kimlik doğrulaması hatalıdır. Kullanıcı adı olarak sadece "destek" değil, tam adres "[email protected]" yazılmalı.
"Relay access denied" hatası
Mail domaini panelde tanımlı değil ya da kullanıcı adı yanlış.
Mail kutusu doldu uyarısı
Hesap kotasını artır:
Gelen mail yok, giden var
MX kaydı yanlış ya da henüz yayılmamış.
Mail konusunda sabırlı ol; DNS değişiklikleri hemen yayılmaz, bazı ayarların etkisini görmek 24 saat sürebilir. Test ederken hep aynı Gmail hesabına gönderme, spam filtresi öğrenir ve yanıltıcı sonuç alırsın.
Mail-tester puanınızı ve eksik çıkan maddeleri buraya yazarsanız yardımcı olayım. Sıradaki konu: HestiaCP'de çoklu PHP sürümü ve site yazılımı kurulumu.
Gmail ve Outlook, tanımadıkları bir IP'den gelen maile baştan şüpheyle yaklaşır. Doğru kayıtları kurmazsan mailin ya spam klasörüne düşer ya da hiç teslim edilmez, üstelik bunu sana kimse bildirmez.
Bu rehberde mail sunucusunu kurup teslimat oranını yükseltecek her ayarı yapacağız. Örneklerde
oblifex.com alan adını kullanıyorum.0. Başlamadan önce: kendi mail sunucunu kurmalı mısın?
Dürüst tavsiye:
| Durum | Öneri |
|---|---|
| Kişisel proje, düşük hacim | Kendi sunucun uygun |
| Forum/site bildirim mailleri | SMTP relay servisi kullan (aşağıda anlatıyorum) |
| Şirketin ana iş maili | Google Workspace veya Microsoft 365 kullan |
| Toplu bülten gönderimi | Kesinlikle özel servis kullan, kendi IP'ni yakma |
Kritik nokta şu: bir mailin ulaşmaması, geç ulaşmasından çok daha kötüdür. Müşteri şifre sıfırlama maili alamazsa bunu sana söylemez, sadece gider.
1. PTR (reverse DNS) kaydı — en kritik adım
Bunu yapmadan diğer hiçbir şeyin anlamı yok. PTR kaydı, IP adresinin hangi alan adına ait olduğunu söyler. Kaydı olmayan IP'lerden gelen mailler çoğu sunucu tarafından doğrudan reddedilir.
PTR kaydı sunucuda değil, sunucu sağlayıcının panelinde ayarlanır. Hetzner, DigitalOcean, Contabo gibi sağlayıcıların hepsinde bu ayar vardır; genelde "Reverse DNS" veya "rDNS" başlığı altında bulunur.
Değeri sunucunun hostname'i ile aynı yap:
Kod:
mail.oblifex.com
Kontrol et:
Kod:
dig -x SUNUCU_IP +short
Çıktı
mail.oblifex.com. olmalı. Değilse mail kurulumuna devam etme, önce bunu çöz.2. Mail domainini ve hesapları oluştur
Kod:
v-add-mail-domain oblifex oblifex.com
v-add-mail-account oblifex oblifex.com destek GucluSifre123
v-add-mail-account oblifex oblifex.com iletisim BaskaSifre456
Panelden yapacaksan Mail → Add Mail Domain yolunu izle. Domain eklerken DKIM support kutucuğunun işaretli olduğundan emin ol.
3. DNS kayıtlarını ekle
Şimdi işin can alıcı kısmı. Bu dört kaydı DNS yönetim panelinde (Cloudflare, sağlayıcın veya HestiaCP'nin kendi DNS'i) oluşturacaksın.
3.1 MX kaydı
Kod:
Tip: MX
Ad: @
Deger: mail.oblifex.com
Oncelik: 10
Ayrıca
mail.oblifex.com için sunucu IP'sine bir A kaydı olmalı.3.2 SPF kaydı
SPF, "bu alan adı adına hangi sunucular mail gönderebilir" listesidir.
Kod:
Tip: TXT
Ad: @
Deger: v=spf1 a mx ip4:SUNUCU_IP ~all
Sonundaki
~all yumuşak reddir; listede olmayan bir sunucudan gelen mail şüpheli işaretlenir ama reddedilmez. Her şey oturduktan sonra -all yapabilirsin.Önemli: Bir alan adında sadece bir tane SPF kaydı olabilir. Harici servis de kullanıyorsan hepsini tek satırda birleştir:
Kod:
v=spf1 a mx ip4:SUNUCU_IP include:_spf.google.com ~all
3.3 DKIM kaydı
DKIM, giden her maili dijital olarak imzalar. HestiaCP mail domaini eklerken anahtarı otomatik üretir, sen sadece DNS'e eklersin.
Anahtarı al:
Kod:
cat /home/oblifex/conf/mail/oblifex.com/dkim.pub
Ya da panelde Mail → Oblifex. Com → DKIM bağlantısından görebilirsin.
Kod:
Tip: TXT
Ad: mail._domainkey
Deger: v=DKIM1; k=rsa; p=MIGfMA0GCSq... (cikan uzun anahtar)
Anahtarı kopyalarken satır sonlarını ve boşlukları temizle, tek satır hâlinde yapıştır.
3.4 DMARC kaydı
DMARC, SPF veya DKIM doğrulaması başarısız olursa ne yapılacağını söyler.
Kod:
Tip: TXT
Ad: _dmarc
Deger: v=DMARC1; p=none; rua=mailto:[email protected]; pct=100
p=none İle başla. Bu "reddetme ama bana rapor gönder" demektir. Birkaç hafta raporları izleyip her şeyin doğru çalıştığını gördükten sonra kademeli sertleştir:
Kod:
p=none → p=quarantine → p=reject
Baştan
p=reject yazarsan bir yapılandırma hatası tüm maillerinin reddedilmesine yol açar.4. Kurulumu test et
Bu adımı atlama; bir hata varsa maillerin sessizce kaybolur.
4.1 mail-tester. Com
En pratik yöntem. Siteye gir, verdiği adrese kendi sunucundan bir mail gönder, sonra puanı gör. 10 üzerinden 9 ve üstü hedeflemelisin. Puan düşükse hangi kaydın eksik olduğunu satır satır söyler.
4.2 DNS kayıtlarını doğrula
Kod:
dig TXT oblifex.com +short
dig TXT mail._domainkey.oblifex.com +short
dig TXT _dmarc.oblifex.com +short
dig MX oblifex.com +short
4.3 IP'n kara listede mi?
Kod:
https://mxtoolbox.com/blacklists.aspx
Yeni aldığın IP daha önce spam gönderen biri tarafından kullanılmış olabilir. Kara listedeyse sağlayıcıdan IP değişikliği iste, kendini temizletmekle uğraşma.
5. Alternatif: SMTP relay kullanmak
IP'n kara listedeyse, sağlayıcın 25. portu kapatıyorsa ya da teslimatı garantiye almak istiyorsan, mailleri güvenilir bir servis üzerinden gönderebilirsin. Mail kutuları yine sende kalır, sadece giden mail dışarıdan çıkar.
Exim'i relay için ayarla:
Kod:
nano /etc/exim4/exim4.conf.template
Şifre dosyasını oluştur:
Kod:
nano /etc/exim4/passwd.client
Kod:
*:APIKEY_KULLANICI:APIKEY_SIFRE
Kod:
chmod 640 /etc/exim4/passwd.client
chown root:Debian-exim /etc/exim4/passwd.client
systemctl restart exim4
Popüler seçenekler: Brevo, Mailgun, Amazon SES, Postmark. Çoğunda aylık birkaç bin mail ücretsizdir; forum bildirimleri için fazlasıyla yeter.
6. Mail istemcisi ayarları
Kullanıcılarına vereceğin bilgiler:
| Ayar | Değer |
|---|---|
| Gelen sunucu (IMAP) | mail. Oblifex. Com — Port 993, SSL/TLS |
| Gelen sunucu (POP3) | mail. Oblifex. Com — Port 995, SSL/TLS |
| Giden sunucu (SMTP) | mail. Oblifex. Com — Port 465, SSL/TLS |
| Kullanıcı adı | Tam mail adresi ([email protected]) |
| Kimlik doğrulama | Gerekli |
Webmail erişimi:
https://mail.oblifex.com veya https://oblifex.com/webmailMail hostname'i için de SSL almayı unutma:
Kod:
v-add-letsencrypt-domain oblifex mail.oblifex.com
7. Sunucudaki sitelerin mail göndermesi
WordPress ve XenForo gibi yazılımlar varsayılan olarak PHP'nin
mail() fonksiyonunu kullanır. Bu fonksiyon çoğu zaman kimlik doğrulaması yapmadan gönderdiği için mailler spam'e düşer.Çözüm: SMTP kullan.
WordPress için
WP Mail SMTP eklentisini kur ve şu bilgileri gir:
Kod:
Sunucu: localhost
Port: 587
Sifreleme: TLS
Kullanici: [email protected]
Sifre: hesap sifresi
XenForo için Admin Panel → Setup → Options → Email options bölümünden gönderim yöntemini SMTP olarak seç ve aynı bilgileri gir.
Sık karşılaşılan hatalar
Mailler Gmail'de spam'e düşüyor
Genelde eksik PTR ya da DKIM'dir. Mail-tester. Com puanına bak, eksik olanı söyler.
Hiç mail gönderilemiyor
Sağlayıcın 25. portu kapatmış olabilir; bulut sağlayıcılarında bu çok yaygındır. Kontrol et:
Kod:
telnet smtp.gmail.com 25
Mail geliyor ama gönderilemiyor
SMTP kimlik doğrulaması hatalıdır. Kullanıcı adı olarak sadece "destek" değil, tam adres "[email protected]" yazılmalı.
"Relay access denied" hatası
Mail domaini panelde tanımlı değil ya da kullanıcı adı yanlış.
Mail kutusu doldu uyarısı
Hesap kotasını artır:
Kod:
v-change-mail-account-quota oblifex oblifex.com destek 5000
Gelen mail yok, giden var
MX kaydı yanlış ya da henüz yayılmamış.
dig MX oblifex.com İle doğrula.Mail konusunda sabırlı ol; DNS değişiklikleri hemen yayılmaz, bazı ayarların etkisini görmek 24 saat sürebilir. Test ederken hep aynı Gmail hesabına gönderme, spam filtresi öğrenir ve yanıltıcı sonuç alırsın.
Mail-tester puanınızı ve eksik çıkan maddeleri buraya yazarsanız yardımcı olayım. Sıradaki konu: HestiaCP'de çoklu PHP sürümü ve site yazılımı kurulumu.