E-posta Sunucusu Kurmak mı Hazır Servis mi: Kapsamlı Karşılaştırma

Yıllar önce, küçük bir şirkette tek başıma sistem yöneticisi olarak çalışırken müdürüm geldi ve “E-posta sunucumuzu kendimiz kuralım, ayda 50 dolar tasarruf ederiz” dedi. O günden bugüne kadar geçen süreçte hem kendi e-posta sunucumu kurmanın hem de hazır servislerin acısını tatlısını yaşadım. Bu yazıda size o deneyimleri, sayıları ve gerçek dünya senaryolarını aktaracağım.

Meselenin Özü: Ne Arıyorsunuz?

Önce şunu netleştirelim: E-posta altyapısı seçimi teknik bir karar değil, iş kararıdır. Teknik kısım aslında en kolay bölüm. Zor olan kısım; bakım yükü, uyumluluk gereksinimleri, spam filtrasyonu, yedekleme ve gece 2’de gelen “mail gönderemiyorum” telefonları için kimin sorumlu olacağını belirlemektir.

Şunu da baştan söyleyeyim: “Kendi sunucunu kurman daha iyi” ya da “Hazır servis kullan” diye kesin bir cevap vermeyeceğim. Her senaryonun kendine özgü doğru cevabı var.

Kendi E-posta Sunucusu Kurmak

Ne Gerekir?

Minimal bir e-posta sunucusu için ihtiyacınız olan bileşenler şunlardır:

  • MTA (Mail Transfer Agent): Postfix, Exim veya Sendmail. Postfix açık ara en yaygın tercih.
  • MDA (Mail Delivery Agent): Dovecot. IMAP/POP3 için standart seçim.
  • Spam filtresi: SpamAssassin veya Rspamd. Rspamd son yıllarda çok daha performanslı.
  • Antivirüs: ClamAV.
  • Webmail (isteğe bağlı): Roundcube veya Rainloop.
  • DNS kayıtları: SPF, DKIM, DMARC. Bunlar olmadan gönderdiğiniz her mail spam klasörüne düşer.

Ubuntu 22.04 üzerinde temel Postfix kurulumu şöyle başlar:

apt update && apt upgrade -y
apt install postfix dovecot-core dovecot-imapd dovecot-pop3d -y
apt install spamassassin spamc clamav clamav-daemon -y
apt install opendkim opendkim-tools -y

Kurulum sırasında Postfix yapılandırma türü sorulduğunda “Internet Site” seçin ve FQDN’inizi girin.

Postfix Temel Yapılandırması

/etc/postfix/main.cf dosyasında mutlaka yapılandırmanız gereken parametreler:

# /etc/postfix/main.cf temel ayarlar
myhostname = mail.sirketiniz.com.tr
mydomain = sirketiniz.com.tr
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
home_mailbox = Maildir/
smtpd_banner = $myhostname ESMTP
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.sirketiniz.com.tr/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mail.sirketiniz.com.tr/privkey.pem
smtpd_use_tls = yes
smtpd_tls_security_level = may
smtp_tls_security_level = may

DKIM Kurulumu

DKIM olmadan gönderdiğiniz maillerin önemli bir kısmı Gmail, Outlook gibi servislere ulaşmaz ya da spam olarak işaretlenir. Bu adımı atlamayın:

# DKIM anahtar çifti oluşturma
mkdir -p /etc/opendkim/keys/sirketiniz.com.tr
cd /etc/opendkim/keys/sirketiniz.com.tr
opendkim-genkey -s mail -d sirketiniz.com.tr
chown opendkim:opendkim mail.private

# Oluşturulan DNS kaydını görüntüleme
cat mail.txt
# Bu çıktıyı DNS yönetim panelinize TXT kaydı olarak eklemeniz gerekiyor

SPF ve DMARC DNS Kayıtları

DNS yönetim panelinizde şu TXT kayıtlarını oluşturmanız gerekiyor:

# SPF kaydı - sadece kendi sunucunuzdan mail gönderiyorsanız
sirketiniz.com.tr. IN TXT "v=spf1 mx a ip4:SUNUCU_IP_ADRESINIZ ~all"

# DMARC kaydı
_dmarc.sirketiniz.com.tr. IN TXT "v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100"

# DKIM kaydı (opendkim-genkey'den gelen değeri kullanın)
mail._domainkey.sirketiniz.com.tr. IN TXT "v=DKIM1; k=rsa; p=MIGf..."

Dovecot IMAP Yapılandırması

# /etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:~/Maildir

# /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = yes
auth_mechanisms = plain login

# SSL sertifikası
# /etc/dovecot/conf.d/10-ssl.conf
ssl = required
ssl_cert = </etc/letsencrypt/live/mail.sirketiniz.com.tr/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.sirketiniz.com.tr/privkey.pem

Yapılandırma sonrası servisleri başlatın ve otomatik başlangıca alın:

systemctl enable postfix dovecot opendkim spamassassin clamav-daemon
systemctl start postfix dovecot opendkim spamassassin clamav-daemon
systemctl status postfix dovecot

Kendi Sunucunuzun Gerçek Maliyeti

Burada çoğu “self-hosted” savunucusunun görmezden geldiği bir nokta var: toplam sahip olma maliyeti (TCO).

  • Sanal sunucu kirası (4GB RAM, 2 vCPU, 80GB SSD): Ayda 300-500 TL
  • IP itibarı yönetimi için zaman: Aylık 2-4 saat
  • Güvenlik yamaları ve güncellemeler: Aylık 1-2 saat
  • Spam filtresi eğitimi ve bakımı: Aylık 1-2 saat
  • Beklenmedik sorunlar (IP kara liste, servis çökmesi): Yılda 2-3 kez, her biri 3-6 saat

Saat başına maliyetinizi hesaplayın. Kıdemli bir sistem yöneticisinin saati 200-500 TL arasındaysa ve bu işe ayda 8 saat harcıyorsa, “ucuz” çözüm aslında oldukça pahalıya gelebilir.

Kara Liste Sorunu

Bu konuyu ayrıca ele almak istiyorum çünkü gerçekten can sıkıcı. Bir sabah uyandınız, müşterilerinize gönderdiğiniz mailler gitmiyor. Kontrol ettiniz, IP adresiniz Spamhaus’a veya başka bir kara listeye girmiş.

# IP kara liste kontrolü için basit bir script
#!/bin/bash
IP="SUNUCU_IP_ADRESINIZ"
BLACKLISTS=(
    "zen.spamhaus.org"
    "bl.spamcop.net"
    "b.barracudacentral.org"
    "dnsbl.sorbs.net"
)

for BL in "${BLACKLISTS[@]}"; do
    RESULT=$(dig +short ${IP}.${BL} 2>/dev/null)
    if [ -n "$RESULT" ]; then
        echo "KARA LİSTEDE: $BL - Sonuç: $RESULT"
    else
        echo "Temiz: $BL"
    fi
done

Bu scriptı crontab’a ekleyip günlük çalıştırın. Bir sorun olduğunda mail ile uyarı almanızı sağlayabilirsiniz. Ama kara listeden çıkma süreci bazen günler alabilir, bu süreçte işletmeniz mail gönderemiyor olabilir.

Hazır E-posta Servisleri

Google Workspace

Türkiye’deki işletmelerin büyük çoğunluğunun tercih ettiği çözüm. Kullanıcı başına aylık yaklaşık 6-18 dolar arasında planları var.

Artıları açık:

  • Sıfır bakım yükü
  • Google’ın kara listelerle zaten hiçbir sorunu yok
  • 99.9% uptime SLA
  • 30GB’dan başlayan depolama
  • Meet, Drive, Docs entegrasyonu

Eksileri de var:

  • Veri Türkiye’de değil (bazı sektörler için sorun)
  • Kullanıcı sayısı arttıkça maliyet artar
  • Özelleştirme imkanı sınırlı
  • İnternet olmadan çalışmaz (offline mod sınırlı)

Microsoft 365

Google Workspace’e alternatif. Microsoft ekosistemine yatırım yapmış şirketler için daha mantıklı.

  • Exchange Online, Teams, SharePoint dahil
  • Outlook istemcisi kurumsal dünyada hala standart
  • Azure AD entegrasyonu
  • Kullanıcı başına aylık 6-22 dolar

Zoho Mail

Bütçe dostu hazır servis arayanlar için güçlü bir alternatif. 5 kullanıcıya kadar ücretsiz plan var, sonrasında kullanıcı başına aylık 1 dolar gibi çok makul fiyatlar.

iRedMail: Ara Çözüm

Tam anlamıyla hazır servis de değil, her şeyi sıfırdan kurmak da değil. iRedMail, tüm e-posta bileşenlerini tek bir script ile kuran açık kaynaklı bir çözüm.

# iRedMail kurulumu
wget https://github.com/iredmail/iRedMail/releases/download/1.6.8/iRedMail-1.6.8.tar.gz
tar xvf iRedMail-1.6.8.tar.gz
cd iRedMail-1.6.8
bash iRedMail.sh

Kurulum sihirbazı size backend seçenekleri (OpenLDAP veya MySQL/MariaDB), web server tercihi ve kurulacak bileşenler konusunda sorular sorar. 30-45 dakika içinde tam çalışan bir e-posta sunucunuz oluyor. Ticari sürümü olan iRedMail Pro ise web tabanlı yönetim paneli sunuyor.

Sektöre Göre Karar Ağacı

Finans ve Bankacılık

BDDK ve SPK regülasyonları nedeniyle veri lokasyonu kritik. Bu sektördeyseniz ya Türkiye’deki veri merkezlerinde kendi sunucunuzu kurmanız ya da Türkiye’de veri merkezi olan onaylı bulut sağlayıcıları kullanmanız gerekiyor. Google ve Microsoft’un Türkiye veri merkezi açıklamaları oldu ancak regülasyon gereksinimleri değişkenlik gösterebilir, hukuk departmanınızla doğrulayın.

Sağlık Sektörü

Kişisel sağlık verisi içeren mailler söz konusuysa KVKK uyumluluğu zorunlu. Hazır servis kullanıyorsanız, o servisin veri işleme sözleşmesi KVKK gereksinimlerini karşılamalı.

KOBİ (5-50 Çalışan)

Açıkça söyleyeyim: Bu ölçekte kendi e-posta sunucunuzu kurmanız için çok iyi bir nedeniniz olması lazım. Zoho Mail veya benzeri bir servis hem daha ucuz hem daha güvenilir olacaktır. IT departmanı olmayan şirketler için özellikle bu geçerli.

Startup ve Yazılım Şirketleri

Google Workspace veya Microsoft 365. Nokta. Zamanınızı e-posta sunucusu bakımına harcamak yerine ürün geliştirmeye harcayın.

Büyük Kurumlar (200+ Çalışan)

Burada hesap farklı. 500 kullanıcı için Google Workspace’in yıllık maliyeti ciddi bir rakama ulaşır. Bu noktada hibrit çözümler veya kendi on-premise kurulumu ekonomik açıdan anlamlı olabilir. Özellikle zaten IT ekibi varsa.

E-posta Gönderimi için Ayrı Transactional Mail Servisi

Bir noktayı daha vurgulamak istiyorum: Ana e-posta sunucunuz ne olursa olsun, uygulama e-postaları (şifre sıfırlama, bildirim, fatura gibi) için ayrı bir transactional mail servisi kullanın.

Bu amaçla kullanılan servisler:

  • Mailgun: Geliştiriciler arasında en yaygın tercih
  • SendGrid: Büyük hacimler için iyi
  • Amazon SES: AWS kullanıyorsanız en ekonomik seçenek
  • Postmark: Transactional mail konusunda güçlü itibar yönetimi

Kendi ana e-posta sunucunuzdan bulk ya da transactional mail göndermek, IP itibarınızı riske atar. Bu iki şeyi asla birbirine karıştırmayın.

Log İzleme ve Sorun Giderme

Kendi sunucunuzu kurduysanız, log okumayı öğrenmek zorundasınız. En sık kullandığım komutlar:

# Postfix mail kuyruğunu görüntüleme
mailq
postqueue -p

# Kuyruktaki tüm mailleri zorla göndermeye çalışma
postqueue -f

# Son 100 mail log girdisi
tail -100 /var/log/mail.log

# Belirli bir adrese giden mailleri filtreleme
grep "to=<[email protected]>" /var/log/mail.log | tail -20

# Bounce olan mailleri bulma
grep "status=bounced" /var/log/mail.log | tail -20

# Spam olarak işaretlenen mailleri sayma
grep "identified as spam" /var/log/mail.log | wc -l

Bu logları düzenli izlemek için bir SIEM veya en azından basit bir log aggregation çözümü kurmanızı öneririm. Aksi halde sorunları siz değil, müşterileriniz fark eder.

Göç Süreci: Bir Servisten Diğerine

İster kendi sunucunuzdan hazır servise, ister tam tersi yönde geçiş yapıyor olun, MX kaydı değişikliği anında yapmayın.

# Mevcut MX kaydlarını ve TTL değerini kontrol etme
dig MX sirketiniz.com.tr
nslookup -type=MX sirketiniz.com.tr

# TTL değerini değişiklikten önce düşürün
# Örneğin 86400'den (1 gün) 300'e (5 dakika) indirin
# Değişiklikten sonra eski TTL değerine geri yükleyin

Geçiş planı şöyle olmalı:

  • Önce yeni sistemi paralel kurun ve test edin
  • DNS TTL’i en az 48 saat öncesinden düşürün
  • Önce gelen kutusu göçü yapın (IMAP migration araçları kullanın)
  • MX kaydını değiştirin
  • Eski sistemde birkaç gün daha alıcı olarak bekleyin
  • Her şey stabil olduktan sonra eski sistemi kapatın

Sonuç

Kendi e-posta sunucunuzu kurmanın cazip gelmesini anlıyorum. Kontrol hissi, veri egemenliği, aylık tasarruf hesapları. Ama çoğu senaryo için hazır servisler, hesaba katmadığınız maliyetler ve riskler düşünüldüğünde daha mantıklı seçenek.

Kendi sunucunuzu kurmayı düşünüyorsanız bu soruları kendinize sorun:

  • E-posta altyapısını yönetecek dedicated bir sistem yöneticiniz var mı?
  • IP itibarı sorununu yaşadığınızda iş süreciniz durabilir mi?
  • Düzenli güvenlik güncellemelerini ve sertifika yenilemelerini takip edecek kapasiteniz var mı?
  • Veri lokasyonu veya uyumluluk nedeniyle başka seçeneğiniz yok mu?

Üçüncü soruya “evet” cevabı verdiyseniz veya son sorunuz “hayır” değilse, ciddi ciddi hazır servisleri değerlendirin. 200 kullanıcı altındaki çoğu organizasyon için Google Workspace veya Microsoft 365’in maliyeti, kendi sunucunuzu yönetmenin gerçek maliyetinin çok altındadır.

200 kullanıcı üzerindeyseniz, veri egemenliği gereksiniminiz varsa veya güçlü bir IT ekibiniz mevcutsa o zaman kendi altyapınızı kurmak anlamlı olabilir. Bu durumda iRedMail gibi bir çözümle başlamak, her şeyi sıfırdan elle yapılandırmaktan çok daha akıllıca bir başlangıç noktası olacaktır.

Her iki yolun da tuzakları var. Önemli olan, kararınızı duygusal değil veriye dayalı vermek.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir