DKIM

Copyright © Mathyas Kurmann | unsplash.com

Copyright © Mathyas Kurmann | unsplash.com

DKIM erklärt

Zusätzlich zum SPF-Eintrag lässt sich über DKIM sicherstellen, dass Ihre E-Mails beim Empfänger ohne Probleme ankommen.

DKIM steht für DomainKeys Identified Mail, also für ein Verfahren, mit dem sich Absender von E-Mails anhand eines auf dem Domainnamen basierenden Schlüssels verifizieren lassen. Sie denken wahrscheinlich, dass dafür die E-Mailadresse aus der Kopfzeile (Header) der E-Maildatei reichen müsste. Dies ist aber leider nicht der Fall. Die Adressen lassen sich relativ einfach verfälschen (Mail-Spoofing). So können, mit etwas Hintergrundwissen, beliebige E-Mailabsender in den Header eingetragen und für den Versand von Spam verwendet werden. Weiterhin ist es denkbar, dass Kriminelle Inhalte abfangen und verfälschen. Das Ziel ist meistens, den Empfänger durch Aufruf eingefügter Links zu inkriminierten Servern umzuleiten (Phishing).

Beides kann enormen Schaden verursachen, insbesondere für geschäftliche Inhaber einer Domain. Geschäftspartner und Kunden sind bestenfalls irritiert und im schlechtesten Fall dauerhaft verprellt. Speziell Kunden, die sich auf einer Mailliste für erwünschte Werbung oder Newsletter befinden, zögern vermutlich nicht, den vermeintlichen Absender auf ihre Blacklist zu setzen.

Ärgerlich ist es zudem, wenn erwünschte Werbemails und Newsletter fälschlich als Spam vom Filter des empfangenden Servers aussortiert werden. Die Wahrscheinlichkeit hierfür ist allerdings hoch, wenn Sie E-Mails ohne DKIM versenden.

Falls Sie sich nicht sicher sind, ob die eigene Domain über einen funktionierenden DKIM-Eintrag verfügt, lässt sich dies mit im Internet verfügbaren DKIM-Record-Check-Diensten feststellen.

Der konkrete Ablauf sieht dabei folgendermaßen aus. Sobald eine E-Mail versendet wird, wird dem Header der E-Mail eine sogenannte DKIM-Signatur hinzugefügt. Wenn der Empfänger die E-Mail erhält, fragt dessen Server automatisch den öffentlichen Schlüssel ab, welcher per TXT-Resource Record in der DNS-Zone der Domain veröffentlicht wurde. So wird erkannt, ob die Signatur korrekt ist oder nicht.

Zusätzliche Informationen zu DKIM

Der DKIM-Selektor stellt nichts anderes als den Namen des DKIM-Schlüssels dar. In der Regel wird hier der Name „default“ verwendet, prinzipiell darf der Name aber frei gewählt werden, insofern auf Sonderzeichen und Umlaute verzichtet wird und nur einmalig vergeben wurde.

Sie können ganz einfach testen, ob die E-Mails auch wirklich DKIM verwenden. Dafür müssen Sie sich einfach nur einen Gmail-Account erstellen und eine Test-Mail an diesen schicken. Sie öffnen einfach die ankommende E-Mail, klicken auf „Show Original Message“ und schauen sich die Optionen an. Wenn folgende Meldung unter dem Punkt DKIM steht, ist der Versand korrekt:

DKIM: DKIM passed: (address=$sender_address domain=$dkim_cur_signer), signature is good.

Fehlermeldungen können wie folgt aussehen:

DKIM: DKIM passed: $dkim_cur_signer ($dkim_verify_status), but signature is invalid

DKIM: DKIM failed: (address=$sender_address domain=$dkim_cur_signer), signature is bad.

Auch bei Microsoft Outlook können Sie dies ganz einfach unter den Eigenschaften unter der Internetkopfzeile ablesen.

Die genaue Funktionsweise von DKIM

DKIM nutzt zwei grundlegende Funktionen der Kryptografie. Zunächst wird über den Inhalt der E-Mail ein Hashwert gebildet. Hierbei handelt es sich um den sogenannten digitalen Fingerabdruck, also ein nicht fälschbares Individualmerkmal. Vom Grundsatz her funktioniert dies wie das Bilden einer Quersumme. Nur eben nicht durch simple Addition, sondern mittels der komplexen Hash-Algorithmen SHA-1 oder SHA-256. Beide Algorithmen sind Einweg-Funktionen. Dies bedeutet, dass aus dem Hashwert kein Hinweis auf den zugrunde liegenden Inhalt gezogen werden kann. Ändert sich auch nur ein Zeichen des versendeten Inhalts, entsteht zudem ein komplett anderer Hashwert.

Damit aber nicht durch einen Angreifer der neue Hashwert des durch ihn veränderten Inhalts genutzt werden kann, wird dieser verschlüsselt. Dies geschieht mit der asymmetrischen Kryptografie-Funktion RSA. Hierbei gibt es einen öffentlichen und einen privaten Schlüssel. Sinn der Funktion ist es, dass die Inhalte, die mit einem der beiden Schlüssel enkodiert wurden, ausschließlich mit dem jeweils anderen zu dekodieren sind. Dieses Prinzip können Sie sich für eine digitale Signatur zunutze machen. Der Absender enkodiert mit dem privaten Schlüssel und gibt dem Empfänger Zugriff auf den öffentlichen Schlüssel. Lässt sich der übermittelte Inhalt damit dekodieren, stammt er vom korrekten Absender.

Der private Schlüssel bleibt auf dem E-Mailserver des Absenders und der öffentliche wird dem Eintrag des Domainnamens auf dem DNS-Server hinzugefügt. Das Domain-Name-System (DNS) sorgt für die Auflösung von Domainnamen in die zur Vermittlung im Internet notwendigen IP-Adressen.

Daher gewährleistet DKIM sowohl die Integrität des Inhaltes als auch die Validität des Absenders. Zudem überlässt DKIM es dem Empfänger, ob er davon Gebrauch machen möchte. Der Inhalt der E-Mail wird durch das Verfahren nicht enkodiert, sondern nur der verschlüsselte Hashwert dem Header hinzugefügt.

Die Erstellung von DKIM-Schlüsseln

Auf Linux-Systemen lassen sich die Schlüssel mit dem meist vorinstallierten Openssl erzeugen.
Den privaten Schlüssel erstellen Sie auf der Kommandozeile durch Eingabe von:

openssl genrsa -out DOMAINNAME.private 1024,

den öffentlichen durch den Befehl:

openssl rsa -in DOMAINNAME.private -out DOMAINNAME.public -pubout -outform PEM.

Die Namen (Wert nach dem Parameter -out) sind frei wählbar. Um Verwechslungen zu vermeiden, bietet es sich aber an, den Namen der eigenen Domain zu nutzen. Die übrigen Parameter betreffen die verwendete Länge und das Format.

Unter Windows muss Openssl üblicherweise zunächst installiert werden.

Tipp

Haben Sie per Konsole Zugriff auf Ihren Mailserver, ist es sinnvoll, die Schlüssel direkt dort zu generieren. Hier sind alternativ die spezielleren Programme Opendkim oder Amavis verwendbar.

Zudem gibt es im Internet verfügbare Generatoren für DKIM-Schlüsselpaare. Dabei ist zu beachten, dass der private Schlüssel dann temporär auf einem fremden Server gespeichert wird. Dies sollten Sie also nur in Erwägung ziehen, wenn der Anbieter vertrauenswürdig ist.

Sehen Sie sich den Inhalt der erzeugten Dateien mit einem Textverarbeitungsprogramm an, so erkennen Sie eine kryptische Zeichenfolge. Dabei handelt es sich um den Schlüssel im Rohformat, den Sie zur weiteren Verarbeitung wie einen Text kopieren können.

Die Einrichtung von DKIM

Die Einrichtung von DKIM hängt im Detail von der vorliegenden Infrastruktur ab. Neben der Software für den E-Mailserver, beispielsweise Postfix, wird eine DKIM-Software benötigt, zum Beispiel Amavis, Dkimproxy oder Opendkim. Für den privaten Schlüssel ist üblicherweise ein Unterordner der Software vorgesehen, in den er kopiert werden muss.

Dies kann sein (Name des Programms in Klammern):

  • (Amavis) /var/spool/amavis/
  • (Dkimproxy) /etc/dkimproxy/
  • (Opendkim) /etc/opendkim/keys/

Der öffentliche Schlüssel wird dem DNS-Server mitgeteilt. In den meisten Fällen dürfte der Anbieter der verwendeten Domain diesen verwalten. In einem solchen Fall sollte es im persönlichen Nutzerbereich des E-Mail-Kundenkontos eine Möglichkeit geben, ihn für seine Domain zu hinterlegen.

Administrieren Sie den DNS-Server ebenfalls selber, wird der Eintrag beispielsweise über das Administratorenprogramm Plesk in der Konfiguration der DNS-Zone als „default_domainkey.DOMAINNAME“ hinterlegt.

Verbreitung von DKIM

Viele bekannte E-Mail-Anbieter von Webmail-Diensten wie GMX, Web.de und Gmail setzen auf ihren Servern DKIM ein. Auch auf Mailservern der meisten Firmen dürfte es inzwischen als Standard zum Schutz vor Spam zum Einsatz kommen. Das Bundesamt für Sicherheit in der Informationssicherheit (BSI) listet DKIM als empfehlenswerte Maßnahme zur Abwehr von Spam und Phishing in seiner Publikation „E-Mail-Sicherheit – Handlungsempfehlung für ISP (Internet Service Provider)“ auf.

Fazit

Zusammengefasst ergibt es ohne Zweifel Sinn, DKIM für die eigene Mail-Domain einzurichten, wenn Sie nicht möchten, dass ein Großteil der versendeten Newsletter und Werbemails ihre Empfänger nicht erreichen.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte