Stand: Juli 2026
Zusammenfassung: Nach dieser Anleitung veröffentlicht deine Domain einen gültigen DKIM-Public-Key in Route 53 — entweder als die CNAME-Records, die dein Mail-Anbieter dir gibt, oder als TXT-Record für deinen eigenen Mailserver.
Voraussetzungen
- Eine öffentliche Hosted Zone in Amazon Route 53
- Ein Maildienst, der deine ausgehende Post signiert (Amazon SES, Google Workspace, Microsoft 365 oder eigener Mailserver)
Was ist DKIM?
DKIM (DomainKeys Identified Mail) fügt ausgehenden E-Mails eine digitale Signatur hinzu. Empfangende Server prüfen damit, ob eine Mail wirklich von deiner Domain stammt und unterwegs nicht verändert wurde. DKIM arbeitet mit einem Schlüsselpaar: Der private Schlüssel liegt auf dem Mailserver und signiert; der öffentliche Schlüssel steht im DNS und dient dem Empfänger zur Verifikation.
Zur Einordnung: Während SPF den Server autorisiert, sichert DKIM die Nachricht. Erst mit DMARC wird daraus ein durchsetzbares Fundament.
Die Ausgangslage bei Route 53
Route 53 ist reines DNS — es erzeugt nie ein Schlüsselpaar. Die Schlüssel kommen von deinem Maildienst; Route 53 veröffentlicht nur die öffentliche Hälfte. Zwei Formen sind üblich:
A) CNAME-Delegation (Amazon SES Easy DKIM, Microsoft 365). Der Anbieter hostet den Schlüssel und gibt dir eine Handvoll CNAME-Records (bei SES Easy DKIM drei davon), die in die Domain des Anbieters zeigen. Die legst du in Route 53 nach. Der Vorteil: Der Anbieter kann Schlüssel rotieren, ohne dass du das DNS erneut anfassen musst.
B) Eigener TXT-Public-Key (eigener Mailserver, Google Workspace). Dein Mailserver (z. B. OpenDKIM, oder Google Workspace, das dir einen TXT-Wert anzeigt) erzeugt das Schlüsselpaar. Den öffentlichen Schlüssel veröffentlichst du als TXT-Record unter selektor._domainkey.
Schritt-für-Schritt-Anleitung
A) CNAME-Delegation (z. B. Amazon SES)
1. CNAME-Ziele holen. Aktiviere DKIM in der Konsole deines Mail-Anbieters und kopiere die angezeigten CNAME-Paare (Host/Ziel).
2. Jeden CNAME in Route 53 anlegen. Öffne deine Hosted Zone und klicke für jedes Paar auf Create record:
| Feld | Wert |
|---|---|
| Record name | <token>._domainkey (wie vom Anbieter angezeigt) |
| Record type | CNAME |
| Value | der Ziel-Hostname des Anbieters |
Beachte eine AWS-Regel: „if you create a CNAME record for a subdomain, you cannot create any other records for that subdomain” — und am Zone-Apex sind CNAMEs verboten („The DNS protocol does not allow you to create a CNAME record for the top node of a DNS namespace, also known as the zone apex.”). Für DKIM ist beides kein Problem, weil der Selector-Host (<token>._domainkey) immer eine eigene Subdomain ist.
B) Eigener TXT-Public-Key
1. Schlüssel am Mailserver erzeugen. Dein Mailserver generiert Selector und Schlüsselpaar. Du bekommst einen öffentlichen Schlüssel im Format v=DKIM1; k=rsa; p=....
2. TXT-Record in Route 53 anlegen:
| Feld | Wert |
|---|---|
| Record name | <selektor>._domainkey (z. B. dkim._domainkey) |
| Record type | TXT |
| Value | "v=DKIM1; k=rsa; p=<dein-public-key>" |
Wie beim SPF-Record gilt die Route-53-Regel: Der TXT-Wert gehört in doppelte Anführungszeichen („A TXT record contains one or more strings that are enclosed in double quotation marks”). Ein DKIM-Key überschreitet das 255-Zeichen-Limit eines einzelnen Strings leicht — Route 53 lässt dich teilen: „A single string can include up to 255 characters”, du zerlegst einen langen Key also in mehrere Anführungszeichen-Strings in derselben Zeile ("v=DKIM1; k=rsa; " "p=MIIBI..."). Der Gesamtwert darf bis zu 4.000 Zeichen lang sein.
Warten, bis die Änderung aktiv ist
Laut AWS-Doku gilt „Changes generally propagate to all Route 53 name servers within 60 seconds” — nachgelagerte Caches ziehen nach, sobald die TTL abläuft.
Ergebnis prüfen
Der DNS-Record allein genügt nicht — der Mailserver muss auch tatsächlich mit dem privaten Schlüssel signieren. Prüfe das Zusammenspiel mit dem kostenlosen MXAudit-Scanner — er zeigt DKIM, SPF und DMARC auf einen Blick.
Häufige Fehler
Geteilten Key falsch eingetragen. Ein langer RSA-Key muss in Anführungszeichen-Strings von ≤255 Zeichen in einer Zeile zerlegt werden — nicht als ein 300-Zeichen-String eingefügt.
Anführungszeichen vergessen. Im Value-Feld von Route 53 gehört der TXT-Wert in doppelte Anführungszeichen.
Selektor stimmt nicht. Der Name im DNS (selektor._domainkey) muss exakt dem Selektor entsprechen, mit dem der Mailserver signiert.
Zusätzliche Records unter einem CNAME-Host. Bei CNAME-Delegation kannst du unter derselben Subdomain keine weiteren Records anlegen — Route 53 (und DNS selbst) verbietet das.
DNS gesetzt, aber keine Signatur. DKIM braucht beide Hälften: Public Key im DNS und aktive Signierung am Mailserver. Prüfe beides.
Weiterführende Links
- Amazon Route 53 Developer Guide: Supported DNS record types (abgerufen: 10. Juli 2026)
- Amazon Route 53 Developer Guide: Records über die Konsole anlegen (abgerufen: 10. Juli 2026)
- RFC 6376 — DomainKeys Identified Mail (DKIM)
