Wie DKIM funktioniert
Dein Mailserver signiert ausgehende Mails mit einem privaten Schlüssel und schreibt die Signatur in den Header DKIM-Signature. Darin stehen die Domain (d=) und der Selector (s=). Aus beiden ergibt sich der Name des DNS-Eintrags, in dem der öffentliche Schlüssel liegt.
dkim._domainkey.example.org. IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A…"
Empfehlungen
- RSA-Schlüssel mit 2048 Bit verwenden. 1024 Bit gelten noch als gültig, Gmail und andere empfehlen 2048.
- Mit rsa-sha256 signieren. rsa-sha1 ist laut RFC 8301 veraltet.
- Die Signatur-Domain (d=) sollte zur sichtbaren From-Domain passen, damit DKIM für DMARC zählt.
- Schlüssel gelegentlich wechseln und dafür einen neuen Selector anlegen.
Häufige Fehler
- Der Schlüssel fehlt im DNS oder liegt unter einem anderen Selector, als die Signatur nennt.
- Der Record enthält mehrere TXT-Einträge, ein leeres p= (widerrufener Schlüssel) oder Zeilenumbrüche und Anführungszeichen, die beim Einfügen im DNS-Panel mitkopiert wurden.
- Der Inhalt wurde nach dem Signieren verändert, etwa durch einen Footer, einen Disclaimer oder eine Mailingliste. Dann stimmt der Body-Hash nicht mehr.
- Das Tag l= (Body-Length) lässt zu, dass Inhalt angehängt wird, und wird von strengen Prüfern abgelehnt.
So prüfst du es
Sende eine Testmail an sender.report. Der Bericht nennt Selector, Domain und den abgefragten DNS-Namen und sagt, ob der Record fehlt, fehlerhaft ist oder der DNS-Server nicht geantwortet hat. Nach einer Änderung im DNS fragst du mit einem Klick alles neu ab.