Mailcow ist eine moderne, Open-Source- und Docker-basierte E-Mail-Serverlösung. Sie kombiniert Komponenten wie Postfix, Dovecot, SoGo, Rspamd in einer einzigen Docker-Struktur und bietet so eine leistungsstarke und voll ausgestattete Mail-Plattform. Sie kann unabhängig von Hosting-Kontrollpanels wie Plesk betrieben werden. In diesem Artikel werden wir im Detail erläutern, wie man Mailcow von Grund auf neu installiert, wie man es mit der Docker-Infrastruktur konfiguriert und wie man Leistungs- und Sicherheitsoptimierungen vornimmt.
1. Anforderungen
-
Ubuntu 20.04/22.04 oder Debian 11+ wird empfohlen.
-
Mindestens 2 vCPU, 4 GB RAM, 40+ GB Festplattenspeicher
-
root SSH-Zugriff
-
Domainname (z. B.:
mail.ihredomain.com
) und DNS-Kontrolle -
Docker und Docker Compose müssen installiert sein
2. Installation von Docker und Docker Compose auf dem Server
apt update && apt upgrade -y
apt install curl git docker.io docker-compose -y
systemctl enable docker --now
3. Herunterladen und Starten von Mailcow
cd /opt
git clone https://github.com/mailcow/mailcow-dockerized
cd mailcow-dockerized
cp mailcow.conf.example mailcow.conf
mailcow.conf
Einstellungen:
-
MAILCOW_HOSTNAME=mail.ihredomain.com
-
TZ=Europe/Berlin
-
SKIP_LETS_ENCRYPT=n
-
ADDITIONAL_SAN=webmail.ihredomain.com
4. DNS-Einstellungen
Erstellen Sie die folgenden Einträge in Ihrem DNS-Verwaltungspanel:
Eintragstyp | Name | Wert |
---|---|---|
A | IP-Adresse Ihres Servers | |
MX | @ | mail.ihredomain.com (10) |
TXT | @ | SPF: v=spf1 mx ~all |
TXT | mail._domainkey | DKIM: (wird nach der Installation erstellt) |
TXT | _dmarc | v=DMARC1; p=quarantine; |
5. Starten des Docker-Dienstes
./generate_config.sh
sudo docker compose pull
sudo docker compose up -d
Sie können auf die Mailcow-Oberfläche unter folgender Adresse zugreifen:
https://mail.ihredomain.com
Standardbenutzer:
admin / moohoo
6. Firewall und Ports
Die folgenden Ports müssen geöffnet sein:
-
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. Optimierungs- und Sicherheitseinstellungen
A) Swap-Bereich erstellen (für RAM-Mangel)
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-Blockierung
Mailcow Rspamd integriert Anti-Spam, Greylisting, Ratenbegrenzung und Brute-Force-Schutz. Die Installation von Fail2Ban wird empfohlen:
apt install fail2ban -y
C) Tägliche automatische Aktualisierung (Optional)
0 4 * * * cd /opt/mailcow-dockerized && ./update.sh --force-pull && docker compose up -d
D) Docker-Ressourcennutzung begrenzen (in Docker compose.yml):
mem_limit: 512m
cpus: 0.5
8. Verwendung auf externen Plesk-Servern
Mailcow funktioniert unabhängig, ohne dass Panels wie Plesk oder cPanel erforderlich sind. Sie können bei Bedarf nur einen E-Mail-Dienst unter mail.ihredomain.com anbieten und Ihre Website auf einem anderen Server hosten.
Wenn Sie Plesk verwenden:
-
Websites laufen auf dem Plesk-Server, Mailcow auf einem separaten VPS/dedizierten Server.
-
DNS-Weiterleitungen sollten an die Mailcow-IP erfolgen (MX, A, SPF, DKIM).
9. Backup-Empfehlung
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 bietet mit seiner Docker-basierten Struktur einen flexiblen, modernen und sicheren Mailserver. Es ist ideal für Benutzer, die die volle Kontrolle ohne Plesk oder ähnliche Panels wünschen. Es kann problemlos sowohl in kleinen als auch in Unternehmenssystemen eingesetzt werden. Mit der richtigen Konfiguration und DNS-Integration können Sie eine leistungsstarke E-Mail-Infrastruktur aufbauen.