Hier hatte ich schon über DKIM in Verbindung mit der Sophos UTM geschrieben. Hier folgt nun ein Artikel in dem es um Exchange und DKIM geht. Mails können direkt am Exchange Server eine DKIM Signatur erhalten, eine zusätzliche AntiSPAM Lösung, welche die DKIM Signatur anfügt, ist damit nicht erforderlich. Um DKIM Signaturen direkt am Exchange Server anzuhängen kann das kostenlose Tool “Exchange DKIM Signer” verwendet werden.
Um Exchange DKIM Signer zu verwenden, muss das oben verlinkte Paket auf den Exchange Server übertragen werden, nachdem es entpackt wurde, kann die Anwendung „Configuration.DkimSigner.exe“ gestartet werden:
Nach dem Start zeigt sich eine GUI für die Konfiguration, die GUI erstellt eine XML-Datei für die Konfiguration und installiert den Exchange Transport Agent, alternativ lässt sich dies auch manuell durchführen. Die manuelle Konfiguration ist hier beschrieben. In diesem Artikel wird aber die GUI verwendet:
Für die Konfiguration muss zunächst auf dem Reiter „Domain Settings“ die Domain hinzugefügt werden, welche mit DKIM Signaturen versehen werden soll:
In den Feldern von „Domain details“ muss nun die Domain eingetragen werden, mit der Mails versendet werden, der Selector ist ein wählbarer String zu Identifikation des DNS Records. Hier kann beispielsweise „dkim1“, „dkim2020“ oder irgendwas anderes verwendet werden. Gängig ist hier „p+JahrInDemDerKeyErstelltWurde“, also beispielsweise „p2020“. Als „Key length for generation“ sollte aus Kompatibilitätsgründen „1024“ ausgewählt werden. Der Hintergrund ist, dass bei 2048Bit Schlüssellänge, der erforderliche DNS Eintrag länger als 255 Zeichen wird. Viele Provider lassen es nicht zu, dass solch lange Strings im DNS eingetragen werden (obwohl technisch möglich). Wenn der Provider lange DNS Records zulässt, kann hier auch „2048“ ausgewählt werden:
Nachdem der Key erstellt und gespeichert wurde, wird der erforderliche DNS Eintrag angezeigt:
Der von Exchange DKIM Signer angezeigte DNS Record muss nun als TXT Record im öffentlichen DNS des Domain Hosters angelegt werden:
Mittels der Funktion „Check“ lässt sich in Exchange DKIM Signer prüfen ob der DNS Eintrag korrekt angelegt wurde. Falls DNS Split Brain genutzt wird, sollte der TXT Record auch auf den internen DNS Servern angelegt werden:
Wenn der Test erfolgreich war, kann der Eintrag für die Domain gespeichert werden. Wenn weitere Domains zum Versenden von Mails genutzt werden, müssen diese Domains ebenfalls wie oben geschrieben angelegt werden. In diesem Fall sollte man entsprechend weitere RSA Keys erstellen und nicht den bereits vorhandenen verwenden.
Die Konfiguration von Exchange DKIM Signer ist nun abgeschlossen, daher kann nun der erforderliche Transport Agent installiert werden. Die Installation des Exchange Transport Agents kann auf dem Reiter „Information“ mit der Schaltfläche „Install“ erfolgen:
DKIM Signer lädt nun noch erforderlche Pakete nach:
Die Installation des Transport Agents mit der erforderlichen Konfiguration erfolgt dann automatisch:
Die Installation des Transport Agents lässt sich mit einem Klick auf „Configure“ einsehen. Hier lässt sich bei Bedarf auch der Agent wieder deaktivieren oder deinstallieren:
Ob DKIM wie erwartet funktioniert, kann sehr einfach getestet werden. Es kann einfach eine Mail an die folgende Adresse geschickt werden:
Die Mail wird dann automatisch beantwortet und enthält die Testergebnisse:
Damit DKIM korrekt funktioniert, darf die Mail nachdem die DKIM Signatur angewendet wurde, nicht mehr verändert werden. Wenn die Mail also vom Exchange Server zu einem AntiSpam Gateway geleitet wird und erst dann zum Empfänger geschickt wird, könnte es hier je nach Konfiguration zu Problemen kommen. Bei Smarthosts oder Relays welche die Mails einfach nur durchleiten ist dies aber in der Regel nicht der Fall.