TLS mit Let's Encrypt Zertifikat

Aus Hostsharing Wiki
Version vom 1. Juli 2024, 05:49 Uhr von Tim (Diskussion | Beiträge) (DNS Challenge ermöglicht Wildcard-Zertifikate)
Zur Navigation springen Zur Suche springen


Diese Seite muss überarbeitet werden

Diese Seite wurde als Baustelle gekennzeichnet, weil sie überarbeitet werden muss. Eine Begründung dafür findest du auf der Diskussionsseite. Bitte hilf mit, diese Seite zu verbessern!

siehe auch aktuelle Informationen unter

* https://doc.hostsharing.net/referenz/tls/letsencrypt.html
* https://www.hostsharing.net/newsletter/2020/06/15/05/ 
* https://lists.hostsharing.net/archiv/global-announce/2020-June/000686.html
* https://lists.hostsharing.net/archiv/global-announce/2020-June/000687.html

"Let's Encrypt" ("Lasst uns verschlüsseln") ist eine Zertifizierungsstelle für X.509 TLS-Zertifikate. Über eine standardisierte Programmierschnittstelle lassen sich bei Let's Encrypt sogenannte Domain-validierte Zertifikate automatisiert ausstellen und verlängern. Weitere Informationen zu Let's Encrypt finden sich in der Wikipedia (dt.)

Let's Encrypt bei Hostsharing

Nutzer der Hostsharing-Plattform können TLS mit einem TLS-Zertifikat von Let's Encrypt ohne weiteres Zutun nutzen:

Beim Einrichten einer neuen Domain auf der Hostsharing-Plattform wird automatisch ein TLS Zertifikat erzeugt, das für die Hauptdomain und für die www-Subdomain zu dieser Hauptdomain gültig ist, also zum Beispiel für "beispiel.de" und "www.beispiel.de". Dazu muss der Domain-Inhaber nichts weiter tun.

Wird eine Domain neu eingerichtet, kann es einige Stunden dauern, bevor gültige Zertifikate aufgeschaltet sind und die Browser keine Sicherheitswarnungen mehr zeigen.

Weitere Subdomains

Viele Hostsharing-Nutzer kennen leichtgewichtige Subdomains, die sich nur durch das Anlegen eines weiteren Verzeichnisses im Domain-Verzeichnis ~/doms/example.com/subs/ nutzen lassen. Wir benutzen die DNS Challenge von Let's encrypt, damit werden auch Wildcard-Zertifikate ausgestellt. Im Zertifikat kann jede Subdomain explizit angegeben werden, oder ein Stern als Wildcard für alle möglichen Subdomains.

Aus diesem Grund ist in unserer Administrations-Anwendung HSAdmin ein Feld "valid subdomain names" eingeführt worden. Hier wird eine Liste aller Subdomains angegeben, die für diese Domain genutzt werden sollen (in diesem Apache VHost). Die Angabe erfolgt als Komma-separierte Liste der Form "www,blog,aktion", wenn neben der Haupdomain "beispiel.de" die Subdomains "www.beispiel.de", "blog.beispiel.de" und "aktion.beispiel.de" gültig sein sollen.

Migration vorhandener Domains

Domains, die zum Zeitpunkt der Umstellung bereits bei Hostsharing eingerichtet sind, werden wie folgt behandelt: Im Feld "valid subdomain names" ist der Stern "*" eingetragen, damit das bekannte Verhalten für leichtgewichtige Subdomains erhalten bleibt. Demzufolge ist die Domain-Option "letsencrypt" deaktiviert.

Wenn für eine solche Domain Let's Encrypt-Zertifikate von Hostsharing automatisch ausgestellt werden sollen, sind mit den Rechten des Paket-Administrators (also zum Beispiel dem User "xyz00") an der Domain zwei Änderungen vorzunehmen:

1. Im Feld "valid subdomain names" müssen alle genutzten Subdomains explizit angegeben werden. Die Liste kann auch leer sein.

2. Die Domain-Option "letsencrypt" wird aktiviert.

In der Regel steht nach wenigen Minuten ein Let's Encrypt-Zertifikat für die Domain zur Verfügung.

Berechtigungsprüfung vor Erstellung von Zertifikaten

Hostsharing nutzt zum Beantragen von Let's-Encrypt-Zertifikaten das Validierungsverfahren über HTTP. Um vorab sicherzustellen, dass der Zertifikatsantrag berechtigt ist, prüft Hostsharing unter anderem, ob die Domain die DNS-Server von Hostsharing nutzt. Bevor die Let's-Encrypt-Option in HSAdmin aktiviert wird, sollte man - gerade bei erst kürzlich zu Hostsharing umgezogenen Domains - sicherstellen, dass der lokale DNS-Cache auf den Hostsharing-Servern die aktuellen DNS-Informationen vorhält.

Per SSH in das entsprechende Paket eingeloggt, sollte der Befehl (hier am Beispiel der Domain example.com)

dig @localhost example.com NS

Die Hostsharing-DNS-Server als Ausgabe liefern:

;; ANSWER SECTION:
example.com.               3063    IN      NS      dns1.hostsharing.net.
example.com.               3063    IN      NS      dns2.hostsharing.net.
example.com.               3063    IN      NS      dns3.hostsharing.net.

Monitoring von TLS-Zertifikaten

TLS-Zertifikate von Let's Encrypt gelten jeweils nur für 90 Tage. Nach Ablauf von 60 Tagen sollten die Zertifikate erneuert werden. Dieser Prozess ist automatisiert.

Damit Probleme bei der Erneuerung von Zertifikaten nicht unbemerkt bleiben, haben wir ein Monitoring der Zertifikat-Restlaufzeiten eingerichtet. Im Falle von automatisch erstellten Let's Encrypt-Zertifikaten kümmern sich die Hostmaster um Problemfälle. Sie informieren das Mitglied, wenn der Paket- oder Domain-Administrator das Problem durch eine Konfiguration verursacht hat.

Das Monitoring ist gleichzeitig eine neue Funktion für alle Zertifikate, die Mitglieder uns zur Installation bereitgestellt haben: Der Paket-Administrator wird ca. 3 Wochen vor Ablauf eines Zertifikates informiert. Dazu bitte ggf. ein E-Mail Alias für den Paket-User (Beispiel: "xyz00") einrichten, damit die E-Mail mit der Warnung den richtigen Adressaten erreicht.

Let's Encrypt Zertifikate für Domains von anderen Hostern

Wenn das DNS von der Domain oder Subdomain nicht bei Hostsharing verwaltet wird, muss beim Domainverwalter eine Nameserver-Delegation auf die drei DNS-Server von Hostsharing eingerichtet sein, damit Let’s-Encrypt-Zertifikate genutzt werden können. Die Nameserver, die an der entsprechenden Stelle eingetragen werden müssen, heißen dns1.hostsharing.net, dns2.hostsharing.net und dns3.hostsharing.net.

Zum technischen Hintergrund: wir benutzen die DNS Challenge von Let's Encrypt, weil damit auch Wildcard-Zertifikate ausgestellt werden können.