SPF, DKIM und DMARC: So landen Server-E-Mails nicht mehr im Spam
Ihr Kontaktformular funktioniert, aber die Nachrichten landen im Spam – oder kommen nie an. Mailbox-Anbieter bewerten E-Mails nach Identitätsnachweis und Reputation, und ein frischer Server hat beides nicht. So greifen SPF, DKIM, DMARC und Reverse DNS ineinander, so testen Sie sie, und das sind die Fehler, die die Zustellung still zerstören.
Sie ziehen Ihre Websites auf den eigenen Server um, alles lädt schnell – und dann ruft ein Kunde an: „Wir haben seit zwei Wochen keine einzige Anfrage über das Kontaktformular bekommen." Das Formular funktioniert. Die Mail wird verschickt. Sie landet nur im Spam – oder wird stillschweigend verworfen. Das ist die häufigste Überraschung beim Selbsthosten, und sie hat nichts mit Ihren Inhalten zu tun. Gmail, Outlook und Yahoo entscheiden anhand von zwei Dingen, wohin Ihre Mail geht: Können Sie beweisen, dass Sie für diese Domain senden dürfen, und hat die sendende IP einen guten Ruf? Ein brandneuer Server hat keins von beidem. So beheben Sie das Erste und schützen das Zweite.
Warum Mail vom eigenen Server im Spam landet
Jeder kann jede beliebige Adresse in die From:-Zeile einer E-Mail schreiben; das Protokoll hat das nie geprüft. Spammer haben das jahrzehntelang ausgenutzt, also verlangen Empfänger heute Beweise. Seit 2024 schreiben Google und Yahoo es formal vor: Jeder Absender braucht SPF oder DKIM sowie gültiges Forward- und Reverse-DNS, und wer in großen Mengen sendet (rund 5.000 Nachrichten pro Tag an Gmail), braucht SPF, DKIM und DMARC. In der Praxis gilt ein Server ohne alle drei ab der ersten Nachricht als verdächtig.
Es gibt vier Bausteine, und alle liegen im DNS:
- SPF – welche Server für Ihre Domain Mail senden dürfen.
- DKIM – eine kryptografische Signatur, die beweist, dass die Nachricht weder gefälscht noch verändert wurde.
- DMARC – die Richtlinie, die beides an die sichtbare
From:-Adresse bindet, plus Berichte. - Reverse DNS (PTR) – der eigene Name der IP, der zum Hostnamen des Servers passen muss.
SPF: die Liste der erlaubten Absender
SPF ist ein TXT-Eintrag auf Ihrer Domain, der die IPs und Dienste aufzählt, die für sie senden dürfen:
example.com. TXT "v=spf1 a mx include:_spf.google.com ~all"
a und mx erlauben die IPs, auf die A- und MX-Einträge Ihrer Domain zeigen; include: bindet die Liste eines Drittanbieters ein; ~all bedeutet „alles andere ist verdächtig" (Softfail), -all dagegen „ablehnen" (Hardfail). Beginnen Sie mit ~all, bis Sie sicher sind, dass die Liste vollständig ist.
Drei Regeln, die ständig verletzt werden:
- Ein SPF-Eintrag pro Domain. Zwei
v=spf1-TXT-Einträge werden nicht zusammengeführt; sie lassen SPF komplett scheitern. Fügen Sie neue Absender dem bestehenden Eintrag hinzu. - Maximal 10 DNS-Abfragen. Jedes
include,a,mxundredirectzählt, auch die verschachtelten in jedem Include. Mehr als 10, und SPF liefert einen permanenten Fehler. Entfernen Sie Absender, die Sie nicht mehr nutzen. - SPF prüft den Umschlag-Absender, nicht die
From:-Zeile. Deshalb reicht es allein nicht aus – und deshalb gibt es DMARC.
DKIM: eine Signatur auf jeder Nachricht
Mit DKIM signiert Ihr Mailserver jede ausgehende Nachricht mit einem privaten Schlüssel. Der passende öffentliche Schlüssel wird im DNS unter einem Selector veröffentlicht:
mail._domainkey.example.com. TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqh..."
Der Empfänger holt den Schlüssel, prüft die Signatur und weiß zweierlei: Die Nachricht wurde von jemandem gesendet, der Ihren Schlüssel besitzt, und die signierten Header und der Text wurden unterwegs nicht verändert. Unter Linux ist OpenDKIM als Milter in Postfix das klassische Setup.
- Verwenden Sie 2048-Bit-Schlüssel. 1024 Bit ist das absolute Minimum und wird zunehmend kritisch gesehen.
- Lange Schlüssel müssen aufgeteilt werden. Ein 2048-Bit-Schlüssel überschreitet die Grenze von 255 Zeichen für einen einzelnen TXT-String und muss daher als mehrere Strings in Anführungszeichen in einem Eintrag veröffentlicht werden. Viele DNS-Oberflächen erledigen das für Sie; handgeschriebene Zonendateien nicht.
- Selectors ermöglichen Rotation. Veröffentlichen Sie einen neuen Schlüssel unter einem neuen Selector, stellen Sie die Signierung um und entfernen Sie den alten später – ohne Lücke.
DMARC: die Richtlinie, die alles verbindet
DMARC prüft, dass SPF oder DKIM bestanden wurde und dass die dabei authentifizierte Domain zur Domain in der sichtbaren From:-Adresse passt (Alignment). Das verhindert, dass jemand von seinem eigenen Server als ceo@example.com sendet, mit gültigem SPF für seine Domain.
_dmarc.example.com. TXT "v=DMARC1; p=none; rua=mailto:dmarc@example.com"
Die Richtlinie p= sagt Empfängern, was mit Mail passieren soll, die durchfällt: none (nur berichten), quarantine (Spam-Ordner) oder reject. Unter rua= schicken Empfänger tägliche Sammelberichte – XML-Zusammenfassungen darüber, wer in Ihrem Namen Mail verschickt hat und ob sie bestanden hat.
Führen Sie es stufenweise ein:
- Starten Sie mit
p=noneund lesen Sie zwei bis vier Wochen lang die Berichte. Sie entdecken Absender, die Sie vergessen hatten: das Newsletter-Tool, die Rechnungssoftware, das CRM. - Bringen Sie jeden legitimen Absender in Ordnung (in SPF aufnehmen, DKIM-Signierung in dessen Einstellungen aktivieren).
- Wechseln Sie zu
p=quarantineund, sobald die Berichte sauber sind, zup=reject.
Reverse DNS, HELO und die IP selbst
Der empfangende Server betrachtet auch die Verbindung. Die IP Ihres Servers sollte einen PTR-Eintrag (Reverse DNS) haben, der auf einen Hostnamen auflöst – etwa mail.example.com –, der wiederum auf dieselbe IP auflöst. Der Name, mit dem sich der Server im SMTP-Gruß (HELO) meldet, sollte derselbe Hostname sein. PTR-Einträge setzen Sie bei Ihrem Hoster, meist in der Cloud-Konsole neben der IP, nicht im DNS Ihrer Domain.
Zwei weitere Prüfungen, bevor Sie Ihren Einträgen die Schuld geben:
- Ist Port 25 offen? Viele Cloud-Anbieter, Hetzner eingeschlossen, sperren ausgehenden Port 25 bei neuen Konten, bis Sie die Freischaltung beantragen. Die Mail staut sich dann in der Warteschlange und geht nie raus.
- Steht die IP auf einer Blockliste? Wiederverwendete Cloud-IPs tragen manchmal die Vorgeschichte eines früheren Mieters mit sich. Prüfen Sie sie vor dem Livegang gegen Spamhaus und ähnliche Listen.
Richtig testen
Raten Sie nicht – prüfen Sie, was die Welt sieht:
dig +short TXT example.com
dig +short TXT mail._domainkey.example.com
dig +short TXT _dmarc.example.com
dig +short -x 203.0.113.10
Schicken Sie dann eine echte Nachricht an eine Gmail-Adresse und öffnen Sie Original anzeigen. Sie wollen drei Zeilen sehen: SPF: PASS, DKIM: PASS und DMARC: PASS. Der Header Authentication-Results liefert die Details, wenn etwas scheitert. Ein Bewertungsdienst wie mail-tester.com prüft Inhalt, Blocklisten und Authentifizierung in einem Durchgang, und mit swaks verschicken Sie Testnachrichten von der Kommandozeile, ohne Ihre Anwendung anzufassen.
Fehler, die die Zustellung still zerstören
- Zwei SPF-Einträge nach dem Hinzufügen eines neuen Dienstes. SPF scheitert für alles.
- Die Anwendung sendet mit der falschen Domain. WordPress verwendet standardmäßig
wordpress@ihredomain, und viele Skripte senden alswww-data@hostname. DasFrom:muss eine Domain sein, die Sie authentifiziert haben. - Drittabsender vergessen – Newsletter- und Transaktionsmail-Dienste brauchen jeweils ihr eigenes SPF-Include und ihr eigenes DKIM-Setup.
- Direkt auf
p=rejectspringen, ohne die Berichte zu lesen. Ihre Rechnungen verschwinden zusammen mit dem Spam. - DKIM ohne Alignment. Ein Dienst, der mit seiner Domain signiert, besteht DKIM, fällt aber bei DMARC durch. Richten Sie in seinem Dashboard die Signierung mit Ihrer eigenen Domain ein.
- Weiterleitung bricht SPF. Wird Mail weitergeleitet, steht der weiterleitende Server nicht im SPF des ursprünglichen Absenders. DKIM übersteht die Weiterleitung – ein Grund mehr, nie darauf zu verzichten.
- Ein Schwall von einer kalten IP. Eine neue IP, die plötzlich Tausende Nachrichten verschickt, sieht aus wie eine kompromittierte Maschine. Steigern Sie das Volumen schrittweise.
Wie ShadowPanel die DNS-Seite automatisiert
ShadowPanel ist ein selbstgehostetes Hosting-Control-Panel mit eingebautem Mail-Hosting (Postfix mit OpenDKIM-Milter), und die Zustellbarkeits-Einrichtung ist ein Knopfdruck statt eines Abends voller Schlüsselerzeugung und kopierter TXT-Einträge.
- DKIM mit einem Klick. Die E-Mail-Seite hat pro Domain einen Bereich „Zustellbarkeit". Ein Klick erzeugt einen 2048-Bit-DKIM-Schlüssel, trägt ihn in die Signing-Tabellen von OpenDKIM ein und startet die Signierung ausgehender Mail für diese Domain.
- SPF- und DMARC-Einträge werden für Sie angelegt. Wird die DNS-Zone der Domain vom Panel verwaltet – auf seinem eigenen Nameserver oder über ein verbundenes Hetzner-DNS- oder Cloudflare-Konto –, fügt das Panel den DKIM-Eintrag, einen SPF-Eintrag (
v=spf1 a mx ~all) und eine DMARC-Startrichtlinie (p=none, Berichte anpostmaster@Ihrer Domain) ein. Bestehende SPF- und DMARC-Einträge werden erkannt und nicht angetastet – die Doppel-SPF-Falle kann so nicht entstehen. Lange DKIM-Schlüssel werden für den lokalen Nameserver korrekt aufgeteilt. - Externes DNS? Kopieren und einfügen. Liegt die Zone woanders, zeigt das Panel die exakten Einträge zum Anlegen bei Ihrem DNS-Anbieter, und eine Statusprüfung zeigt, welche bereits vorhanden sind.
- Postfächer und Aliase. Legen Sie Postfächer und Weiterleitungen/Aliase pro Domain an; das Panel lehnt einen Alias ab, der ein bestehendes Postfach stillschweigend überdecken würde.
Was Ihre Aufgabe bleibt: den PTR-Eintrag bei Ihrem Hoster setzen, Port 25 bei Bedarf freischalten lassen und DMARC von p=none auf quarantine oder reject verschärfen, sobald die Berichte sauber aussehen. Ziehen Sie gleichzeitig Mail aus dem Shared Hosting um, deckt von cPanel auf einen VPS umziehen – ohne Ausfallzeit die Postfach-Seite ab, und ein Hosting-Panel auf einem Hetzner-VPS installieren den Server.
Fazit
Mail von einem neuen Server landet im Spam, weil Empfänger sie nicht verifizieren können – nicht, weil es schlechte Mail ist. Veröffentlichen Sie einen einzigen sauberen SPF-Eintrag, signieren Sie alles mit einem 2048-Bit-DKIM-Schlüssel, starten Sie DMARC mit p=none und verschärfen Sie es, sobald die Berichte sauber sind, setzen Sie einen passenden PTR-Eintrag und testen Sie mit echten Headern statt mit Hoffnung. ShadowPanel macht aus DKIM, SPF und DMARC einen einzigen Klick für die Domains, die es verwaltet, und liefert Ihnen kopierfertige Einträge für alle anderen.
curl -fsSL https://shadowpanel.de/install.sh | bash
Verwandte Artikel
Staging-Umgebung für WordPress und Laravel richtig einrichten
Änderungen direkt auf der Live-Site zu testen geht gut, bis es eines Tages nicht mehr gut geht. Eine richtige Staging-Um...
Viele WordPress-Sites verwalten: Updates, Backups, Sicherheit
Zehn WordPress-Sites sind ein Hobby, fünfzig sind ein Job. Hier ist eine wiederholbare Routine, mit der Sie einen ganzen...
Sicherheitshinweis: kritische PHP-Lücken CVE-2026-109618 und CVE-2026-109619
Am 21. Oktober 2026 wurden zwei kritische Schwachstellen im PHP-Kern veröffentlicht, die Remote Code Execution ohne Anme...