Mailcow, modern, açık kaynaklı ve Docker tabanlı bir e-posta sunucusu çözümüdür. Postfix, Dovecot, SoGo, Rspamd gibi bileşenleri tek bir Docker yapısında birleştirerek güçlü ve tam özellikli bir mail platformu sunar. Plesk gibi hosting kontrol panellerinden bağımsız çalışabilir. Bu makalede, sıfırdan Mailcow kurulumunu, Docker altyapısıyla birlikte nasıl yapılandırılacağını ve performans & güvenlik optimizasyonlarını detaylıca anlatacağız.
1. Gereksinimler
-
Ubuntu 20.04/22.04 veya Debian 11+ önerilir.
-
En az 2 vCPU, 4 GB RAM, 40+ GB disk alanı
-
root SSH erişimi
-
Alan adı (örn:
mail.alanadiniz.com
) ve DNS kontrolü -
Docker ve Docker Compose yüklü olmalı
2. Sunucuya Docker ve Docker Compose Kurulumu
apt update && apt upgrade -y
apt install curl git docker.io docker-compose -y
systemctl enable docker --now
3. Mailcow'un İndirilmesi ve Başlatılması
cd /opt
git clone https://github.com/mailcow/mailcow-dockerized
cd mailcow-dockerized
cp mailcow.conf.example mailcow.conf
mailcow.conf
Ayarları:
-
MAILCOW_HOSTNAME=mail.alanadiniz.com
-
TZ=Europe/Istanbul
-
SKIP_LETS_ENCRYPT=n
-
ADDITIONAL_SAN=webmail.alanadiniz.com
4. DNS Ayarları
DNS yönetim panelinizden aşağıdaki kayıtları oluşturun:
Kayıt Türü | Ad | Değer |
---|---|---|
A | sunucunuzun IP adresi | |
MX | @ | mail.alanadiniz.com (10) |
TXT | @ | SPF: v=spf1 mx ~all |
TXT | mail._domainkey | DKIM: (kurulumdan sonra oluşur) |
TXT | _dmarc | v=DMARC1; p=quarantine; |
5. Docker Servisini Başlatma
./generate_config.sh
sudo docker compose pull
sudo docker compose up -d
Mailcow arayüzüne şu adresten erişebilirsiniz:
https://mail.alanadiniz.com
Varsayılan kullanıcı:
admin / moohoo
6. Firewall ve Portlar
Aşağıdaki portlar açılmalıdır:
-
25 (SMTP)
-
587 (Submission)
-
993 (IMAP SSL)
-
465 (SMTPS)
-
80, 443 (Webmail, Let’s Encrypt)
ufw allow 25,465,587,993,80,443/tcp
7. Optimizasyon ve Güvenlik Ayarları
A) Swap Alanı Oluşturun (RAM yetersizliği için)
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile none swap sw 0 0' >> /etc/fstab
B) Fail2ban + Rspamd Brute Force Engelleme
Mailcow Rspamd içinde anti-spam, greylisting, rate limit, brute force korumaları entegredir. Fail2Ban kurulması önerilir:
apt install fail2ban -y
C) Günlük Otomatik Güncelleme (Opsiyonel)
0 4 * * * cd /opt/mailcow-dockerized && ./update.sh --force-pull && docker compose up -d
D) Docker Kaynak Kullanımı Limitleme (Docker compose.yml içinde):
mem_limit: 512m
cpus: 0.5
8. Plesk Harici Sunucularda Kullanım
Mailcow, Plesk, cPanel gibi panellere gerek duymadan bağımsız çalışır. Dilerseniz mail.alanadiniz.com altından sadece e-posta servisi sunabilir, web sitenizi farklı bir sunucuda barındırabilirsiniz.
Plesk kullanıyorsanız:
-
Web siteleri Plesk sunucusunda, Mailcow ayrı VPS/dedicated sunucuda çalışır.
-
DNS yönlendirmeleri Mailcow IP’sine yapılmalı (MX, A, SPF, DKIM).
9. Yedekleme Önerisi
docker exec -it mysql-mailcow mysqldump -u root -p mailcow > mailcow-backup.sql
tar czf /root/mailcow-full-backup.tar.gz /opt/mailcow-dockerized
Mailcow, Docker tabanlı yapısıyla esnek, modern ve güvenli bir mail sunucusu sağlar. Plesk veya benzeri panellere ihtiyaç duymadan tam kontrol isteyen kullanıcılar için idealdir. Hem küçük ölçekli hem de kurumsal sistemlerde rahatlıkla kullanılabilir. Doğru yapılandırma ve DNS entegrasyonu ile güçlü bir e-posta altyapısı oluşturabilirsiniz.