Verwendung von Lets Encrypt Zertifikaten: Unterschied zwischen den Versionen

[gesichtete Version][gesichtete Version]
Zeile 28: Zeile 28:
 
== Voraussetzungen ==
 
== Voraussetzungen ==
 
* Ein öffentlicher DNS-Eintrag (A oder CNAME) muss für den MailStore Server Computer existieren  und auf die öffentliche IP-Adresse verweisen.  
 
* Ein öffentlicher DNS-Eintrag (A oder CNAME) muss für den MailStore Server Computer existieren  und auf die ö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.
+
* 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.
  
 
== Scenario 1: MailStore Server im lokalen Netzwerk (LAN) ==
 
== Scenario 1: MailStore Server im lokalen Netzwerk (LAN) ==

Version vom 10. April 2019, 13:07 Uhr

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, ist es für den Produktiveinsatz nicht empfohlen, da selbst-signierten Zertifikaten von anderen Client-Computern nicht vertraut wird, aufgrund der fehlenden Beglaubigung durch eine vertrauenswürdigen Zertifizierungsstelle und Benutzer sich darüber hinaus an das Ignorieren von Zertifikatswarnungen gewöhnen könnten, was sie anfälliger für Man-in-the-middle-Angriffe macht.

MScert.png

In Folge dessen kommt es beim Aufruf des MailStore Web Access zu folgender oder ähnlicher Warnmeldung, wenn ein selbst-signiertes Zertifikat verwendet wird:

MSnotrust.png

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 unterschrieben wurde.

Im Folgenden wird beschrieben, wie ein solches Zertifikat von der freien Zertifizierungsstelle Let's Encrypt bezogen werden kann. Sollten Sie bereits im Besitz eines eigenen Zertifikats (z.B. Wildcard-Zertifikats für Ihre Domäne) sein, welches von einer vertrauenswürdigen Zertifizierungsstelle unterschrieben wurde oder wenn 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, welche 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 was 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

  • Ein öffentlicher DNS-Eintrag (A oder CNAME) muss für den MailStore Server Computer existieren und auf die ö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.

Scenario 1: MailStore Server im lokalen Netzwerk (LAN)

Das verbreitetste Scenario 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 Scenario gehe wir davon aus, dass MailStore Server auf einem neuen dedizierten System betrieben wird.

  1. Fragen Sie Ihren Internet Zugangsanbieter nach einer statischen, öffentlichen IP-Adresse für Ihren Router.
  2. Weisen Sie dem MailStore Server Computer eine verfügbare statische IP-Adresse aus dem lokalen Netzwerk zu.
  3. 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.
  4. 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.
  5. 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.

Scenario 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 Scenario gehe wir davon aus, dass MailStore Server auf einem dedizierten System betrieben wird.

  1. Weisen sie eine verfügbare, öffentliche IP-Adresse aus dem öffentlichen Netzwerk dem MailStore Server Computer zu.
  2. 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.
  3. 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.
    Setup003c1.png
  • Klicken Sie auf Weiter.
    LetsEncryptRequest1.png
  • 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 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 aller 60 Tage bleibt solange aktiv, bis manuell ein anderes Zertifikat ausgewählt wird.