Zu Beginn des 21. Jahrhunderts steht eine Ressource wie IPv4-Adressen kurz vor der Erschöpfung. Bereits 2011 hat die IANA die letzten fünf verbleibenden Blöcke / 8 aus ihrem Adressraum regionalen Internet-Registraren zugewiesen und bereits 2017 ihre Adressen beendet. Die Antwort auf den katastrophalen Mangel an IPv4-Adressen war nicht nur das Aufkommen von IPv6, sondern auch die SNI-Technologie, die es ermöglichte, eine große Anzahl von Websites unter einer IPv4-Adresse zu hosten. Das Wesentliche von SNI ist, dass diese Erweiterung es Clients ermöglicht, dem Server den Namen der Site mitzuteilen, mit der sie während eines Handshakes eine Verbindung herstellen möchten. Auf diese Weise kann der Server mehrere Zertifikate speichern. Dies bedeutet, dass mehrere Domänen mit derselben IP-Adresse arbeiten können. Die SNI-Technologie ist besonders beliebt bei SaaS-Anbietern für Unternehmen, die die Möglichkeit haben, eine nahezu unbegrenzte Anzahl von Domains zu hosten, ohne Rücksicht auf die Anzahl der dafür erforderlichen IPv4-Adressen. Lassen Sie uns herausfinden, wie Sie die SNI-Unterstützung in der Open-Source-Edition der Zimbra Collaboration Suite implementieren können.

SNI funktioniert in allen aktuellen und unterstützten Versionen von Zimbra OSE. Für den Fall, dass Ihr Zimbra Open-Source auf einer Multi-Server-Infrastruktur ausgeführt wird, müssen Sie alle folgenden Aktionen auf dem Knoten ausführen, auf dem der Zimbra Proxy-Server installiert ist. Darüber hinaus benötigen Sie übereinstimmende Zertifikat + Schlüssel-Paare sowie vertrauenswürdige Zertifikatketten Ihrer Zertifizierungsstelle für jede der Domänen, die Sie auf Ihrer IPv4-Adresse platzieren möchten. Bitte beachten Sie, dass der Grund für die überwiegende Mehrheit der Fehler bei der Konfiguration von SNI in Zimbra OSE genau in falschen Zertifikatdateien liegt. Wir empfehlen Ihnen daher, alles sorgfältig zu prüfen, bevor Sie es direkt installieren.
Damit SNI normal funktioniert, müssen Sie zunächst den Befehl
zmprov mcf zimbraReverseProxySNIEnabled TRUE auf dem Knoten mit dem Zimbra-Proxyserver
eingeben und anschließend den Proxy-Dienst mit dem Befehl
zmproxyctl restart neu starten .
Wir beginnen mit der Erstellung eines Domainnamens. Zum Beispiel nehmen wir die Domäne
company.ru und bestimmen, nachdem die Domäne bereits erstellt wurde, den Namen des virtuellen Zimbra-Hosts und die virtuelle IP-Adresse. Bitte beachten Sie, dass der Name des virtuellen Zimbra-Hosts dem Namen entsprechen muss, den der Benutzer in die Browserzeile eingeben muss, um Zugriff auf die Domain zu erhalten, und auch mit dem im Zertifikat angegebenen Namen übereinstimmen muss. Nehmen Sie als Beispiel Zimbra
mail.company.ru als virtuellen Hostnamen und verwenden Sie
1.2.3.4 als virtuelle IPv4-Adresse.
Geben Sie danach einfach den Befehl
zmprov md company.ru zimbraVirtualHostName mail.company.ru zimbraVirtualIPAddress 1.2.3.4 ein , um den virtuellen Zimbra-Host an die virtuelle IP-Adresse zu binden. Wir weisen Sie darauf hin, dass Sie sicherstellen müssen, dass alle Anforderungen an die Domäne an die an sie gebundene externe IP-Adresse und nicht an die Adresse im lokalen Netzwerk gesendet werden, wenn sich der Server hinter einem NAT oder einer Firewall befindet.
Nachdem alles erledigt ist, müssen nur noch die Domänenzertifikate für die Installation überprüft und vorbereitet und anschließend installiert werden.
Wenn das Zertifikat für die Domain korrekt ausgestellt wurde, sollten Sie drei Dateien mit Zertifikaten zur Hand haben: Zwei davon sind Zertifikatsketten Ihrer Zertifizierungsstelle und eines ist ein direktes Zertifikat für die Domain. Außerdem sollten Sie eine Datei mit dem Schlüssel haben, mit dem Sie das Zertifikat erhalten haben. Erstellen Sie einen separaten Ordner
/tmp/company.ru und legen Sie dort alle verfügbaren Dateien mit Schlüsseln und Zertifikaten ab. Das Ergebnis sollte ungefähr so aussehen:
ls /tmp/company.ru company.ru.key company.ru.crt company.ru.root.crt company.ru.intermediate.crt
Kombinieren Sie anschließend die Zertifikatketten mit dem Befehl
cat company.ru.root.crt company.ru.intermediate.crt >> company.ru_ca.crt zu einer Datei und stellen Sie mit dem Befehl
/ opt / sicher, dass mit den Zertifikaten alles in Ordnung ist
zimbra / bin / zmcertmgr verifycrt comm /tmp/company.ru/company.ru.key /tmp/company.ru/company.ru.crt /tmp/company.ru/company.ru_ca.crt . Nachdem die Zertifikate überprüft wurden und der Schlüssel erfolgreich ist, können Sie mit der Installation fortfahren.
Um die Installation zu starten, werden zunächst das Domänenzertifikat und die vertrauenswürdigen Ketten der Zertifizierungsstellen in einer Datei zusammengefasst. Dies erfolgt auch mit einem Befehl der Form
cat company.ru.crt company.ru_ca.crt >> company.ru.bundle . Danach müssen Sie den Befehl ausführen, um alle Zertifikate und den Schlüssel in LDAP zu schreiben:
/ opt / zimbra / libexec / zmdomaincertmgr savecrt company.ru company.ru.bundle company.ru.key , und dann die Zertifikate mit dem Befehl
/ opt / installieren
zimbra / libexec / zmdomaincertmgr deploycrts . Nach der Installation werden die Zertifikate und der Schlüssel für die Domäne
company.ru im Ordner
/opt/zimbra/conf/domaincerts/company.ru gespeichert.
Durch Wiederholen dieser Schritte unter Verwendung verschiedener Domänennamen, jedoch mit derselben IP-Adresse, können Sie den Standort von mehreren hundert Domänen auf derselben IPv4-Adresse ermitteln. Gleichzeitig können Sie problemlos Zertifikate aus verschiedenen Ausstellungszentren verwenden. Sie können die Richtigkeit aller in jedem Browser ausgeführten Aktionen überprüfen, wobei für jeden virtuellen Hostnamen das SSL-Zertifikat angezeigt werden soll.
Bei allen Fragen zur Zextras Suite können Sie sich per E-Mail an katerina@zextras.com an die Vertreterin von Zextras, Ekaterina Triandafilidi, wenden