// so behebst du es
Amazon SES eigene MAIL-FROM-Domain: SPF-Alignment für DMARC
Amazon SES nutzt eine Bounce-Domain unter amazonses.com, daher ist SPF nicht auf DMARC ausgerichtet. Richte eine eigene MAIL-FROM-Subdomain mit MX und SPF ein.
Was das bedeutet
Jede E-Mail hat zwei Absenderadressen. Die From-Adresse ist das, was Menschen sehen. Die MAIL FROM (auch Envelope-Absender, Return-Path oder Bounce-Adresse genannt) nutzen Server, um Bounces zurückzuschicken. SPF prüft die MAIL-FROM-Domain, nicht die From-Domain.
Standardmäßig verwendet Amazon SES eine Subdomain von amazonses.com als MAIL FROM. SPF besteht, aber für amazonses.com, nicht für deine Domain. DMARC braucht ein bestandenes SPF oder DKIM für eine Domain, die zu deiner From-Domain passt. Mit den Standardeinstellungen zählt SPF für DMARC also nie. In einem Bericht sieht das so aus:
spf=pass smtp.mailfrom=0100018abc...@us-east-1.amazonses.com dkim=pass header.d=yourdomain.com dmarc=pass header.from=yourdomain.com
DMARC besteht hier trotzdem, dank DKIM. Du hängst aber allein von DKIM ab: Wenn ein Weiterleiter oder eine von einem Gateway angefügte Fußzeile die Signatur bricht, schlägt DMARC fehl. Eine eigene MAIL-FROM-Domain verschafft dir einen zweiten, ausgerichteten Treffer. Das Grundprinzip wird in Return-Path, Envelope-Absender und From erklärt.
Warum das passiert
- Für die Identität ist keine eigene MAIL-FROM-Domain eingerichtet (Standard).
- Eine eigene MAIL-FROM-Domain ist eingerichtet, aber ihr Status ist Pending, TemporaryFailure oder Failed. Mit der Ausweichoption Use default MAIL FROM domain kehrt SES stillschweigend zu
amazonses.comzurück. - Die MAIL-FROM-Subdomain hat zwei MX-Einträge, gar keinen oder eine falsche Region im MX-Wert.
- Dein DMARC-Eintrag verlangt striktes SPF-Alignment (
aspf=s). Eine Subdomain wiemail.yourdomain.compasst nur im lockeren Modus (relaxed), dem Standard.
So prüfst du es
Sende über SES eine E-Mail an die einmalige Adresse auf der Startseite von Delivmail und öffne den Bericht. Achte auf die Domain, die SPF prüft, und darauf, ob der DMARC-Bereich SPF als ausgerichtet anzeigt. Siehst du amazonses.com, ist die eigene MAIL FROM nicht aktiv. Öffne in der SES-Konsole Identities, deine Domain und den Bereich Custom MAIL FROM domain, um ihren Status zu sehen. Im Terminal:
dig +short MX mail.yourdomain.com dig +short TXT mail.yourdomain.com dig +short TXT _dmarc.yourdomain.com
So behebst du es
- Wähle eine eigene Subdomain, zum Beispiel
mail.yourdomain.comoderbounce.yourdomain.com. AWS verlangt, dass sie eine Subdomain einer verifizierten Identität ist, nicht als From-Adresse genutzt wird und keine E-Mails empfängt. Verwende keine Subdomain, die bereits MX-Einträge für ein Postfach hat. - In der Konsole: Identities, deine Domain, Custom MAIL FROM domain, Edit. Setze den Haken bei Use a custom MAIL FROM domain, gib die Subdomain ein und wähle das Behavior on MX failure. Use default MAIL FROM domain sendet weiter, wenn das DNS kaputt geht; Reject message stoppt den Versand mit einem
MailFromDomainNotVerified-Fehler. - Veröffentliche die zwei Einträge, die SES anzeigt, und ersetze die Region durch deine:
mail.yourdomain.com. MX 10 feedback-smtp.us-east-1.amazonses.com mail.yourdomain.com. TXT "v=spf1 include:amazonses.com ~all"
Auf dieser Subdomain darf es genau einen MX-Eintrag geben, sonst schlägt die Einrichtung fehl. Der SPF-Eintrag gehört auf die Subdomain, nicht auf deine Hauptdomain, daher verbraucht er keinen der 10 DNS-Lookups deines Haupt-SPF-Eintrags. Hat die Subdomain bereits einen CNAME, entferne ihn zuerst: Ein CNAME kann nicht neben MX- oder TXT-Einträgen bestehen (siehe CNAME kollidiert mit MX- und TXT-Einträgen).
Mit der CLI lautet dieselbe Einstellung:
aws sesv2 put-email-identity-mail-from-attributes \ --email-identity yourdomain.com \ --mail-from-domain mail.yourdomain.com \ --behavior-on-mx-failure USE_DEFAULT_VALUE
SES sucht bis zu 72 Stunden nach dem MX-Eintrag. Findet es ihn nicht, wird der Status Failed, und du musst die Einrichtung neu beginnen. Wiederhole das für jede Region, in der die Identität verwendet wird.
Behalte das lockere Alignment in DMARC bei (kein aspf=s), sonst passt die Subdomain nicht. Senden auch andere Dienste für deine Domain, sieh dir in mehrere E-Mail-Dienste auf einer Domain an, wie sie zusammenpassen. Für die DMARC-Grundlagen siehe DMARC schlägt fehl: SPF und DKIM passen nicht zu deiner Domain.
Prüfe, ob es behoben ist
Warte auf den Status Success in der Konsole (SES schickt dem Kontoinhaber auch eine E-Mail). Mach einen neuen Delivmail-Test: SPF sollte jetzt für mail.yourdomain.com bestehen, und DMARC sollte SPF und DKIM als ausgerichtet anzeigen. Sende dann erneut an den Empfänger, dessen Server deine Nachricht abgelehnt oder gefiltert hat. Je nach TTL kann es etwas dauern, bis DNS-Änderungen bei jedem Resolver ankommen.
Prüfe, ob es behoben ist
DNS-Änderungen können ein paar Minuten bis einige Stunden dauern. Sende danach eine neue Test-E-Mail oder scanne deine Domain erneut.
Ähnliche Anleitungen
- Kein SPF-Eintrag auf deiner DomainDeine Domain sagt nicht, welche Server E-Mails für sie senden dürfen. Füge einen TXT-Eintrag hinzu, dann können Empfänger deine echten E-Mails von Fälschungen unterscheiden.
- SPF-Fehler: zu viele DNS-Lookups (permerror)SPF erlaubt höchstens 10 DNS-Lookups. Darüber geht der ganze Eintrag kaputt und Empfänger behandeln ihn als ungültig. So verschlankst du ihn.
- Mehrere SPF-Einträge auf einer DomainEine Domain darf nur einen SPF-Eintrag haben. Bei zwei oder mehr geht SPF für jede E-Mail kaputt. Fasse sie zu einer einzigen Zeile zusammen.
- SPF scheitert: Der sendende Server ist nicht berechtigtDeine Domain hat einen SPF-Eintrag, aber der Server, der deine E-Mail gesendet hat, steht nicht darin. Finde heraus, welcher Dienst die E-Mail gesendet hat, und füge ihn hinzu.
- Keine DKIM-Signatur auf deinen E-MailsDKIM fügt eine digitale Signatur hinzu, die beweist, dass eine E-Mail wirklich von deiner Domain kommt. Schalte es bei deinem E-Mail-Anbieter ein und veröffentliche den Schlüssel im DNS.