DKIM (DomainKeys Identified Mail) einrichten für eine bessere E-Mail-Zustellbarkeit

Alle Mailserver versuchen, Mails mit gefälschten Absendern abzublocken. Betrüger täuschen vertrauenswürdige, dem Empfänger bekannte Absender-Adressen vor, um beispielsweise einen Trojaner einzuschmuggeln oder den Nutzer zur Preisgabe sensibler Daten zu bewegen (Phishing).

Eine Methode, die Echtheit des Absenders zu prüfen, ist DKIM – ein Konzept, mit dem sich E-Mails digital signieren lassen. DKIM steht als Abkürzung für „DomainKeys Identified Mail“.

Das heute gebräuchliche DKIM entstand 2004 als Gemeinschaftswerk eines Firmenkonsortiums. DKIM integriert die früheren Konzepte „DomainKeys“ von Yahoo und „Identified Internet Mail“ von Cisco. Dies erklärt die Abkürzung DKIM: DK = DomainKeys, IM = Identified Internet Mail.

Das Funktionsprinzip von DKIM

DKIM basiert auf der Kommunikation zwischen dem sendenden und dem empfangenden Mailserver – der Endnutzer bekommt davon nichts mit.

Stark vereinfacht ausgedrückt fügt der sendende Mailserver der E-Mail eine digitale Signatur hinzu, die vom empfangenden Server überprüft wird. Dazu ruft er bei demjenigen Mailserver, der als Absender deklariert ist, den zur Signatur passenden öffentlichen Schlüssel ab.

Wenn der öffentliche Schlüssel nicht zur Signatur passt, so kann dies folgende Gründe haben:

  • Die E-Mail wurde nicht vom Mailserver gesendet, der im Mail-Header deklariert ist, sondern von einem anderen – betrügerischen – Server.
  • Die E-Mail wurde auf dem Weg vom „echten“ Mailserver zum Empfänger verändert. Beispielsweise könnte ein Hacker die Mail abfangen, abändern und anschließend weitersenden.

Die technischen Komponenten von DKIM

Um DKIM zu verstehen, lohnt es sich, einen Blick auf die einzelnen „Bausteine“ zu werfen, auf denen das Konzept aufbaut.

Hashing

Nach einem bestimmten Algorithmus wird aus den Inhalten der E-Mail eine Zeichenfolge errechnet, der sogenannte Hash-Wert. Dieser wird dem Header der E-Mail hinzugefügt.

Hinweis

Das Hashing folgt demselben Prinzip wie die Prüfziffer eines Einzahlungsscheins, wo aus den Ziffern der Referenznummer ein Wert errechnet und als letzte Ziffer der Referenznummer beigefügt wird.

Wenn der Empfänger den Hash-Wert der erhaltenen E-Mail nach demselben Algorithmus errechnet, dann müsste er genau die Zeichenfolge erhalten, die dem Mail-Header hinzugefügt wurde. Stimmt der Hash-Wert nicht überein, dann weiß der Empfänger, dass die E-Mail verändert wurde.

Asymmetrische Verschlüsselung

Damit der Empfänger sicher sein kann, dass der Hash-Wert tatsächlich vom originalen Sender stammt, ist eine weitere Maßnahme erforderlich: die digitale Signatur.

Zur Absender-Authentifizierung wird die asymmetrische Verschlüsselung verwendet. Sie basiert auf einem Schlüsselpaar: Was mit dem Schlüssel A verschlüsselt wurde, kann nur mit dem Schlüssel B wieder entschlüsselt werden. Der eine Schlüssel wird geheim gehalten („privater Schlüssel“), der andere veröffentlicht („öffentlicher Schlüssel“).

Tipp

Ausführliche Informationen zur Verschlüsselung finden Sie in diesem Übersichtsartikel über Verschlüsselungsverfahren.

Der Ablauf sieht folgendermaßen aus:

  1. Der Absender verschlüsselt den errechneten Hash-Wert mit dem privaten Schlüssel.
  2. Den verschlüsselten Hash-Wert fügt er dem Mail-Header hinzu („Signatur“).
  3. Der Empfänger ruft auf dem Domain Name Server des Senders dessen öffentlichen Schlüssel ab und entschlüsselt damit die Signatur.
  4. Den entschlüsselten Hash-Wert rechnet er nach: Wenn sein selbst errechneter Hash-Wert mit dem entschlüsselten übereinstimmt, ist alles in Ordnung.

TXT-Eintrag auf dem Nameserver

Damit die empfangenden Mailserver den öffentlichen Schlüssel des Senders abrufen können, muss dieser als TXT Resource Record in der DNS-Zone der Domain veröffentlicht werden.

Der DKIM-Eintrag enthält die folgenden Elemente:

  • Die Version, häufig codiert mit v=DKIM1
  • Den Verschlüsselungsalgorithmus; dieser ist immer RSA (k=rsa).
  • Der öffentliche Schlüssel (p=); dabei handelt es sich um eine lange Zeichenkette.
  • Der Selektor; dieser ist je nach Provider unterschiedlich. Beispiel: default._domainkey oder k1._domainkey

Der DKIM-Eintrag kann in der Regel nur anhand des E-Mail-Headers abgerufen werden. Denn für den Abruf wird nicht nur der Domänenname, sondern auch der Selektor verlangt. Dieser ist meistens nicht bekannt oder kann nur mit einer aufwendigen Recherche eruiert werden.

Einen DKIM-Eintrag erstellen

Um einen DKIM-Record zu erstellen, müssen Sie ein RSA-Schlüsselpaar erzeugen und dieses auf dem Server an der richtigen Stelle hinterlegen. Die meisten E-Mail-Provider nehmen Ihnen diese Arbeit ab.

Tipp

Um besser zu verstehen, wie DKIM funktioniert, können Sie einen Record manuell erzeugen. Dazu stehen Ihnen im Internet verschiedene Tools kostenlos zur Verfügung, z. B. der DKIM Record Generator von EasyDMARC. Geben Sie oben einen frei wählbaren Selektor ein (Beispiel: k1) und rechts eine beliebige Domain. Der Generator gibt einen privaten und einen öffentlichen Schlüssel aus. Der private Schlüssel („private key“) muss auf dem Mailserver hinterlegt werden (dies kann nur Ihr Mailprovider ausführen), der öffentliche wird im DKIM-Record eingetragen.

Den DKIM-Eintrag überprüfen

Ob der DKIM-Eintrag tatsächlich öffentlich abrufbar ist, können Sie mithilfe eines DKIM-Checkers überprüfen, z. B. mit dem DKIM Record Lookup von EasyDMARC.

Am einfachsten ist es jedoch, sich selbst eine E-Mail zu senden und dann die Kopfzeile anzusehen. Dort finden Sie den Eintrag „DKIM-Signature“:

Tipp

Wenn Sie die Kopfzeile in ein Headline Analyzer Tool kopieren, erhalten Sie übersichtliche und detaillierte Informationen darüber.


Auf dem Laufenden bleiben?

Jetzt für unseren Newsletter anmelden und gratis Online-Marketing Whitepaper für lokale Anbieter sichern!