Kostenloses Let's Encrypt SSL-Zertifikat in MDaemon einbinden

Im folgenden Artikel erfahren Sie, was Let’s Encrypt ist, wie Sie diese Funktion unter MDaemon nutzen können und welche Voraussetzungen Ihr Server dafür erfüllen muss.
 
Was ist Let’s Encrypt?
Let's Encrypt ist ein Projekt der Non-Profit-Organisation Internet Security Research Group (ISRG). Zweck dieses Projekts ist es, verschlüsselte Verbindungen im Internet als Normalfall zu etablieren. Zudem sollen der Aufwand und die Kosten für die Einrichtung und Pflege von Zertifikaten des Verschlüsselungsprotokolls Transport Layer Security (TLS) auf ein Minimum gesenkt werden. Vor allem Vorgänge des Zertifizierens und Rezertifizierens werden vollständig durch automatische Prozesse ersetzt. Dabei setzt Let's Encrypt auf kostenlose "X.509"-Zertifikate.
 
Welche Voraussetzung muss Ihr Server erfüllen?
Um die Let’s Encrypt-Funktion nutzen zu können, muss Version 19.5 oder höher des MDaemon Email Servers installiert sein. 
Ebenfalls müssen in der Firewall (Windows Firewall / Router) folgende Eingangs-Ports dauerhaft zugänglich sein: HTTP-Port 80/TCP und der HTTPS-Port 443/TCP. Achten Sie darauf, dass kein anderer Dienst auf dem Server den Port 80 verwendet (Beispiel der Dienst "WWW-Publishingdienst"). Des Weiteren muss Ihr Server eine bestehende Internetverbindung vorweisen. Zudem sind PowerShell 5.1 und das .Net Framework 4.7.2 (oder höher) erforderlich. Die verwendete PowerShell Version können Sie über diesen PowerShell-Befehl einsehen:
$PSVersionTable.PSVersion 

 
Ihre Domäne (FQDN) muss zudem im öffentlichen DNS registriert sein, der auf die IP-Adresse Ihres MDaemon Email Servers verweist. Auf diesen Namen wird auch das SSL-Zertifikat ausgestellt.
Überprüfen können Sie dies in MDaemon unter Einstellungen → Domänen-Manager →  <Domäne> → Hostname & IP→ SMTP-Hostname.

Falls Sie im Domänen-Manager nur mit lokalen Domänen arbeiten (beispielsweise: example.local), welche also nicht aus dem Internet erreichbar sind, muss in dem Feld "SMTP-Hostname" der ersten Domäne trotzdem eine öffentliche Domäne eingetragen werden (also eine öffentliche Domäne wie mail.example.com), welche über einen A-Record verfügt, der auf die öffentliche IP-Adresse des MDaemon Hostservers verweist. Über diese Domäne sollte wie oben erwähnt der Webserver (Port 80 und 443) des MDaemon E-Mail Servers erreichbar sein.
 
Wie richte ich Let’s Encrypt ein?
  1. Öffnen Sie Ihren MDaemon Email Server und klicken Sie in die folgende Einstellung: Einstellungen → Web&IM-Dienste → Webmail → Web-Server. Hier stellen Sie ein, dass sich alle IP-Adressen, die sich mit dem Webmailer verbinden, an den Port 80 binden. Diese Funktion finden Sie unter „Web-Server von Webmail nur an folgende IPs/Ports binden“. Hier tragen Sie bitte die folgende Zeichenkette ein: 
    *,*:80
    Klicken Sie anschließend zunächst auf "Übernehmen", danach auf den Button "Webmail neu starten".

  2. Gehen Sie nun zu Sicherheit → Sicherheits-Manager → SSL&TLS → Let’s Encrypt und wählen Sie die Option "Aktualisierung aktivieren".
    Im nächsten Schritt können Sie in dem Bereich „Weitere Hostnamen (mehrere Einträge durch Kommata trennen)“ weitere Hostnamen bzw. Domänen hinzufügen. Wenn Sie nur die Hauptdomäne mit einem Zertifikat ausstatten möchten, lassen Sie dieses Feld leer. 
    Hinweis: Wenn Sie weitere Hostnamen hinzufügen möchten, müssen diese per HTTP-Challenge erreichbar sein.Im Abschnitt „E-Mail-Adresse des Administrators für Benachrichtigungen“ können Sie beispielsweise die E-Mail-Adresse des Postmasters (empfohlen) oder eines anderen Administrators eintragen. Dieser erhält dann alle Informationen zusätzlich per E-Mail.
    Unter „Aktualisierungsintervall in Tagen“ können Sie einen Wert zwischen 10 und 60 eintragen und so angeben, nach wie vielen Tagen das Zertifikat abläuft und automatisch erneuert wird.
  3. Starten Sie nun die Zertifikatserstellung mit Klick auf "Jetzt aktualisieren" und "Übernehmen". MDaemon führt jetzt ein auf Dateiebene hinterlegtes Powershell-Skript aus. Da das System selbst leider keine Rückmeldung gibt, müssen Sie im Verzeichnis "...\MDaemon\Logs" die Datei „LetsEncrypt.log“ öffnen. Dort finden Sie alle Ereignisse detailliert protokolliert.
    Hinweis: Der MDaemon Email Server wird nach dem Ausführen des Skripts neu gestartet.
 
  1. Nach Neustart des Dienstes können Sie unter Sicherheit → Sicherheits-Manager → SSL &TLS → MDaemon und → Webmail überprüfen, ob das Skript die neu erstellten Zertifikate bereits ausgewählt hat.
    Aktivieren Sie die Option "HTTP mit Umleitung nach HTTPS".

  2. Testen Sie nun mit einer Verbindung zu MDaemon Webmail, ob das neu erstellte Zertifikat seinen Zweck erfüllt.

  3. In den Kontoeinstellungen (Posteingang und Postausgang) der E-Mail-Clients kann nun auf TLS oder SSL umgestellt werden. Beispiel: MDaemon Connector for Outlook: