Ende letzten Jahres hat die Certificate Authority (CA) StartCom für einiges an Furore gesorgt, als diverse Verstöße gegen die Richtlinien bekannt wurden, nach denen eine CA Zertifikate ausstellen darf. Diverse Browser-Hersteller (Chrome, Firefox) und Betriebssysteme (iOS, Mac-Plattform) haben daraufhin StartCom und WoSign das Vertrauen entzogen. Von Startcom ausgestellte Zertifikate wurden teilweise nicht mehr akzeptiert oder nur noch mit bestimmten Bedingungen (z.B. nur, wenn sie vor einem bestimmten Datum ausgestellt wurden).
Auch wir haben Zertifikate von StartCom eingesetzt, um unsere kostenlosen Subdomains wie meinbenutzername.lima-city.de mit SSL-Zertifikaten zu versorgen. Nun wurde immer deutlicher, dass die absolute Deadline, an dem die Zertifikate auch in den bisherigen Sonderfällen nicht mehr akzeptiert werden, bald erreicht wird und demnächst immer mehr Browser diese Verbindungen als „nicht sicher“ einstufen würden. Der erste Gedanke geht in dem Fall natürlich in Richtung von Let’s Encrypt, denn immerhin werden auch schon alle Kunden-Domains und aufgeschaltete Domains inklusive aller Subdomains vollautomatisch via Let’s Encrypt mit SSL-Zertifikaten ausgestattet. Wir können also unsere bisherige Infrastruktur zum Ausstellen von Zertifikaten mit Let’s Encrypt weiter nutzen und haben keine Kosten durch teuer gekaufte Wildcard-Zertifikate-
Es stellte sich aber schon im letzten Jahr schnell heraus, dass Let’s Encrypt ohne weiteres nicht die Lösung sein kann. Das Problem dabei, alle Subdomains unter lima-city.de und den anderen Domains (12hp.de, 12hp.at, usw.) mit SSL-Zertifikaten auszustatten, liegt in den Limits von Let’s Encrypt, die es gleich auf mehrere Arten verbieten, viele Subdomains unter einer Domain anzulegen:
- es lassen sich nur 20 Zertifikate pro Woche für eine Domain ausstellen. Das heißt, wir hätten maximal 20x pro Woche neue Zertifikate ausstellen können. Rein rechnerisch könnten wir alle 8,5 Stunden ein neues Zertifikat ausstellen, neue Registrierungen müssten so lange auf ein Zertifikat warten. Das alleine ist schon sehr unangenehm.
- es sind maximal 100 Subdomains pro Zertifikat erlaubt. Rein rechnerisch lassen sich also 2.000 Subdomains einer Domain mit einem Zertifikat schützen. Das ist eindeutig zu wenig, wir liegen in einer Größenordnung von hunderttausenden Subdomains für lima-city.de.
Unglücklicherweise stellt Let’s Encrypt (bisher) keine Wildcard-Zertifikate aus, so dass es nur noch die Lösung gibt, die Rate Limits irgendwie zu umgehen. Let’s Encrypt stellt genau für solche „Anträge“ ein Formular zur Verfügung, was aber leider gänzlich im Sande verlief. Aber es gab noch eine weitere Lösung: die Public Suffix List.
Die Public Suffix List ist eine Liste von Domains, die von diversen Programmen, Firmen und Prozessen dazu genutzt wird, zu bestimmen auf welchem „Level“ eine Domain sich befindet, also was der „öffentliche“ Teil einer Domain ist. Beispielsweise bei .de-Domains ist klar, dass a.de und b.de nicht zusammen gehören – „de“ ist ein „öffentliches Suffix“. Bei a.co.uk und b.co.uk ist der öffentliche Teil analog „co.uk“. Es gibt auch „private“ Suffixe, wie z.B. dyndns.org, denn unter dyndns.org kann jeder eine eigene Subdomain registrieren.
Es stellte sich also heraus, dass auch Let’s Encrypt die Public Suffix List verwendet, um die Limits zu prüfen. Wenn also lima-city.de ein Public Suffix ist, dann gilt das Limit mit 2.000 Subdomains nicht für lima-city.de, sondern für jede einzelne Subdomain wie mustermann.lima-city.de – und da wir nur mustermann.lima-city.de und vielleicht noch www.mustermann.lima-city.de schützen wollen, reicht das Limit von 2.000 Subdomains gut aus. Gesagt, getan: wir haben unsere Domains in die Public Suffix List aufnehmen lassen (das dauerte einige Wochen), Let’s Encrypt hat nach ein paar weiteren Wochen die Änderungen der Public Suffix List übernommen und siehe da, unser System stellt nun fleißig neue Zertifikate für die Subdomains aus, so dass der Großteil der Subdomains nun mit Zertifikaten von Let’s Encrypt geschützt sind. Das StartCom-Zertifikat ist nur noch ein Fallback, falls bisher kein Zertifikat von Let’s Encrypt ausgestellt wurde. Wir sagen also derzeit für hunderttausende Adressen „Bye, Bye, StartCom!“ und „Hallo Let’s Encrypt“.
Es ist übrigens wahrscheinlich, dass wir die Verwaltung von Let’s Encrypt-Zertifikaten demnächst ganz aus der Verwaltung entfernen. Inzwischen werden alle Adressen, die auf unseren Systemen gehostet sind, automatisch mit Zertifikaten versorgt. Es ist schlicht nicht mehr nötig, selbst Zertifikate zu verwalten, da unser System diese ganze Arbeit vollständig und transparent übernimmt. SSL und der verschlüsselte Transport von Daten sollte nämlich Standard sein und keine Arbeit und Mühe erfordern.