Inhaltsverzeichnis

SSL-Verschlüsselung einer Website

Insofern eine Website per SSL verschlüsselt werden soll, bieten wir zwei Möglichkeiten an: Entweder der Import eines bereits bestehenden Zertifikates oder die automatische Erstellung eines Let's Encrypt-Zertifikates.

Eigenes, bestehendes SSL-Zertifikat importieren

Insofern bereits ein SSL-Zertifikat besteht, kann es in der Webspace-Verwaltung ganz einfach importiert werden.

Zuerst navigiert man zu HostingSSL-Zertifikate.

Im Reiter SSL-Zertifikate wird neues Zertifikat ausgewählt. Es erscheint das folgende Fenster:

Zum Importieren der einzelnen Dateien, müssen diese mit einem Text-Editor lokal geöffnet werden und der Inhalt per Copy & Paste in das jeweilige Textfeld eingefügt werden.

Als erstes klickt man bei Privater Schlüssel auf importieren. Hier kopiert man nun den Inhalt der Datei des privaten Keys hinein (meist *.key). Im nächsten Schritt wird das Zertifikat an sich importiert (meist *.crt). Sollten noch CA-Zwischenzertifikate (bspw. ca.crt) bestehen, so sind diese auch zu importieren. Im vorletzten Schritt ist es ganz sinnvoll eine kurze, eindeutige Bemerkung für das Zertifikat zu vergeben. Bestätigt wird es durch einen Klick auf speichern.

Insofern kein Fehler ausgegeben wird, wurde das Zertifikat erfolgreich importiert.

Let's Encrypt

Im Rahmen unserer SSD-Webhosting Produktsparte unterstützen wir die Benutzung von Let's Encrypt SSL-Zertifikaten.

Diese Zertifikate können ganz einfach über die Webspace-Verwaltung hinzugefügt werden.

Einrichtung

Im Menü auf HostingSSL-Zertifikate klicken.

Anschließend zuerst auf Zertifikatsverwaltung und dann auf Zugang hinzufügen klicken.

Jetzt sollte folgendes Formular sichtbar sein:

Hier kann entweder ein neuer Zugang erstellt werden oder ein bestehender Schlüssel importiert werden. Insofern noch kein Zugang besteht, kann ein neuer durch Eingabe der E-Mail-Adresse erstellt werden - eine Telefonnummer ist hier nicht verpflichtend.

Nachdem das Formular ausgefüllt wurde, bestätigt man mit einem Klick auf weiter. Der Schlüssel wird kurzerhand erzeugt:

Danach erscheint folgendes Formular:

Hier müssen die Geschäftsbedingungen akzeptiert werden und anschließend kann es per Klick auf speichern weiter gehen.

Let's Encrypt wurde erfolgreich eingerichtet! Jetzt können Zertifikate erstellt werden!

Zertifikat erstellen

Sobald Let's Encrypt eingerichtet wurde, können beliebig viele SSL-Zertifikate erstellt werden. Wie das funktioniert, zeigt die folgende Dokumentation.

Im Menü auf HostingSSL-Zertifikate klicken.

Im nächsten Schritt einmal auf SSL-Zertifikate und anschließend auf neues Zertifikat klicken.

Es erscheint folgendes Fenster:

Hier zuerst auf ACME klicken, anschließend den Haken bei Zertifikat automatisch verwalten (mit ACME) setzen und danach die gewünschte Domain bei Domainname eintragen. Wir empfehlen außerdem den Haken bei HTTPS mit dem neuen SSL-Zertifikat konfigurieren zu setzen und bei Bedarf auch den Haken bei Weiterleitung von HTTP auf HTTPS konfigurieren. Anschließend die Erstellung mit einem Klick auf speichern abschließen.

Der Erstellungsprozess des Zertifikates kann ein paar Minuten dauern. Sobald das Zertifikat fertig ist, wird - insofern der Haken gesetzt wurde - SSL automatisch bei der angegebenen Domain aktiviert und die Zertifikatsübersicht sollte so ähnlich aussehen:

Limits

Die Zertifizierungsstelle von Let's Encrypt hat zwecks Missbrauchsvorbeugung ein paar Limits festgelegt:

Weiteres bitte der Quelle entnehmen.

Quelle: https://letsencrypt.org/docs/rate-limits/

SSL bei einer (Sub-)Domain aktivieren

Die Aktivierung von SSL für eine Domain ist recht simpel. Sobald ein Zertifikat dafür vorhanden ist, kann dies vollzogen werden. Dabei ist es egal, ob es sich um ein reguläres SSL-Zertifikat oder eines von Let's Encrypt handelt.

Im Menü klickt man auf HostingDomains.

Die passende Domain aus der Liste auswählen und anklicken. Es erscheint das folgende Fenster:

Jetzt den Haken bei HTTPS-Zugriff setzen und das passende SSL-Zertifikat aus dem Menü direkt darunter auswählen. Bei Bedarf eine Weiterleitung von HTTP zu HTTPS setzen, indem bei HTTP-Zugriff Weiterleitung ausgewählt wird und unter Ziel zu https://<domain> weitergeleitet wird. Soll der Pfad mit übernommen werden, so fügt man noch /* hinzu, also in dem Sinne: https://<domain>/*. Anschließend mit einem Klick auf speichern bestätigen und über die soeben eingerichtete SSL-Unterstützung

HSTS aktivieren

Was HSTS ist, das erklärt Wikipedia eigentlich ganz gut:

HTTP Strict Transport Security (HSTS) ist ein Sicherheitsmechanismus für HTTPS-Verbindungen, der sowohl vor Aushebelung der Verbindungsverschlüsselung durch eine downgrade Attacke als auch vor Session Hijacking schützen soll. Hierzu kann ein Server mittels des HTTP response header Strict-Transport-Security dem Browser des Anwenders mitteilen, in Zukunft für eine definierte Zeit (max-age) ausschließlich verschlüsselte Verbindungen für diese Domain zu nutzen. Optional lässt sich dieses über den Parameter includeSubDomains auf alle Subdomains ausweiten, also nicht nur auf https://test.de sondern auch auf https://subdomain.test.de.

Quelle: https://de.wikipedia.org/wiki/HTTP_Strict_Transport_Security

Apache

Wenn Apache als Webserver benutzt wird, wird die Aktivierung über dessen .htaccess-Dateien erledigt. Sie verbinden sich also entweder per SSH oder FTP mit Ihrem Account und navigieren zum öffentlichen Verzeichnis der gewünschten Domain oder Subdomain. Anschließend legen sie die Datei .htaccess an, falls diese noch nicht existiert. Dort ist einer der folgenden Einträge anzulegen:

Der Wert max-age ist in dem Fall auf 1 Jahr vordefiniert. Natürlich ist dieser, je nach Belieben, frei definierbar. Die Angabe geschieht in Sekunden.

Nur Haupt-Domain:

Header set Strict-Transport-Security "max-age=31536000" env=HTTPS

Mit Subdomains:

Header set Strict-Transport-Security "max-age=31536000"; includeSubDomains env=HTTPS

nginx

Die Aktivierung von HSTS für nginx muss über die Shell erfolgen.

Dafür haben wir ein Tool entwickelt, das auf den Namen pf-nginx-setup hört.

Bitte wechseln Sie dazu zur Dokumentation des Tools.