E-posta gönderiminde güvenilirlik, teslim edilebilirlik ve IP itibarı çok önemlidir. Özellikle VPS tabanlı sunucularda (bkz: VPS Sunucu), cPanel/WHM gibi popüler kontrol panellerinde Mail.Baby gibi dış bir SMTP sağlayıcısını kullanmak, bu sorunlara etkili çözümler sunar. Bu makalede, Mail.Baby SMTP hizmetinin WHM üzerinden nasıl bağlanacağı adım adım anlatılmakta ve optimize ayarlarla e-posta teslimatının nasıl maksimuma çıkarılacağı detaylandırılmaktadır.
Mail.Baby Nedir?
Mail.Baby, düşük gecikmeli, yüksek başarı oranına sahip bir transactional e-posta SMTP servisidir. WHM sunucularında Exim ile kolay entegrasyon sunar. SPF, DKIM ve IP reputation konularında da kullanıcıya büyük avantaj sağlar.
1. Gereksinimler ve Hazırlık
-
Aktif bir VPS sunucu
-
cPanel/WHM 106 veya 108+ sürüm
-
Mail.Baby hesabı ve SMTP bilgileri (sunucu, port, kullanıcı adı, parola)
-
root SSH erişimi
2. WHM'de Mail.Baby için Gerekli Temel Ayarlar
WHM >> Service Configuration >> Exim Configuration Manager >> Basic Mode'da:
-
Use the reverse DNS entry for the mail HELO/EHLO if available: OFF
-
SPF include hosts for all domains on this system: spf-c.mailbaby.net
-
Enable Sender Rewriting Scheme (SRS) Support: ON
Ek olarak, aşağıdaki güvenlik taramaları da aktif edilmelidir:
-
Scan messages for malware from authenticated senders
-
Scan outgoing messages for malware
-
Scan outgoing messages for spam and reject based on SpamAssassin score
-
Do not forward mail to external recipients based on SpamAssassin score
Ayrıca, WHM >> Tweak Settings üzerinden mail gönderim limiti belirlenmelidir (örneğin: 300/saat).
3. Exim Gelişmiş Yapılandırma (Advanced Mode)
WHM >> Exim Configuration Manager >> Advanced Editor
AUTH:
mailbaby_login:
driver = plaintext
public_name = LOGIN
client_send = : YOURUSERNAME : YOURPASSWORD
POSTMAILCOUNT (v108+ için):
remoteserver_route:
driver = manualroute
.ifdef SRSENABLED
transport = ${if eq {$local_part@$domain} \
{$original_local_part@$original_domain} \
{mailbaby_smtp} {mailbaby_forward_smtp}}
.else
transport = mailbaby_smtp
.endif
domains = !+local_domains
ignore_target_hosts = 127.0.0.0/8
route_list = * relay.mailbaby.net::25 randomize byname
host_find_failed = defer
no_more
TRANSPORTSTART:
mailbaby_smtp:
driver = smtp
hosts_require_auth = *
tls_tempfail_tryclear = true
headers_add = X-AuthUser: ${if match {$authenticated_id}{.*@.*} \
{$authenticated_id} {${if match {$authenticated_id}{.+} \
{$authenticated_id@$primary_hostname}{$authenticated_id}}}}
dkim_domain = ${lookup{$sender_address_domain}lsearch,ret=key{/etc/localdomains}}
dkim_selector = default
dkim_canon = relaxed
dkim_private_key = "/var/cpanel/domain_keys/private/${dkim_domain}"
mailbaby_forward_smtp:
driver = smtp
hosts_require_auth = *
tls_tempfail_tryclear = true
headers_add = X-AuthUser: ${if match {$authenticated_id}{.*@.*} \
{$authenticated_id} {${if match {$authenticated_id}{.+} \
{$authenticated_id@$primary_hostname}{$authenticated_id}}}}
dkim_domain = ${lookup{$sender_address_domain}lsearch,ret=key{/etc/localdomains}}
dkim_selector = default
dkim_canon = relaxed
dkim_private_key = "/var/cpanel/domain_keys/private/${dkim_domain}"
.ifdef SRSENABLED
return_path = ${srs_encode {SRS_SECRET} {$return_path} {$original_domain}}
.endif
max_rcpt = 1
RETRYSTART:
* data_4xx F,4h,1m
* rcpt_4xx F,4h,1m
* timeout F,4h,1m
* refused F,1h,5m
* lost_connection F,1h,1m
* * F,6h,5m
RETRYBLOCK:
+secondarymx * F,4h,5m; G,16h,1h,1.5; F,4d,8h
* * F,2h,15m; G,16h,1h,1.5; F,4d,8h
* auth_failed
4. Greylisting IP Tanımlamaları (CLI ile)
Mail.Baby IP aralıklarını güvenilir listeye eklemek için aşağıdaki komutları SSH üzerinden çalıştırın:
whmapi1 create_cpgreylist_trusted_host ip='162.220.160.0/28' comment='MailBaby'
whmapi1 create_cpgreylist_trusted_host ip='68.168.211.160/28' comment='MailBaby'
... (tam liste yukarıda verilmiştir)
5. Test ve Doğrulama
-
WHM Mail Queue Manager üzerinden test maili atın
-
exim -bt [email protected]
komutuyla yönlendirme doğrulayın -
mail-tester.com üzerinden spam skoru kontrolü yapın
6. Gelişmiş Yapılandırmalar (Opsiyonel)
A) Sadece belirli domainlere mailbaby ile gönderim:
domains = lsearch:/etc/exim_domains_include
/etc/exim_domains_include
dosyasına domain adlarını yazın.
B) Belirli domainleri hariç tutmak:
senders = : [email protected] : !*@domain2.com
C) Sadece belirli domainlerden gelen e-postaları iletmek:
senders = *@domain1.com : [email protected]
Bu yapılandırmalarda POSTMAILCOUNT
kısmında yukarıdaki kombinasyonlar kullanılabilir.
Sonuç
cPanel/WHM üzerinde Mail.Baby entegrasyonu, spam risklerini azaltmak, teslim edilebilirliği artırmak ve kara listeye düşmeyi önlemek için idealdir. Yukarıda anlatılan adımlar, sistem yöneticileri tarafından dikkatle uygulanmalıdır.
WHM Mail.Baby kurulumu ve çok daha fazlası için Sunucu Kurulumu ve Optimizasyon Hizmetleri sayfamıza göz atabilirsiniz.