Verwendung von Let's Encrypt Zertifikaten
Hintergrund
Zum Sicherstellen von Authentizität und Sicherheit verwendet MailStore Server TLS-Zertifikate für die bereitgestellten Dienste. Während der Installation ermöglicht MailStore Server daher
- das Erstellen eines selbst-signierten Zertifikats,
- die Verwendung eines vorhandenen Zertifikats,
- oder das Beziehen eines Zertifikats von Let's Encrypt.
Die Standardauswahl, das Erstellen eines selbst-signierten Zertifikats, wird oft für die Erstinstallation von MailStore Server verwendet, da es keine externen Abhängigkeiten mit sich bringt. Während dies für eine Testinstallation akzeptabel sein mag, wird es für den Produktiveinsatz nicht empfohlen, da selbst-signierten Zertifikaten von anderen Client-Computern aufgrund der fehlenden Beglaubigung durch eine vertrauenswürdige Zertifizierungsstelle nicht vertraut wird. Darüber hinaus könnten sich Benutzer an das Ignorieren von Zertifikatswarnungen gewöhnen, was sie anfälliger für Man-in-the-Middle-Angriffe macht.
Infolgedessen kommt es beim Aufruf des MailStore Web Access zu folgender oder ähnlicher Warnmeldung, wenn ein selbst-signiertes Zertifikat verwendet wird:
Um diese Fehlermeldung zu eliminieren und damit die Sicherheit und den Benutzerkomfort zu erhöhen, muss MailStore für die Verwendung eines Zertifikats konfiguriert werden, welches von einer vertrauenswürdigen Zertifizierungsstelle signiert wurde.
Im Folgenden wird beschrieben, wie ein solches Zertifikat von der freien Zertifizierungsstelle Let's Encrypt bezogen werden kann. Wenn Sie bereits im Besitz eines eigenen, vertrauenswürdigen Zertifikats (z.B. eines Wildcard-Zertifikats für Ihre Domäne) sind oder sie manuell ein Zertifikat von einer eigenen, bevorzugten Zertifizierungsstelle beziehen möchten, folgen Sie den Anweisungen in Verwendung eigener SSL Zertifikate.
Über Let's Encrypt
Let's Encrypt ist eine kostenfreie, automatisierte und offene Zertifizierungsstelle, welcher von allen namhaften Web Browsern und Betriebssystemen vertraut wird. Viele große, bekannte Sponsoren aus dem IT-Sektor unterstützen die Anstrengung von Let's Encrypt, das Internet zu einem sichereren Ort zu machen.
Ein vollständig automatisierter Genehmigungsprozess eliminiert die Notwendigkeit für die Validierung per Email oder Telefon, wie sie von traditionellen Zertifizierungsstellen durchgeführt wird und mitunter mehrere Tage in Anspruch nehmen kann.
Let's Encrypt Zertifikate sind lediglich 90 Tage gültig und müssen daher regelmäßig erneuert werden. Der MailStore Server-Dienst kümmert sich um das automatische Erneuern, nachdem die initiale Konfiguration erfolgt ist.
Voraussetzungen
- Für den MailStore Server Computer muss ein öffentlicher DNS-Eintrag (A oder CNAME) existieren und auf eine öffentliche IP-Adresse verweisen.
- Der MailStore Server Computer muss für den automatischen Domain-Validierungsprozess von Let's Encrypt über das Internet auf TCP-Port 80 (HTTP) erreichbar sein. Da Let's Encrypt von verschiedenen IP-Adressen aus die Validierung durchführt, kann eine eventuell benötigte Firewall-Regel nicht auf bestimmte Quell-IP-Adressen eingeschränkt sein.
Szenario 1: MailStore Server im lokalen Netzwerk (LAN)
Das verbreitetste Szenario für eine MailStore Server Installation ist die in einem lokalen Netzwerk innerhalb der eigenen Organisation. Typischerweise besitzt der MailStore Server Computer eine private IP-Adresse (z.B. 192.168.0.10) und die Internetverbindung wird über einen Router hergestellt, der alle internen IP-Adressen mit seiner externen IP-Adresse maskiert. Diese Methode ist unter dem Namen Network Address Translation (NAT) bekannt.
Für diese Szenario gehen wir davon aus, dass MailStore Server auf einem neuen dedizierten System betrieben wird.
- Fragen Sie Ihren Internet Zugangsanbieter nach einer statischen, öffentlichen IP-Adresse für Ihren Router.
- Weisen Sie dem MailStore Server Computer eine verfügbare statische IP-Adresse aus dem lokalen Netzwerk zu.
- Erstellen Sie auf dem Router eine Port-Weiterleitung, welche alle Anfragen an TCP-Port 80 auf der öffentlichen IP-Adresse, welche in Schritt 1 zugewiesen wurden, an die interne IP-Adresse des MailStore Server Computers weiterleitet, welche in Schritt 2 zugewiesen wurde.
- Hinweis: In der MailStore Server Dienst-Konfiguration können Sie den Let's Encrypt HTTP-01 Challenge Port ändern, auf dem der MailStore Server-Dienst an der in Schritt 2 zugewiesenen, internen IP-Adresse lauscht. Auf der in Schritt 1 zugewiesenen, öffentlichen IP-Adresse des Routers muss jedoch in jedem Fall TCP-Port 80 verwendet werden, da der Genehmigungsprozess von Let's Encrypt nur diesen HTTP-Standard-TCP-Port unterstützt. Wenn Sie den lokalen Let's Encrypt HTTP-01 Challenge Port ändern, müssen Sie diese Änderung auch in der in Schritt 3 erstellten Port-Weiterleitung berücksichtigen.
- Fügen Sie einen A- oder CNAME-Eintrag der DNS-Zone Ihrer öffentlichen Domäne hinzu, z.B. mailstore.example.com welcher auf die öffentlichen IP-Adresse aus Schritt 1 verweist.
- Abhängig davon, wie Namensauflösung innerhalb des lokalen Netzwerks stattfindet, muss ein entsprechender DNS-Eintrag auf den internen DNS-Server oder dem Router vorgenommen werden. Dieser Eintrag sollte jedoch auf die interne IP-Adresse des MailStore Server Computers verweisen.
Szenario 2: MailStore Server in einem externen Netzwerk
Wenn der MailStore Server Computer sich bereits in einem Netzwerk befindet, in welchem öffentliche IP-Adressen verwendet werden, z.B. in einem Rechenzentrum oder in einer DMZ, ist es in der Regel einfacher, die Voraussetzungen zu erfüllen.
Für diese Szenario gehen wir davon aus, dass MailStore Server auf einem dedizierten System betrieben wird.
- Weisen Sie dem MailStore Server Computer eine verfügbare, öffentliche IP-Adresse aus dem öffentlichen Netzwerk zu.
- Sollte eine Firewall im Einsatz sein, erstellen Sie eine Firewall-Regel, welche alle Verbindungen auf TCP-Port 80 an die in Schritt 1 zugewiesene IP-Adresse erlaubt.
- Hinweis: In der MailStore Server Dienst-Konfiguration können Sie den Let's Encrypt HTTP-01 Challenge Port ändern, auf dem der MailStore Server-Dienst an der in Schritt 1 zugewiesenen, öffentlichen IP-Adresse lauscht. Im hier beschriebenen Szenario muss jedoch in jedem Fall TCP-Port 80 verwendet werden, da der Genehmigungsprozess von Let's Encrypt nur diesen HTTP-Standard-TCP-Port unterstützt.
- Fügen Sie einen A- oder CNAME-Eintrag der DNS-Zone Ihrer öffentlichen Domäne hinzu, z.B. mailstore.example.com, welcher auf die öffentlichen IP-Adresse aus Schritt 1 verweist.
Beziehen des Zertifikats
- Öffnen Sie die MailStore Server Dienst-Konfiguration.
- Wählen Sie Netzwerkeinstellungen aus.
- Klicken Sie im Abschnitt Zertifikat neben dem Zertifikat auf die Schaltfläche mit den drei Punkten.
- Wählen Sie Von Let's Encrypt anfordern... aus.
- Die Voraussetzungen werden angezeigt.
- Klicken Sie auf Weiter.
- Geben Sie Ihre Email-Adresse und den Servernamen in die entsprechenden Feldern ein.
- Öffnen Sie das Let's Encrypt Subscribers Agreement über den Link.
- Nachdem Sie das Let's Encrypt Subscribers Agreement gelesen und verstanden haben, setzen Sie den Haken bei Ich akzeptiere Let's Encrypt Subscribers Agreement.
- Klicken Sie auf Fertigstellen.
- MailStore testet die Einstellungen nun gegen die Let's Encrypt Staging-Umgebung. Sollte ein Fehler auftreten, wird MailStore eine Warnung anzeigen. Bitte überprüfen Sie in dem Fall die Ausgaben des Protokolls, beheben Sie das Problem und versuchen es erneut.
- Wenn der Test erfolgreich verlaufen ist, wird MailStore Server automatisch ein Zertifikat vom der Let's Encrypt Produktionsumgebung abrufen und bestätigen, dass die Einrichtung erfolgreich war.
- Klicken Sie auf Fertigstellen.
- Das automatische Erneuern der Let's Encrypt Zertifikate alle 60 Tage bleibt solange aktiv, bis manuell ein anderes Zertifikat ausgewählt wird.