Spätestens seit den Snowden-Enthüllungen ist klar, wie massenhaft der weltweite Internetverkehr angezapft und ausgewertet wird. Letzteres ist oftmals zu leicht – schließlich gibt es ein bewährtes Mittel gegen Mitleser: Verschlüsselung. Vor über 20 Jahren wurde mit der ersten Version des Netscape-Browsers die Erweiterung „Secure Socket Layer“ (SSL) eingeführt, welche inzwischen als Transport Layer Security (TLS) bezeichnet wird. Mit TLS können Browser einen verschlüsselten Tunnel zum Server aufbauen, den ein Lauscher nur mit erheblichem Aufwand anzapfen kann.
Datenübertragung mit HTTPS
Verschlüsselung ist nicht nur sinnvoll, wenn es um vertrauliche Informationen wie Zugangsdaten oder den digitalen Kontoauszug geht. Filtern Sie die Chronik Ihres Browsers einmal gezielt nach unverschlüsselt übertragenen http://-Aufrufen. Möchten Sie wirklich, dass Unbekannte bei minimalem Aufwand erfahren können, welche Artikel Sie auf Nachrichtenseiten lesen, für welche Produkte Sie sich beim Amazon-Shopping interessieren und welche Termine Sie bei Doodle planen? Zusammengenommen ergibt sich daraus ein umfangreiches Interessenprofil. Wird eine Website hingegen über HTTPS ausgeliefert, sieht ein Datenschnüffler zwar, dass Sie Datenpakete mit einer bestimmten Domain austauschen; URL und Inhalt der Datenpakete sind jedoch verschlüsselt.
Damit eine Webseite über HTTPS erreichbar ist, benötigt der Webmaster ein Zertifikat mit der Unterschrift eines Herausgebers, den die gängigen Browser als vertrauenswürdig einstufen. Zum einen gibt es allerhand kommerzielle Anbieter wie Symantec oder Thawte, die mindestens einen zweistelligen Eurobetrag pro Jahr und Zertifikat verlangen. Zum anderen gibt es kostenlose Zertifikate der Zertifizierungsstellen StartSSL aus Israel und WoSign aus China. Diese führen jedoch eher ein Schattendasein, da sie im Wesentlichen auf Mund-zu-Mund-Propaganda angewiesen sind.
So wird ein großer Teil des Internetverkehrs zwanzig Jahre nach der Einführung von SSL/TLS immer noch im Klartext übertragen – laut der Statistikseite HTTP Archive rund drei Viertel. Einer der Gründe dafür ist, dass SSL den Ruf weg hat, teuer und kompliziert zu sein. Damit soll jetzt Schluss sein.
Zertifikate für alle!
Let’s Encrypt stellt kostenlos SSL-Zertifikate aus, welche die Browser als vertrauenswürdig einstufen.
Vertreter von Netz-Größen wie Mozilla, Akamai, Cisco haben sich zur Internet Security Research Group (ISRG) zusammengefunden, um kostenlosen SSL-Zertifikaten zum Durchbruch zu verhelfen. Ein Vertreter der Electronic Frontier Foundation (EFF) nimmt eine Wächterfunktion ein. Im Zentrum der Initiative „Let’s Encrypt“ (siehe c’t-Link) steht eine Zertifizierungsstelle (Certificate Authority, CA), die Domain-Inhabern kostenlos SSL-Zertifikate ausstellt. Es handelt sich dabei um sogenannte Domain-Validated-Zertifikate (DV), die für die meisten Zwecke ausreichen (siehe Kasten „Kleines Zertifikats-Einmaleins“ auf Seite 138). Um ein solches zu erhalten, muss man gegenüber der CA lediglich beweisen, dass man die Domain unter Kontrolle hat, auf die das Zertifikat ausgestellt werden soll.
Konfigurationsroboter
Gratis-Zertifikate von Let‘s Encrypt
Der vielleicht wichtigste Impuls der Initiative ist ein neu entwickeltes, offenes Protokoll, welches das Ausstellen von Zertifikaten automatisierbar macht. Es trägt den etwas sperrigen Namen Automated Certificate Management Environment, kurz ACME. Beantragt man als Webseiten-Betreiber ein Let’s-Encrypt-Zertifikat, läuft das seitens der CA ohne menschliches Eingreifen ab – und somit ohne Personalkosten. Man installiert auf dem Server den Let’s-Encrypt-Client, der über das ACME-Protokoll mit dem Tool Boulder spricht, welches auf der CA-Infrastruktur läuft. Der Client fordert ein Zertifikat für eine bestimmte Domain an, woraufhin ihm die CA eine Aufgabe stellt, die er lösen muss, um seine Hoheit über die Domain zu beweisen. Das kann zum Beispiel eine Datei sein, die über einem von der CA vorgegebenen Pfad unter der Domain erreichbar sein muss. Diese Aufgabe löst der Client automatisch. Anschließend holt er sich das Zertifikat ab und konfiguriert auf Wunsch selbstständig den Server. So einfach war HTTPS noch nie.
Die automatische Konfiguration funktioniert aktuell unter Ubuntu-Linux in Kombination mit Apache oder nginx. Windows-Server unterstützt der offizielle Client nicht. Gegenüber c’t erklärte Josh Aas, Executive Director der ISRG, dass man zwar selbst keinen Windows-Client entwickle, einen solchen aber begrüßen würde. Da das Protokoll offen ist, kann sich jeder daran versuchen, einen ACME-Client zum Beispiel für Microsoft-Server zu bauen. Erste Versuche, etwa mit PowerShell-Skripten, findet man bereits bei Github (siehe c’t-Link). Schon jetzt besteht die Möglichkeit, ein mit dem Linux-Client generiertes Zertifikat auf einen Windows-Server zu übertragen. Wie man Servern mit Let’s Encrypt das Verschlüsseln beibringt, erfahren Sie en détail auf Seite 146. ...