Vom Audit zu funktionierendem SPF, DKIM und DMARC an einem Arbeitstag, ohne Unterbrechung des Mailverkehrs

Ein Mailserver für vier Firmendomains signierte nichts, veröffentlichte keine DMARC-Richtlinie und wurde von Microsoft abgewiesen. Unsere Ingenieure haben ihn geprüft, die Änderung an einer Domain erprobt und in Gruppen ausgerollt. Das Ergebnis: Alle drei Prüfungen bestehen bei Gmail, die Microsoft-Sperre ist aufgehoben, und die Nutzer haben nichts bemerkt.

  • 1 Arbeitstag vom Audit bis zum Rollout
  • Null Ausfallzeit
  • SPF, DKIM und DMARC bestehen bei Gmail
Ein Server mit vier Einschüben schickt vier Briefumschläge auf vier gleichmäßigen Bahnen durch die Tore SPF, DKIM und DMARC, jedes mit einem orangen Häkchen, in den Posteingang

Ein Mailserver für vier Domains kleiner Unternehmen, das DNS verteilt auf drei Anbieter

Ausgangslage

Der Server bediente vier Domains, aber keine davon signierte ihre Post mit DKIM oder veröffentlichte eine DMARC-Richtlinie, und eine Domain hatte gar keinen SPF-Eintrag. Seit die großen Postfachanbieter ihre Regeln für Absender verschärft haben, landet solche Post öfter im Spam oder wird abgewiesen. Dazu kamen Mails an Microsoft-Postfächer mit dem Fehler 550 5.7.1 (S3150) zurück.

Das DNS der vier Domains lag bei drei Anbietern, jede Änderung bedeutete also mehrere Oberflächen und eine eigene Prüfung.

Lösung

Zuerst ein Audit: die Konfiguration von Postfix, Dovecot und amavis, das öffentliche DNS aller Domains und die Logs der letzten Tage. Dann ein Plan in Stufen nach Priorität: zuerst DKIM, DMARC und die Microsoft-Sperre, danach Härtung und Monitoring.

Eine Domain diente als Pilot, die übrigen folgten in Gruppen je DNS-Anbieter. Jeder DNS-Eintrag wurde von außen geprüft, auf beiden autoritativen Servern und auf öffentlichen Resolvern, bevor eine Domain zu signieren begann. Jeder Schritt hatte eine Kopie der Konfiguration und ein Verfahren zum Zurücknehmen, und Postfix stellte weiter zu, selbst wenn das Signieren ausgefallen wäre.

Ergebnisse

SPF
4 von 4 Domains, dazu ein Eintrag für den HELO-Namen des Servers
DKIM und DMARC
4 von 4 Domains signieren mit DKIM und veröffentlichen DMARC
Prüfung bei Gmail
SPF, DKIM und DMARC bestanden
Microsoft-Sperre
1 Stunde 18 Minuten nach der ersten Nachricht an den Support aufgehoben
Ausfallzeit während des Rollouts
Keine
Vom Audit bis zum Rollout
1 Arbeitstag

So sind wir vorgegangen

  1. Audit ohne Eingriff

    Die Konfiguration von Postfix, Dovecot und amavis, die DNS-Einträge aller Domains und die Logs der letzten Tage. In dieser Phase wurde am Server nichts geändert.

  2. Plan in Stufen

    Zuerst, was die Zustellbarkeit am stärksten beeinflusst: DKIM, DMARC und die Microsoft-Sperre. Härtung und Monitoring danach.

  3. Pilot an einer Domain

    Erst dann die übrigen Domains, in Gruppen je DNS-Anbieter.

  4. Jeder Eintrag von außen geprüft

    Beide autoritativen Nameserver und öffentliche Resolver, der RSA-Schlüssel, die Tags, die TTL und ob sich Schlüssel zwischen Domains wiederholen.

  5. Eine Schranke vor dem Signieren

    Eine Domain kam erst in die Signiertabelle, wenn ihr Schlüssel den Test bestanden hatte. Eine Domain mit falschem oder fehlendem Eintrag wurde übersprungen, ohne die anderen aufzuhalten.

  6. Sichere Änderungen

    Vor jedem Schritt eine Kopie der Konfiguration und ein Verfahren zum Zurücknehmen. Postfix nahm Post an, auch wenn der Signierdienst ausgefallen wäre.

Herausforderungen, die wir gelöst haben

Die meiste Zeit ging in Dinge, die richtig aussahen und falsch waren, oder falsch aussahen und richtig waren.

Ein Diagnosewerkzeug, das beim PTR-Eintrag log

Eine Abfrage des PTR-Eintrags des Servers lieferte einen völlig anderen Test-Hostnamen, was nach einem schweren Widerspruch zum HELO-Namen aussah. Die Ursache war der lokale Resolver auf der Diagnosestation: Er beantwortete PTR-Anfragen aus der Hosts-Datei des Rechners. Im öffentlichen DNS war der Eintrag die ganze Zeit korrekt. Von da an ging jede DNS-Prüfung direkt an die autoritativen Server und an einen öffentlichen Resolver.

Microsoft sagte, die Adresse sei nicht gesperrt, und wies Post trotzdem ab

So sah die Unzustellbarkeitsmeldung aus, die ein Nutzer bekam; Adressen und Zeitstempel sind anonymisiert:

<**************@hotmail.com>: host hotmail-com.olc.protection.outlook.com[x.x.x.x]
said: 550 5.7.1 Unfortunately, messages from [x.x.x.x] weren't sent. Please contact your Internet service provider since part of their network is on our block list (S3150). You can also refer your provider to http://mail.live.com/mail/troubleshooting.aspx#errors.
[Name=Protocol Filter Agent][AGT=PFA][MxId=**************] [**************.eurprd04.prod.outlook.com 2026-03-17T08:14:52.316Z **************] (in reply to MAIL FROM command)

Die Abweisungen trugen den Code S3150, während das Selbstbedienungsportal von Microsoft beteuerte, die IP-Adresse sei nicht gesperrt. S3150 bedeutet eine Sperre eines Adressbereichs beim Hosting-Anbieter, nicht einer einzelnen Adresse, und das Portal kennt nur einzelne Adressen. Der Weg führte über ein Ticket beim Microsoft-Support, eskaliert mit Fakten: SPF, DKIM und DMARC in allen Domains, saubere öffentliche Blacklists, geringes Volumen, nur authentifizierte Absender. Die Bestätigung, dass die Sperre aufgehoben ist, kam 1 Stunde 18 Minuten nach der ersten Nachricht an den Support. DKIM und DMARC heben eine solche Sperre nicht auf, weil Microsoft die Verbindung abweist, bevor es die Nachricht sieht; vollständige Authentifizierung macht die Eskalation aber deutlich stärker.

Der Server hätte eingehenden Spam signieren können

Mit global aktiviertem Signier-Milter, wie es die meisten Anleitungen vorsehen, wäre von amavis geprüfte Post auf dem Rückweg in Postfix ein zweites Mal durch ihn gelaufen. Eingehender Spam mit gefälschtem Absender aus einer der vier Domains hätte so eine gültige DKIM-Signatur dieser Domain erhalten. Die Milter sind deshalb auf dem Port, über den amavis die Post zurückgibt, und auf dem öffentlichen Port 25 abgeschaltet.

Ein Tag in einem DKIM-Eintrag, und die TTL

Der Schlüsseltest scheiterte mit „unknown hash“: Das Tag h= in einem DKIM-Eintrag nimmt Hash-Namen wie sha256 an, nicht den Namen des Signaturalgorithmus. Empfänger, die sich an die Spezifikation halten, hätten jede Signatur abgelehnt. Der Eintrag wurde korrigiert, bevor die Domain etwas signierte, und der Schlüsseltest wurde zur Bedingung für das Einschalten. Weil der Eintrag eine TTL von einem Tag hatte, hätten Resolver die falsche Fassung 24 Stunden im Cache halten können; für den Rollout wurde die TTL auf eine Stunde gesenkt.

Unzustellbarkeitsmeldungen brauchen SPF für den eigenen Servernamen

Eine Unzustellbarkeitsmeldung hat einen leeren Umschlagabsender, SPF prüft dann stattdessen den HELO-Namen des Servers. Ohne SPF-Eintrag für diesen Namen würden solche Meldungen an DMARC scheitern, sobald die Hauptdomain auf reject wechselt, und externe Absender würden nie erfahren, dass ihre Mail nicht angekommen ist. Ein Eintrag hat das behoben.

Ein Laptop fragt einen lokalen Resolver mit Cache, dessen Antwort durchgestrichen ist, und den autoritativen DNS-Server mit orangem Häkchen, der den echten Eintrag liefert

Vorher und nachher

Prüfung Vorher Nachher
SPF 3 von 4 Domains, kein SPF für den HELO-Namen 4 von 4, dazu SPF für den HELO-Namen
DKIM 0 von 4: Der Server signierte gar nicht 4 von 4 aktiv
DMARC 0 von 4 4 von 4, p=none mit Sammelberichten
Ergebnis bei Gmail Nur SPF bestanden SPF, DKIM und DMARC bestanden
Microsoft (Outlook, Hotmail) Abweisungen mit Code S3150 Sperre 1 Stunde 18 Minuten nach der ersten Nachricht an den Support aufgehoben
Zeit und Ausfall Vier Domains, drei DNS-Anbieter Ein Arbeitstag, null Ausfall

Was wir daraus mitnehmen

  • Fehlendes DKIM und DMARC ist heute ein Zustellbarkeitsproblem, keine Frage guter Praxis. Die großen Anbieter erwarten zunehmend alle drei Mechanismen.
  • Die Zeit geht in die Details: der Weg einer Nachricht durch den Inhaltsfilter, das chroot, die Tags in den Einträgen, die TTL, die Unzustellbarkeitsmeldungen und das Lesen von Zahlen in Logs. Mehr als 2.500 Logzeilen zu fehlendem TLS waren am Ende 36 Nachrichten in fünf Tagen, meist automatische Antworten an Massenversender; die TLS-Pflicht blieb.
  • Mehrere Domains bei mehreren DNS-Anbietern gehen ohne Ausfall: Audit, Pilot, Gruppen, nach jedem Schritt eine Prüfung von außen und ein fertiger Plan zum Zurücknehmen.

Die nächsten Schritte für den Betreiber sind aufgeschrieben: DMARC-Berichte auswerten, auf quarantine und dann auf reject wechseln, die Reputation von Adresse und Domains in den Absenderwerkzeugen von Microsoft und Google beobachten, und ein Verfahren für eine neue Domain, bei dem ein Skript Schlüssel, Tabelleneinträge und DNS-Werte erzeugt.

Die DMARC-Richtlinie als Treppe: p=none mit Sammelberichten ist erreicht und orange gerahmt; p=quarantine mit dem Spamordner und p=reject mit einer abgewiesenen Nachricht sind die nächsten Stufen, gestrichelt

Verwandte Ausgangslagen

  • Rechnungen, Angebote oder Einmalpasswörter landen im Spam oder kommen zurück? Gmail setzt seine Regeln für Absender seit November 2025 verstärkt durch, auch mit Ablehnungen (Stand: 2026-10). Wir prüfen SPF, DKIM, DMARC und Reputation und legen Ihnen eine schriftliche Maßnahmenliste vor.

  • Der Support für Debian 11 endete am 31.08.2026, der für CentOS 7 am 30.06.2024 (Stand: 2026-10). Wir bringen Ihren Server auf den aktuellen Stand oder planen den Umstieg auf Debian und führen ihn durch. Ebenso arbeiten wir mit Proxmox VE 8 und mit physischen Servern, die wir auf Proxmox umziehen.

Weitere Projekte

  • Ein Telefon mit QR-Code, eine in Stücke geteilte Datei, drei parallele Ströme zu einem Server mit Festplatte und ein Galerieraster

    Eine Foto-Upload-App für Hochzeitsgäste

    Hochzeitsgäste scannen einen QR-Code, öffnen eine geheime Adresse und laden Fotos und Videos direkt vom Telefon hoch: keine App, kein Konto, keine Anmeldung. Dateien bis 5 GB landen auf der Festplatte des Kunden, und das Paar sieht zu, wie sich die Galerie während der Feier füllt. Ein Abend, keine zweite Chance, und Telefone von vor sechs Jahren.

  • Eine Punkteskala mit gestrichelter Schwelle: Der Phishing-Umschlag wandert in einem orangen Bogen über die Schwelle

    Ein Spamfilter, der lief, aber nicht schützte

    Dienste liefen, die Konfiguration war gültig, im Systemstatus stand kein Fehler. Trotzdem landete Phishing im Posteingang, während Newsletter von Partnern im Spam lagen. Unsere Ingenieure haben gemessen, welche Erkennungsmechanismen tatsächlich ansprangen, die Ursachen behoben und drei Monate später eine Regression gefunden und behoben, die sich nur stundenweise zeigte.

In 20 Minuten klären wir, welcher erste Schritt zu Ihrem System passt

Sie schildern Ziel und Stand, wir sagen offen, ob und wie wir helfen können. Antwort innerhalb eines Werktags, unverbindlich.

Telefon (Deutsch, Polnisch, Englisch) +48 501 250 220
E-Mail E-Mail

Erreichbar: Montag bis Freitag, 9:00 bis 17:00 Uhr (MEZ); Support und Notfälle rund um die Uhr (24/7)