Sebastian Brosch
Code, Tools und Softwareentwicklung

Host Europe – Kostenlose SSL-Zertifikate

In der heutigen Zeit sind verschlüsselte Verbindungen über HTTPS gewissermaßen Standard. Gerade in Deutschland ist eine verschlüsselte Verbindung auf Seiten zur Erfassung oder Darstellung personenbezogener Daten verpflichtend. In vielen modernen Browsern wird der Anwender vor unverschlüsselten Verbindungen gewarnt. Suchmaschinen wie Google können Seiten mit verschlüsselter Verbindung mit besseren Rankings belohnen. Durch Let’s Encrypt ist die Erstellung und Verlängerung der benötigten SSL-Zertifikate sehr einfach und vor allem kostenlos. Somit muss kein teures SSL-Zertifikat gekauft werden, wenn der Hoster Let’s Encrypt in seine Infrastruktur integriert hat.

Host Europe ist jedoch einer der Hoster welcher auch im Jahr 2020 noch keine direkte Unterstützung für Let’s Encrypt Zertifikate mit automatischer Verlängerung in seinen Webhosting-Tarifen anbietet. Diese Funktion ist auf Nachfrage auch weiterhin nicht geplant (Stand: Mai 2020). In jedem Webhosting-Tarif ist nur ein kostenloses Domain-Zertifikat verfügbar. Wenn man also mehrere Domains in seinem Paket mit verschlüsselter Verbindung nutzen möchte, wird ein SSL-Zertifikat eines externen Anbieters (wie Let’s Encrypt oder ZeroSSL) benötigt. Host Europe bietet dazu immerhin die Möglichkeit im Kunden-Informations-System (KIS) eigene SSL-Zertifikate einzubinden. In den teureren Server-Tarifen wird der Server selbst verwaltet, sodass dort die Möglichkeit zur Installation des Certbots von Let’s Encrypt besteht. In diesem Artikel wird die Erstellung und Verlängerung von kostenlosen SSL-Zertifikaten über ZeroSSL sowie die Einbindung dieser Zertifikate bei Host Europe beschrieben.

Hinweis: Diese Anleitung wurde ursprünglich mit dem kostenfreien Online-Service von ZeroSSL zur Erstellung von Let’s Encrypt Zertifikaten beschrieben. Seit Mai 2020 hat ZeroSSL jedoch sein Geschäftsmodell geändert und bietet jetzt ausschließlich eigene SSL-Zertifikate an. Aktuell sind dort nur drei SSL-Zertifikate (keine Wildcard- oder Multi-Domain-Zertifikate) kostenlos. Für Wildcard- oder Multi-Domain-Zertifikate wird in jedem Fall ein kostenpflichtiger Account benötigt. Der Dienst von SSL for Free wurde bisher als Alternative zu ZeroSSL verwendet, ist jedoch seit Ende Mai Trusted Partner von ZeroSSL und bietet daher die gleichen SSL-Zertifikate zu den gleichen Konditionen an. Über ZeroSSL und SSL for Free können keine Let’s Encrypt Zertifikate mehr erstellt werden!

Was ist ein SSL-Zertifikat?

SSL-Zertifikate werden benötigt, um eine sichere Verbindung zu einer Website bzw. eines Webservers aufbauen zu können. Es werden dabei die Daten zwischen dem Webserver und Besucher mit dem SSL-Zertifikat verschlüsselt. Dadurch kann der Datenverkehr zwischen dem Besucher und dem Webserver nicht mitgelesen oder verändert werden. Dies ist vor allem bei der Übertragung von persönlichen und sensiblen Daten wichtig. Wichtig bei einem SSL-Zertifikat ist das Zertifikat des Ausstellers, welches von einer vertrauenswürdigen und bekannten Zertifizierungsstelle ausgestellt sein muss. Damit weiß dann auch der Browser, welches SSL-Zertifikat vertrauenswürdig ist. Ein selbst signiertes Zertifikat könnte auch als ein SSL-Zertifikat eingesetzt werden, ist allerdings kein vertrauenswürdiges Zertifikat und dadurch ungeeignet. ZeroSSL erstellt Zertifikate von der Certificate Authority Sectigo (ehemals Comodo CA) aus. Let’s Encrypt ist ein weiterer Anbieter kostenloser und vertrauenswürdiger SSL-Zertifikate.

Warum kein Let’s Encrypt (mehr) bei Host Europe?

ZeroSSL und SSL for Free haben bisher jeweils eigene Online-Services zur Verfügung gestellt, um kostenlos Let’s Encrypt Zertifikate zu erstellen oder zu verlängern. Durch die Änderung des Geschäftsmodells ist dies nun nicht mehr möglich. Es gibt allerdings auch keine vergleichbaren Online-Services welche eine einfache Erstellung und Verlängerung ermöglichen. Die folgenden Lösungen sehen aber als Alternativen sehr vielversprechend aus:

Eine weitere Möglichkeit ist die Erstellung der Let’s Encrypt Zertifikate auf dem eigenen Computer mit Crypt-LE. Ich habe dazu einen eigenen Artikel zur Erstellung und Verlängerung von SSL-Zertifikaten mit Crypt-LE geschrieben. In diesem Artikel wird auch beschrieben wie man sowohl ein Let’s Encrypt als auch ein Buypass Go SSL Zertifikat erstellen kann.

Erstellung eines SSL-Zertifikats bei ZeroSSL

Hinweis: Über ZeroSSL lassen sich nur drei SSL-Zertifikate mit einer Gültigkeit von 90-Tagen erstellen oder ein SSL-Zertifikat erstellen und zwei Mal verlängern. Es kann also kostenfrei nur drei Mal der nachfolgend beschriebene Prozess durchlaufen werden. Weitere Zertifikate oder Verlängerungen sind kostenpflichtig. Dies ist leider auf der Website nicht direkt erkennbar bzw. etwas missverständlich. Das aktuelle Kontingent des kostenlosen Accounts wurde mir vom Support wie folgt beschrieben: " It looks like this was a misunderstanding, on the Free Plan you usually can create 3x independent 90-day certificates for different domains or create one 90-day certificate for one domain and renew it two times.". Also auch bei ZeroSSL entstehen früher oder später Kosten.

Für die Erstellung eines kostenlosen SSL-Zertifikats bei ZeroSSL wird ein Benutzerkonto benötigt. Die Registrierung selbst ist kostenlos. Es fallen erst dann Kosten an, wenn auch kostenpflichtige Funktionen wie Wildcard- oder Multi-Domain-Zertifikate benötigt werden. Während der Erstellung eines SSL-Zertifikats sind die kostenpflichtigen Funktionen mit “Pro” gekennzeichnet.

Die Erstellung eines SSL-Zertifikats bei ZeroSSL lässt sich in drei Phasen unterteilen: Vorbereitung, Verifizierung und Installation.

Vorbereitung

Nach der Registrierung und Anmeldung bei ZeroSSL wird das Dashboard angezeigt, welches den Zugriff auf die wichtigsten Seiten und Funktionen ermöglicht. Dort findet man auch die Schaltfläche “New Certificate” um ein neues SSL-Zertifikat zu erstellen.

Das Dashboard von ZeroSSL mit einer Übersicht der wichtigsten Funktionen.

Nach einem Klick auf die Schaltfläche “New Certificate” wird die Erstellung eines neuen SSL-Zertifikats gestartet. Im ersten Schritt muss die Domain angegeben werden, für welche das SSL-Zertifikat erstellt werden soll. Die Domain kann dabei ohne die “www”-Sub-Domain angegeben werden. Das kostenfreie SSL-Zertifikat wird immer für die Domain selbst sowie die “www”-Sub-Domain erstellt. Dies ist auch nach Eingabe der Domain direkt hinter der Eingabe sichtbar.

Angabe der Domain für welche das SSL-Zertifikat erstellt werden soll.

Im nächsten Schritt kann zwischen einem 90-Tage und einem Jahreszertifikat gewählt werden. Das 90-Tage-Zertifikat kann kostenlos erstellt werden, während das Jahreszertifikat kostenpflichtig ist. Das 90-Tage-Zertifikat sollte aber wegen seiner Gültigkeit nicht mit einem Let’s Encrypt Zertifikat verwechselt werden. ZeroSSL erstellt keine SSL-Zertifikate von Let’s Encrypt! Das Zertifikat funktioniert aber ähnlich nur dass die Certificate Authority nicht Let’s Encrypt ist. ZeroSSL stellt SSL-Zertifikate von Sectigo aus.

Auswahl der Gültigkeit des SSL-Zertifikats.

Es folgt nun die Erstellung der Zertifikatsanforderung (CSR – Certificate Signing Request). Diese dient als Vorlage zur Erstellung des SSL-Zertifikats. Für ein einfaches SSL-Zertifikat kann hier die Option “Auto-Generate CSR” verwendet werden.

Erstellung der Zertifikatsanforderung (Certificate Signing Request).

Nun sind die Vorbereitungen für die Erstellung des SSL-Zertifikats abgeschlossen. Im nächsten Schritt muss die Buchung des SSL-Zertifikats durchgeführt werden. Wenn während der Vorbereitung nur kostenlose Funktionen verwendet wurden, kann der Gratis-Plan ausgewählt werden.

Auswahl des Pakets welches gebucht werden soll.

Verifizierung

Nun kann die für das SSL-Zertifikat angegebene Domain verifiziert werden. ZeroSSL bietet hier drei Verfahren an: Verifizierung per E-Mail, DNS oder HTTP. Da der Weg über den Webserver der Bekannteste sein dürfte, beschreibe ich die Verifizierung über HTTP. Die Schritte werden dabei ausreichend von ZeroSSL beschrieben. Zuerst wird die Datei mit den Informationen zur Bestätigung benötigt. Diese muss heruntergeladen und anschließend im Verzeichnis /.well-known/pki-validation/ der Domain hochgeladen werden. Das Verzeichnis muss zuvor auf dem Server der Domain über FTP erstellt und die Datei darin zur Verfügung gestellt werden. Um zu überprüfen, ob die Datei richtig zur Verfügung gestellt wurde, kann dann der im Dialog angezeigte Link unter Punkt 3 geöffnet werden. Wenn die Informationen zur Verifizierung angezeigt werden wurde die Datei richtig zur Verfügung gestellt.

Verifizierung der Domain über HTTP.

Im nächsten Schritt wird eine Zusammenfassung der Verifizierung angezeigt. Mit einem Klick auf die Schaltfläche “Verify Domain” kann die Verifizierung gestartet werden. Das Ergebnis der Verifizierung wird direkt im Anschluss angezeigt.

Abschluss der Verifizierung.

Installation

Nach der erfolgreichen Verifizierung kann das SSL-Zertifikat heruntergeladen werden. Hier stehen verschiedene Möglichkeiten für verschiedene Server und Plattformen zur Verfügung. Für die Einrichtung bei Host Europe kann das SSL-Zertifikat im “Default Format” heruntergeladen werden.

Download des SSL-Zertifikats im “Default Format”.

Das heruntergeladene SSL-Zertifikat kann nun bei Host Europe für die entsprechende Domain eingebunden werden. Die Schritte werden im Kapitel “SSL-Zertifikat bei Host Europe einbinden” beschrieben.

Nachdem das SSL-Zertifikat eingebunden wurde, kann die Installation des SSL-Zertifikats mit einem Klick auf die Schaltfläche “Check Installation” überprüft werden.

Installation des SSL-Zertifikats.

Wenn das SSL-Zertifikat bei Host Europe eingebunden wurde und die Überprüfung durch ZeroSSL erfolgreich war, wird dies im abschließenden Schritt bestätigt.

Abschluss der Installation des SSL-Zertifikats.

SSL-Zertifikate von SSL for Free

SSL for Free konnte bisher als Alternative zu ZeroSSL verwendet werden. Auch dort konnten kostenlose Let’s Encrypt Zertifikate (auch Wildcard- und Multi-Domain-Zertifikate) erstellt werden. Seit Ende Mai 2020 ist SSL for Free jedoch Trusted Partner von ZeroSSL und bietet daher nun keine eigene Leistung mehr an. Eine Registrierung bei SSL for Free ist nun eine Registrierung bei ZeroSSL (auch wenn dies nicht direkt bei der Registrierung erkennbar ist). Somit besteht auch keine Notwendigkeit, die Dienste von SSL for Free zu nutzen. Es kann auch direkt ZeroSSL verwendet werden.

SSL-Zertifikat bei Host Europe einbinden

Im Kunden-Informations-System (KIS) von Host Europe lässt sich das extern erstellte SSL-Zertifikat für die entsprechende Domain einbinden. Im Menü findet man unter der Kategorie “Sicherheit & SSL” den Menüpunkt “SSL administrieren” um die Verwaltung zu öffnen. Es wird eine Liste mit allen Domains geöffnet, für welche ein SSL-Zertifikat eingebunden werden kann.

Für die Übertragung der Zertifikatsdatei steht ein Formular zur Verfügung in welchem die verschiedenen Dateien aus dem Archiv ausgewählt werden müssen. In dem folgenden Screenshot kann die Zuordnung der Dateien entnommen werden.

Übertragung der Zertifikatsdateien im Kunden-Informations-System.

Das SSL-Zertifikat ist nun für die Domain eingerichtet. Eine unsichere Verbindung über HTTP ist jedoch weiterhin möglich. Durch das SSL-Zertifikat steht nun aber auch eine sichere Verbindung über HTTPS zur Verfügung.

Um die bisherigen URLs (ohne HTTPS) automatisch weiterzuleiten, kann der folgende Code in die Konfigurationsdatei des Webservers (.htaccess-Datei) eingefügt werden:

RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Damit werden alle Anfragen mit http:// nach https:// weitergeleitet ohne dass der Besucher explizit das Protokoll angeben oder eine Browser-Erweiterung wie HTTPS Everywhere installieren muss.