Proxmox Mail Gateway: Spam-Schutz für dein Homelab einrichten
Proxmox Mail Gateway (PMG) als Spam- und Virenfilter im Homelab einrichten. Installation, Konfiguration, DNSBL-Listen und Integration mit Mailservern wie Grommunio.
- Warum Proxmox Mail Gateway?
- Voraussetzungen
- Installation: ISO vs. LXC-Container
- Grundkonfiguration
- DNSBL-Listen einrichten
- Greylisting aktivieren
- SPF und DKIM aktivieren
- Regelwerk erstellen
- Lizenzwarnung entfernen
- Monitoring und Wartung
- Troubleshooting
- Best Practices
- 🛒 Empfohlene Services
- Fazit
Wer einen eigenen Mailserver im Homelab betreibt, kennt das Problem: Spam, Phishing-Mails und potenzielle Malware. Proxmox Mail Gateway (PMG) ist eine Open-Source-Lösung, die als vorgeschaltete Filterinstanz fungiert und deinen Mailserver effektiv schützt. In diesem Tutorial zeige ich dir, wie du PMG installierst, konfigurierst und mit deinem bestehenden Mailserver wie Grommunio, Mailcow oder iRedMail integrierst.
Warum Proxmox Mail Gateway?#
PMG ist mehr als nur ein Spam-Filter. Es ist eine vollständige E-Mail-Sicherheits-Appliance, die auf Debian basiert und von den Machern von Proxmox VE entwickelt wurde. Die wichtigsten Vorteile:
- Mehrschichtiger Schutz: Kombination aus DNSBL, Greylisting, SpamAssassin, ClamAV und SPF/DKIM-Validierung
- Quarantäne-System: Verdächtige Mails werden isoliert, nicht gelöscht
- Einfache Weboberfläche: Übersichtliches Management über Browser
- Cluster-Fähigkeit: Mehrere PMG-Instanzen für Hochverfügbarkeit
- Ressourcenschonend: Läuft problemlos als LXC-Container oder VM
- Open Source: Kostenlos nutzbar (Enterprise-Support optional)
PMG fungiert als MX-Relay: Eingehende Mails gehen zuerst durch PMG, werden dort gefiltert, und nur saubere Mails landen auf deinem eigentlichen Mailserver. Das entlastet deinen Mailserver und hält Spam und Malware fern, bevor sie überhaupt deine Postfächer erreichen.
Voraussetzungen#
Bevor wir loslegen, solltest du Folgendes haben:
- Proxmox VE-Installation (siehe Proxmox Homelab Einrichten - Anfänger Guide)
- Funktionierende DNS-Konfiguration (MX-Records!)
- Einen bestehenden Mailserver (oder die Absicht, einen einzurichten)
- Grundkenntnisse in Linux/Kommandozeile
- Mindestens 2 GB RAM und 10 GB Festplatte für PMG
Installation: ISO vs. LXC-Container#
PMG kann auf zwei Arten installiert werden:
Option 1: ISO-Installation (VM)#
Die klassische Variante: PMG als dedizierte VM.
- ISO herunterladen von proxmox.com/downloads
- In Proxmox VE eine neue VM erstellen:
- CPU: 2 Kerne
- RAM: 2-4 GB
- Festplatte: 16 GB (minimal 10 GB)
- Netzwerk: Bridged (eigene IP)
- ISO einhängen und booten
- Installer folgen (Tastatur: Deutsch, Zeitzone: Europe/Berlin)
- Hostname und Domain festlegen (z.B.
pmg.example.com) - Root-Passwort vergeben
- Netzwerk konfigurieren (statische IP empfohlen)
- Installation abschließen und neu starten
Option 2: LXC-Container (empfohlen)#
Ressourcensparender und schneller zu deployen.
Es gibt kein offizielles PMG-LXC-Template, aber PMG kann in einem Debian-Container nachinstalliert werden:
# Debian 12 Container erstellen
pct create 103 local:vztmpl/debian-12-standard_12.7-1_amd64.tar.zst \
--hostname pmg \
--memory 2048 \
--cores 2 \
--rootfs local-lvm:16 \
--net0 name=eth0,bridge=vmbr0,ip=192.168.66.37/24,gw=192.168.66.1 \
--nameserver 192.168.66.1 \
--features nesting=1 \
--password
# Container starten
pct start 103
# In Container einloggen
pct enter 103
# PMG Repository hinzufügen
echo "deb [arch=amd64] http://download.proxmox.com/debian/pmg bookworm pmg-no-subscription" > /etc/apt/sources.list.d/pmg.list
# Proxmox GPG-Key importieren
wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
# System aktualisieren
apt update && apt full-upgrade -y
# PMG installieren
apt install proxmox-mailgateway -y
# Hostname setzen
hostnamectl set-hostname pmg.example.com
Nach der Installation ist PMG über https://<IP>:8006 erreichbar.
Grundkonfiguration#
Nach dem ersten Login (Benutzer: root, Passwort wie bei Installation gesetzt) solltest du folgende Einstellungen vornehmen:
1. System-Updates#
Unter Administration → Updates das System auf den neuesten Stand bringen.
2. Mail-Konfiguration#
Navigiere zu Configuration → Mail Proxy:
- Domain: Deine Haupt-E-Mail-Domain (z.B.
example.com) - Relay: IP/Hostname deines internen Mailservers (z.B.
192.168.66.23für Grommunio) - SMTP Port: Standard ist
25 - Max. Message Size: Je nach Bedarf (Standard: 10 MB, ich nutze 50 MB)
Wichtig: Der Relay ist dein eigentlicher Mailserver, an den PMG saubere Mails weiterleitet.
3. DNS-Konfiguration anpassen#
Damit eingehende Mails über PMG laufen:
MX-Record muss auf PMG zeigen:
example.com. IN MX 10 pmg.example.com.A-Record für PMG:
pmg.example.com. IN A <Deine-externe-IP>PTR-Record (Reverse DNS) sollte auf
pmg.example.comzeigen (bei Provider beantragen)Port-Weiterleitung in Firewall/Router:
- Port 25 (SMTP) → PMG-IP
4. Mailserver anpassen#
Dein eigentlicher Mailserver (Grommunio, Mailcow etc.) sollte jetzt:
- Nur noch von PMG Mails annehmen (Firewall-Regel!)
- PMG als vertrauenswürdigen Relay akzeptieren
Bei Grommunio z.B. in /etc/grommunio-common/main.cf:
mynetworks = 127.0.0.0/8 192.168.66.37/32
DNSBL-Listen einrichten#
DNS-based Blackhole Lists (DNSBL) sind eine der effektivsten Waffen gegen Spam. PMG prüft die IP-Adresse des sendenden Servers gegen mehrere Blacklists.
Empfohlene DNSBL-Listen#
Unter Configuration → Mail Proxy → Options → DNSBL Sites folgende Listen hinzufügen:
zen.spamhaus.org
b.barracudacentral.org
bl.spamcop.net
dnsbl.sorbs.net
cbl.abuseat.org
zen.spamhaus.org ist besonders effektiv, da es mehrere Spamhaus-Listen kombiniert (SBL, XBL, PBL).
b.barracudacentral.org von Barracuda Networks ist sehr aktuell und wenig fehleranfällig.
DNSBL Threshold#
Der DNSBL Threshold bestimmt, ab wie vielen Treffern eine Mail abgelehnt wird:
1: Aggressiv (ein Treffer reicht) – empfohlen für Homelab2-3: Moderat (mehrere Treffer nötig)
Einstellung unter Configuration → Mail Proxy → Options → DNSBL Threshold.
Bei meiner Konfiguration nutze ich Threshold 1, da die gewählten Listen sehr zuverlässig sind.
Greylisting aktivieren#
Greylisting verzögert die Annahme von Mails unbekannter Absender. Seriöse Mailserver versuchen es erneut, Spammer nicht.
Configuration → Mail Proxy → Options → Use Greylisting: ✓ aktivieren
Greylisting ist sehr effektiv und verursacht kaum False Positives. Die Verzögerung beträgt meist nur 5-15 Minuten beim ersten Kontakt.
SPF und DKIM aktivieren#
SPF (Sender Policy Framework)#
SPF prüft, ob der sendende Server berechtigt ist, für die Domain zu versenden.
Configuration → Mail Proxy → Options → Verify SPF: ✓ aktivieren
DKIM (DomainKeys Identified Mail)#
DKIM signiert ausgehende Mails digital.
Configuration → Mail Proxy → Options → DKIM Sign: ✓ aktivieren
DKIM Selector festlegen (z.B.
default)DKIM-Key generieren:
::: highlight
pmgdkim-genkey:::
Public Key im DNS veröffentlichen:
::: highlight
cat /var/lib/pmg/dkim/default.txt:::
Beispiel-DNS-Record:
default._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCS..."
DKIM verbessert die Zustellbarkeit deiner ausgehenden Mails erheblich!
Regelwerk erstellen#
PMG bietet ein mächtiges Regelwerk-System für individuelle Filter.
Beispiel: Blacklist für bestimmte Domains#
- Configuration → Mail Filter → Rule Database
- Add Rule klicken
- Name: “Spam-Domains blockieren”
- Add Object → SMTP → From →
@spam-domain.com - Add Action → Block
- Regel aktivieren und speichern
Beispiel: Whitelist für wichtige Absender#
- Regel erstellen: “Trusted Senders”
- Add Object → SMTP → From →
*@wichtige-firma.de - Add Action → Accept
- Priorität höher setzen als andere Regeln
Das Regelwerk wird von oben nach unten abgearbeitet. Die erste zutreffende Regel gewinnt.
Lizenzwarnung entfernen#
Nach der Installation zeigt PMG eine Subscription-Warnung. Wenn du kein Enterprise-Abo hast, kannst du diese entfernen:
# Backup der Datei erstellen
cd /usr/share/javascript/proxmox-widget-toolkit
cp proxmoxlib.js proxmoxlib.js.bak
# JavaScript-Datei bearbeiten
sed -i.bak "s/data.status !== 'Active'/false/g" proxmoxlib.js
# PMG-Proxy-Service neu starten
systemctl restart pmgproxy.service
Wichtig: Nach PMG-Updates muss dieser Schritt wiederholt werden!
Anschließend Browser-Cache löschen (Strg+Shift+R) und die Warnung sollte verschwunden sein.
Hinweis: Die No-Subscription-Version ist vollständig funktional. Das Enterprise-Repo bietet schnellere Sicherheits-Updates und Support.
Repository auf No-Subscription umstellen#
Standardmäßig nutzt PMG das Enterprise-Repository, für das eine Lizenz nötig ist. Umstellung:
# Enterprise-Repo deaktivieren
mv /etc/apt/sources.list.d/pmg-enterprise.list /etc/apt/sources.list.d/pmg-enterprise.list.bak
# No-Subscription-Repo hinzufügen
echo "deb http://download.proxmox.com/debian/pmg bookworm pmg-no-subscription" > /etc/apt/sources.list.d/pmg-no-subscription.list
# Updates installieren
apt update && apt upgrade -y
Monitoring und Wartung#
Dashboard#
Das PMG-Dashboard zeigt:
- Mail-Volumen: Ein-/ausgehende Mails
- Spam-Rate: Wie viel Prozent gefiltert wurden
- Virus-Detection: Erkannte Malware
- System-Load: CPU, RAM, Storage
Quarantäne-Management#
Unter Spam Quarantine landeten blockierte Mails. User können per E-Mail-Benachrichtigung selbst Mails freigeben.
Configuration → Spam Detector → Quarantine → Spam Quarantine aktivieren.
Logs#
Wichtige Logs für Troubleshooting:
# Mail-Log
tail -f /var/log/mail.log
# PMG-spezifische Logs
journalctl -u pmgproxy -f
# Tracking-Center (Weboberfläche)
Das Tracking Center in der Weboberfläche ist Gold wert: Jede Mail kann nachverfolgt werden – von der Annahme über Filter-Entscheidungen bis zur Zustellung.
Backup#
PMG-Konfiguration sichern:
# Backup erstellen
proxmox-backup-client backup root.pxar:/
# Oder manuell die Konfig-Dateien
tar -czf pmg-backup-$(date +%F).tar.gz /etc/pmg /var/lib/pmg
Bei LXC-Containern: Einfach den Container über Proxmox VE sichern (Vzdump).
Troubleshooting#
Problem: Mails kommen nicht an#
Checkliste:
- MX-Record korrekt?
dig example.com MX - Port 25 offen?
telnet pmg.example.com 25 - PMG-Dienst läuft?
systemctl status pmgproxy postfix - Firewall blockiert?
iptables -L -n - Logs prüfen:
tail -f /var/log/mail.log
Problem: Zu viel Spam kommt durch#
Lösungen:
- DNSBL Threshold senken (auf
1) - Weitere DNSBL-Listen hinzufügen
- SpamAssassin-Score anpassen (Spam Detector → Options)
- Greylisting aktivieren
- Regelwerk mit bekannten Spam-Domains erweitern
Problem: Legitime Mails landen in Quarantäne#
Lösungen:
- Whitelist für den Absender erstellen
- SpamAssassin-Score erhöhen (weniger aggressiv)
- DNSBL-Listen überprüfen (manche sind sehr streng)
- SPF/DKIM-Fehler beim Absender? → Absender informieren
Problem: Hohe System-Last#
Lösungen:
- RAM erhöhen (4 GB empfohlen bei viel Traffic)
- ClamAV-Virenscanner deaktivieren, wenn nicht benötigt
- SpamAssassin-Checks reduzieren
- Mail-Archivierung begrenzen
Best Practices#
- Regelmäßige Updates: PMG mindestens monatlich aktualisieren
- Monitoring einrichten: Zabbix, Prometheus oder PMG-Dashboard nutzen
- Backup-Strategie: Wöchentliche Sicherungen der Konfiguration
- Quarantäne-Reports: User automatisch über blockierte Mails informieren
- Test-Mails: Regelmäßig mit mail-tester.com prüfen
- Zweite Instanz: Für Production-Umgebungen ein PMG-Cluster aufbauen
- TLS erzwingen: Verschlüsselte Verbindungen vorschreiben
🛒 Empfohlene Services#
🖥️
Hetzner Cloud für Mail-Gateway
Mail Gateway in der Cloud betreiben? Hetzner Cloud bietet VPS mit fester IP ab 4€/Monat — wichtig für saubere Mail-Reputation. Hetzner ausprobieren →
- 🖥️ Mini-PC als Mail-Server — Leiser Host für Proxmox Mail Gateway
- 🔒 YubiKey Security Key — 2FA für Admin-Zugang zum Mail Gateway
Fazit#
Proxmox Mail Gateway ist eine professionelle Lösung für E-Mail-Sicherheit im Homelab. Die Kombination aus DNSBL, Greylisting, SPF/DKIM und SpamAssassin filtert über 95% des Spams zuverlässig heraus. Die Integration mit bestehenden Mailservern ist unkompliziert, und die Weboberfläche macht das Management zum Kinderspiel.
Besonders als LXC-Container ist PMG ressourcenschonend und perfekt für Homelabs geeignet. Die Investition von 2-3 Stunden Setup zahlt sich durch deutlich weniger Spam und mehr Sicherheit sofort aus.
Wenn du noch keinen Mailserver hast, schau dir meinen Grommunio-Artikel an – die Kombination aus Grommunio und PMG ist ein Dream-Team für Self-Hosting!
Nächste Schritte: Probiere PMG in einer Test-VM aus, spiele mit dem Regelwerk und schau dir das Tracking Center an. Du wirst überrascht sein, wie viel Müll da draußen unterwegs ist – und wie gut PMG ihn abfängt! 🛡️
Weiterführende Links:
Einige Links auf dieser Seite sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision — für dich ändert sich am Preis nichts. So unterstützt du diesen Blog und ermöglichst weitere kostenlose Tutorials. Danke! 🙏
[« Vorherige]
pfSense Site-to-Site VPN: Homelab und Datacenter sicher verbinden