DKIM-DNS-Record-Generator
Geben Sie einen Selektornamen und einen öffentlichen Schlüssel (PEM-Format) ein, um den DNS-TXT-Eintrag für die DKIM-Signatur (v=DKIM1; k=rsa; p=...) zu erzeugen. Öffentliche Schlüssel mit mehr als 255 Zeichen werden automatisch im BIND-Zonendatei-Format aufgeteilt.
Den DNS-Eintrag für DKIM zusammensetzen
Geben Sie einen Selektornamen und einen öffentlichen Schlüssel im PEM-Format ein, und dieses Werkzeug setzt den DNS-TXT-Eintrag zusammen, mit dem DKIM-Signaturen geprüft werden, in der Gestalt `v=DKIM1; k=rsa; p=...`. Sein Platz ist `selektor._domainkey.ihredomäne`.
**Woran hier jeder stößt, ist die Grenze von 255 Zeichen je Zeichenkette in einem DNS-TXT-Eintrag.** Ein öffentlicher RSA-Schlüssel mit 2048 Bit umfasst in Base64 rund 390 Zeichen und **passt daher so nicht in eine einzige Zeichenkette.** In einer Zonendatei wird er in Klammern als mehrere Zeichenketten geschrieben, und **die empfangende Seite fügt sie wieder zu einem Wert zusammen.** Dieses Werkzeug nimmt Ihnen diese Aufteilung ab. **Das Zweite, was niemals verfehlt werden darf: Was ins DNS kommt, ist der öffentliche Schlüssel.** Der private gehört allein auf den signierenden Server und darf ihn nie verlassen.
So gehen Sie vor
- Geben Sie Domäne und Selektornamen ein Der Selektor ist ein Name Ihrer Wahl; nehmen Sie bei jedem Schlüsselwechsel einen neuen.
- Fügen Sie den öffentlichen Schlüssel im PEM-Format ein **Es ist der Schlüssel, der mit `-----BEGIN PUBLIC KEY-----` beginnt, nicht der private.**
- Sehen Sie den erzeugten Eintrag durch **Geht er über 255 Zeichen hinaus, erscheint die Ausgabe in Klammern aufgeteilt.**
- Tragen Sie ihn ins DNS ein Legen Sie ihn als TXT-Eintrag unter `selektor._domainkey.ihredomäne` ab.
Tipps für die Nutzung
- Sie können den Inhalt einer mit opendkim-genkey oder mit openssl genrsa → openssl rsa -pubout von OpenSSL erzeugten PEM-Datei direkt einfügen. Zeilenumbrüche und Kopfzeilen werden automatisch entfernt.
- Mit aktiviertem Testmodus (t=y) gehen manche Empfangsserver bei DKIM-Fehlern nachsichtiger vor, statt die Mail direkt abzulehnen. Das ist während der Testphase vor dem Produktivbetrieb die sicherere Wahl.
- Nachdem Sie den erzeugten Eintrag im DNS veröffentlicht haben, empfehlen wir, die Wirksamkeit mit dem E-Mail-Zustellbarkeits-Prüfer dieser Seite (SPF/DKIM/DMARC-Diagnose) zu bestätigen.
- Übliche Schlüssellängen sind 1024 und 2048 Bit; bei 2048 Bit überschreitet der öffentliche Schlüssel meist 255 Zeichen und wird in mehrere Strings aufgeteilt. Diese Aufteilung ist kein Fehler.
- Der Selektorname kann frei gewählt werden. Nutzt eine Domain mehrere E-Mail-Anbieter, erleichtert die Aufnahme des Anbieternamens (z. B. „google“, „mailgun“) die Verwaltung.
Wofür Sie es nutzen können
Um DKIM erstmals einzuführen
**Sind die Schlüssel erzeugt, zeigt es Ihnen, wie sie ins DNS zu schreiben sind.**
Um einen Schlüssel zu wechseln
**Fügen Sie einen Eintrag unter neuem Selektor hinzu und entfernen Sie den alten nach der Umstellung.**
Um die Schreibweise der Aufteilung zu bestätigen
Wie ein langer Schlüssel zu teilen ist, gehört genau zu dem, was man von Hand verfehlt.
Um die Angaben eines Versanddienstes zu prüfen
**Sie können bestätigen, dass ein von außen gelieferter Eintrag die richtige Gestalt hat.**
Begriffe zu DKIM
- Selektor
- Der Name, der einen Schlüssel kennzeichnet. **Er steht am Kopf von `selektor._domainkey.example.com`, und jeder Schlüssel hat seinen eigenen.**
- Öffentlicher Schlüssel
- **Jener, der ins DNS kommt.** Die empfangende Seite prüft die Signaturen mit ihm.
- Privater Schlüssel
- Der Schlüssel, mit dem die Signaturen erzeugt werden. **Er gehört allein auf den sendenden Server und darf nie veröffentlicht werden.**
- Die Grenze von 255 Zeichen
- **Die Obergrenze einer einzelnen Zeichenkette innerhalb eines TXT-Eintrags.** Was darüber hinausgeht, wird als mehrere Zeichenketten geschrieben.
- V=DKIM1
- Die Angabe, die die Fassung des Eintrags nennt. Sie steht voran.
- K=rsa
- Die Art des Schlüssels. Neben RSA gibt es Ed25519, dessen Schlüssel erheblich kürzer sind.
Häufig gestellte Fragen
Übrigens – wie Public-Key-Kryptografie E-Mail-Identitätsdiebstahl verhindert
DKIM (DomainKeys Identified Mail) wurde 2004 standardisiert, indem zwei getrennt von Yahoo! und Cisco entwickelte Technologien – DomainKeys und Identified Internet Mail – zusammengeführt wurden. Kern des Verfahrens ist die Public-Key-Kryptografie: Der Absender verschlüsselt einen aus den Kopfzeilen und einem Teil des Nachrichtentexts berechneten Hash mit seinem privaten Schlüssel und hängt ihn als DKIM-Signature-Header an. Der Empfänger prüft diese Signatur mit dem im DNS veröffentlichten öffentlichen Schlüssel und kann bei passendem Schlüsselpaar mathematisch bestätigen, dass der Inhalt nach dem Versand nicht verändert wurde.
Während SPF die Legitimität auf Netzwerkebene – die Absender-IP-Adresse – prüft, ist DKIM grundlegend anders, da es eine digitale Signatur auf den eigentlichen Inhalt der E-Mail anwendet. Selbst wenn eine Nachricht mehrfach über legitime Server weitergeleitet wird (womit SPF bekanntermaßen Schwierigkeiten hat), bleibt die DKIM-Signatur gültig, solange der Nachrichtentext unverändert bleibt. Deshalb gilt DKIM bei Zustellwegen mit Weiterleitung, etwa Mailinglisten, als zuverlässiger als SPF.
Auch der Selektor-Mechanismus ist in der Praxis wichtig. Nutzt eine Domain mehrere E-Mail-Anbieter (eigener Server, Gmail, SendGrid usw.), lässt sich jedem Anbieter ein eigenes Schlüsselpaar und ein eigener Selektorname zuordnen, sodass Schlüssel pro Anbieter unabhängig widerrufen oder erneuert werden können. Diese betriebliche Flexibilität – ein kompromittierter Schlüssel betrifft nur seinen eigenen Selektor – ist einer der Gründe, warum DKIM trotz eines einzigen einfachen DNS-Eintrags in großangelegten Mail-Infrastrukturen seit Langem im Einsatz ist.