Let's Encrypt: Unterschied zwischen den Versionen

Aus Foxwiki
Subpages:
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 49: Zeile 49:


= TMP 1 =
= TMP 1 =
{{Infobox Organisation
'''{{lang|en|Let’s Encrypt}}''' (deutsch „Lasst uns verschlüsseln“) ist eine [[Zertifizierungsstelle]], die Ende 2015 in Betrieb gegangen ist und kostenlose [[X.509]]-[[Digitales Zertifikat|Zertifikate]] für [[Transport Layer Security]] (TLS) anbietet.  
| Name =
* Die Zertifikate haben eine Gültigkeit von jeweils 90 Tagen und können manuell oder automatisch erneuert werden.  
| Logo = Letsencrypt-logo-horizontal.svg
* Dabei ersetzt ein automatisierter Prozess die bisher gängigen komplexen händischen Vorgänge bei der Erstellung, Validierung, Signierung, Einrichtung und Erneuerung von Zertifikaten für verschlüsselte Websites.<ref name="Lets-Encrypt-Aims-to-Improve-Security" /><ref name="Launching-2015-CA-to-Encrypt-Entire-Web" />
| Rechtsform =
| Gründungsdatum = 2014
| Gründer = [[Electronic Frontier Foundation|EFF]], [[Mozilla Foundation|Mozilla]], [[University of Michigan|U-M]]
| Sitz = [[San Francisco]]
| Breitengrad =
| Längengrad =
| ISO-Region =
| Vorläufer =
| Geschäftsführung =
| Personen =
| Aktionsraum = weltweit
| Vorsitz =
| Zweck =
| Schwerpunkt = [[X.509]]-[[Zertifizierungsstelle]]
| Umsatz = 3,6 Mio. US-Dollar (2019)<ref>{{Internetquelle |autor=Josh Aas, ISRG Executive Director |url=https://letsencrypt.org/2018/12/31/looking-forward-to-2019.html |titel=Looking Forward to 2019 |werk= |hrsg=Let's Encrypt |datum=2018-12-31 |sprache=en |abruf=2019-01-26}}</ref>
| Freiwilligenzahl =
| Mitarbeiterzahl = 10 (2017)<ref>{{Internetquelle |autor=Josh Aas |url=https://letsencrypt.org/2016/09/20/what-it-costs-to-run-lets-encrypt.html |titel=What It Costs to Run Let's Encrypt |werk= |hrsg=Let's Encrypt |datum=2016-09-20 |sprache=en |abruf=2019-01-26}}</ref>
| Mitgliederzahl =
| Eigentümer = [[Internet Security Research Group]]
| Motto = encrypt the entire web
| Website = [https://letsencrypt.org/ letsencrypt.org]
}} <!-- Fehlende Daten werden aus Wikidata übernommen und können dort bearbeitet oder in der Vorlage überschrieben werden -->
 
'''{{lang|en|Let’s Encrypt}}''' (deutsch „Lasst uns verschlüsseln“) ist eine [[Zertifizierungsstelle]], die Ende 2015 in Betrieb gegangen ist und kostenlose [[X.509]]-[[Digitales Zertifikat|Zertifikate]] für [[Transport Layer Security]] (TLS) anbietet. Die Zertifikate haben eine Gültigkeit von jeweils 90 Tagen und können manuell oder automatisch erneuert werden. Dabei ersetzt ein automatisierter Prozess die bisher gängigen komplexen händischen Vorgänge bei der Erstellung, Validierung, Signierung, Einrichtung und Erneuerung von Zertifikaten für verschlüsselte Websites.<ref name="Lets-Encrypt-Aims-to-Improve-Security" /><ref name="Launching-2015-CA-to-Encrypt-Entire-Web" />


== Überblick ==
== Überblick ==
Ziel des Projekts ist es, verschlüsselte Verbindungen im [[World Wide Web]] zum Normalfall zu machen. Indem unter anderem Zahlung, [[Webserver]]konfiguration, Validierungs-E-Mails und die Sorge um abgelaufene Zertifikate überflüssig werden, sollen Aufwand für Einrichtung und Pflege von TLS-Verschlüsselung deutlich gesenkt werden.<ref name="ZDNet20141109" /> Auf einem [[Linux]]-Webserver soll das Ausführen von nur zwei Befehlen genügen, um binnen 20 bis 30 Sekunden [[Hypertext Transfer Protocol Secure|HTTPS]]-Verschlüsselung einzurichten, Zertifikate anzufordern und zu installieren.<ref name="heise20141119" /><ref name="SDTimes" />
Ziel des Projekts ist es, verschlüsselte Verbindungen im [[World Wide Web]] zum Normalfall zu machen.  
* Indem unter anderem Zahlung, [[Webserver]]konfiguration, Validierungs-E-Mails und die Sorge um abgelaufene Zertifikate überflüssig werden, sollen Aufwand für Einrichtung und Pflege von TLS-Verschlüsselung deutlich gesenkt werden.<ref name="ZDNet20141109" /> Auf einem [[Linux]]-Webserver soll das Ausführen von nur zwei Befehlen genügen, um binnen 20 bis 30 Sekunden [[Hypertext Transfer Protocol Secure|HTTPS]]-Verschlüsselung einzurichten, Zertifikate anzufordern und zu installieren.<ref name="heise20141119" /><ref name="SDTimes" />


Bei aktuellen Bestrebungen von großen [[Webbrowser]]-Projekten, unverschlüsseltes [[Hypertext Transfer Protocol|HTTP]] als überholt zu erklären und zukünftig davor zu warnen oder die Unterstützung einzuschränken, wird unter anderem auf die Verfügbarkeit von Let’s Encrypt gesetzt.<ref name="deprecating HTTP Mozilla" /><ref name="deprecating HTTP Chromium" /> Dem Projekt wird das Potenzial zugesprochen, die standardmäßige Verschlüsselung des gesamten Web zu erreichen.<ref name="Moody" />
Bei aktuellen Bestrebungen von großen [[Webbrowser]]-Projekten, unverschlüsseltes [[Hypertext Transfer Protocol|HTTP]] als überholt zu erklären und zukünftig davor zu warnen oder die Unterstützung einzuschränken, wird unter anderem auf die Verfügbarkeit von Let’s Encrypt gesetzt.<ref name="deprecating HTTP Mozilla" /><ref name="deprecating HTTP Chromium" /> Dem Projekt wird das Potenzial zugesprochen, die standardmäßige Verschlüsselung des gesamten Web zu erreichen.<ref name="Moody" />


Um sowohl die eigene Vertrauenswürdigkeit zu erhöhen, als auch gegen Angriffe und Manipulationsversuche zu schützen, soll auf größtmögliche Transparenz gesetzt werden. Dazu werden zum Beispiel regelmäßig Transparenzberichte veröffentlicht,<ref name="transparency report" /> alle Ausstellungstransaktionen öffentlich protokolliert (u.&nbsp;a. mit [[Certificate Transparency]]) und möglichst viel auf [[Offener Standard|offene Standards]] und [[freie Software]] gesetzt.<ref name="heise20141119" />
Um sowohl die eigene Vertrauenswürdigkeit zu erhöhen, als auch gegen Angriffe und Manipulationsversuche zu schützen, soll auf größtmögliche Transparenz gesetzt werden.  
* Dazu werden zum Beispiel regelmäßig Transparenzberichte veröffentlicht,<ref name="transparency report" /> alle Ausstellungstransaktionen öffentlich protokolliert (u.&nbsp;a.  
* mit [[Certificate Transparency]]) und möglichst viel auf [[Offener Standard|offene Standards]] und [[freie Software]] gesetzt.<ref name="heise20141119" />


Das Projekt erhielt den [[FSF Award]] 2019.
Das Projekt erhielt den [[FSF Award]] 2019.


Es werden TLS-Zertifikate mit [[Domain Validation Certificate|Domain Validation]] (DV) ausgestellt. Bewusst nicht angeboten werden TLS-Zertifikate mit einer Prüfung auf [[Organization Validation Certificate|Organization Validation]] (OV) und [[Extended Validation Certificate|Extended Validation]] (EV),<ref name="ZDNet20150409" /> da deren Antragsprozess per Definition nicht vollautomatisiert möglich ist und der Zweck von Let’s Encrypt ist, eine niederschwellige unmittelbare Ausstellung von TLS-Zertifikaten zu ermöglichen.
Es werden TLS-Zertifikate mit [[Domain Validation Certificate|Domain Validation]] (DV) ausgestellt.  
* Bewusst nicht angeboten werden TLS-Zertifikate mit einer Prüfung auf [[Organization Validation Certificate|Organization Validation]] (OV) und [[Extended Validation Certificate|Extended Validation]] (EV),<ref name="ZDNet20150409" /> da deren Antragsprozess per Definition nicht vollautomatisiert möglich ist und der Zweck von Let’s Encrypt ist, eine niederschwellige unmittelbare Ausstellung von TLS-Zertifikaten zu ermöglichen.


== Beteiligte ==
== Beteiligte ==
Let’s Encrypt ist ein von der gemeinnützigen [[Internet Security Research Group]] (ISRG) angebotener Dienst. Hauptsponsoren sind unter anderem die [[Electronic Frontier Foundation]] (EFF), die [[Mozilla Foundation]], [[Akamai]], [[Google|Google Chrome]] und [[Cisco Systems]]. Weitere Beteiligte sind die Zertifizierungsstelle [[IdenTrust]], die [[University of Michigan]] (U-M), die [[Stanford Law School]], die [[Linux Foundation]]<ref name="ISRG-LF" /> sowie Stephen Kent von [[Raytheon]]/[[BBN Technologies]] und Alex Polvi von [[CoreOS]].<ref name="heise20141119" />
Let’s Encrypt ist ein von der gemeinnützigen [[Internet Security Research Group]] (ISRG) angebotener Dienst.  
* Hauptsponsoren sind unter anderem die [[Electronic Frontier Foundation]] (EFF), die [[Mozilla Foundation]], [[Akamai]], [[Google|Google Chrome]] und [[Cisco Systems]].  
* Weitere Beteiligte sind die Zertifizierungsstelle [[IdenTrust]], die [[University of Michigan]] (U-M), die [[Stanford Law School]], die [[Linux Foundation]]<ref name="ISRG-LF" /> sowie Stephen Kent von [[Raytheon]]/[[BBN Technologies]] und Alex Polvi von [[CoreOS]].<ref name="heise20141119" />


== Technik ==
== Technik ==
Let’s Encrypt besitzt ein [[RSA-Kryptosystem|RSA]]-Stammzertifikat, das in einem [[Hardware-Sicherheitsmodul]] verwahrt und nicht direkt verwendet wird. Es soll im dritten Quartal 2019 durch ein [[Elliptic Curve DSA|ECDSA]]-Stammzertifikat ergänzt werden<ref>{{Internetquelle |url=https://letsencrypt.org/upcoming-features/ |titel=Upcoming Features - Let's Encrypt - Free SSL/TLS Certificates |abruf=2019-03-19}}</ref>. Damit werden mehrere Zwischenzertifikate signiert, welche durch die Zertifizierungsstelle [[IdenTrust]] gegengezeichnet werden.<ref name="heise20150617" /> Eines davon dient dann zur Signierung der ausgestellten Zertifikate, die anderen als Ersatz bei Problemen mit dem ersten. Durch die IdenTrust-Signatur können die ausgestellten Zertifikate in gebräuchlichen Webbrowsern über die vorinstallierten Stammzertifizierungsstellen geprüft werden. So werden Let’s-Encrypt-Zertifikate auf Client-Seite von Anfang an in der Regel ohne weiteres akzeptiert.<ref name="heise20150605" /> Seit Ende Juli 2018 ist das Stammzertifikat von Let's Encrypt in allen wichtigen Root-Programmen vertreten.<ref>{{Internetquelle |url=https://letsencrypt.org/2018/08/06/trusted-by-all-major-root-programs.html |titel=Let's Encrypt Root Trusted By All Major Root Programs - Let's Encrypt - Free SSL/TLS Certificates |abruf=2019-03-19}}</ref>
Let’s Encrypt besitzt ein [[RSA-Kryptosystem|RSA]]-Stammzertifikat, das in einem [[Hardware-Sicherheitsmodul]] verwahrt und nicht direkt verwendet wird.  
* Es soll im dritten Quartal 2019 durch ein [[Elliptic Curve DSA|ECDSA]]-Stammzertifikat ergänzt werden<ref>{{Internetquelle |url=https://letsencrypt.org/upcoming-features/ |titel=Upcoming Features - Let's Encrypt - Free SSL/TLS Certificates |abruf=2019-03-19}}</ref>.  
* Damit werden mehrere Zwischenzertifikate signiert, welche durch die Zertifizierungsstelle [[IdenTrust]] gegengezeichnet werden.<ref name="heise20150617" /> Eines davon dient dann zur Signierung der ausgestellten Zertifikate, die anderen als Ersatz bei Problemen mit dem ersten.  
* Durch die IdenTrust-Signatur können die ausgestellten Zertifikate in gebräuchlichen Webbrowsern über die vorinstallierten Stammzertifizierungsstellen geprüft werden.  
* So werden Let’s-Encrypt-Zertifikate auf Client-Seite von Anfang an in der Regel ohne weiteres akzeptiert.<ref name="heise20150605" /> Seit Ende Juli 2018 ist das Stammzertifikat von Let's Encrypt in allen wichtigen Root-Programmen vertreten.<ref>{{Internetquelle |url=https://letsencrypt.org/2018/08/06/trusted-by-all-major-root-programs.html |titel=Let's Encrypt Root Trusted By All Major Root Programs - Let's Encrypt - Free SSL/TLS Certificates |abruf=2019-03-19}}</ref>


=== Protokoll ===
=== Protokoll ===
Zur Automatisierung der Zertifizierung nutzt Let’s Encrypt das [[Challenge-Response-Authentifizierung|Challenge-Response-Verfahren]] [[Automatic Certificate Management Environment]] (ACME). Dabei werden verschiedene Anfragen entweder an Unterseiten am Webserver oder direkt [[Domain Name System|DNS]]-Anfragen an die zu zertifizierende Domain gestellt. In beiden Fällen wird ein vorher von Let’s Encrypt erstellter Token entweder auf einer speziellen Unterseite am Web-Server oder als [[TXT Resource Record]] im DNS der betreffenden Domain öffentlich abgelegt und von Let’s-Encrypt-Servern in Folge abgefragt. Anhand der Antwort mit den Token wird sichergestellt, dass der Antragsteller den Web-Server oder direkt den [[Domain Name System#Nameserver|Nameserver]] und die damit verknüpfte Domain kontrolliert ({{enS|domain validation}}).
Zur Automatisierung der Zertifizierung nutzt Let’s Encrypt das [[Challenge-Response-Authentifizierung|Challenge-Response-Verfahren]] [[Automatic Certificate Management Environment]] (ACME).  
* Dabei werden verschiedene Anfragen entweder an Unterseiten am Webserver oder direkt [[Domain Name System|DNS]]-Anfragen an die zu zertifizierende Domain gestellt.  
* In beiden Fällen wird ein vorher von Let’s Encrypt erstellter Token entweder auf einer speziellen Unterseite am Web-Server oder als [[TXT Resource Record]] im DNS der betreffenden Domain öffentlich abgelegt und von Let’s-Encrypt-Servern in Folge abgefragt.  
* Anhand der Antwort mit den Token wird sichergestellt, dass der Antragsteller den Web-Server oder direkt den [[Domain Name System#Nameserver|Nameserver]] und die damit verknüpfte Domain kontrolliert ({{enS|domain validation}}).


Auf dem Server-System müssen diese Anfragen korrekt beantwortet werden. Dazu bietet das Protokoll verschiedene Möglichkeiten. Bei einer  wird dazu von der ACME-Client-Software ein besonders konfigurierter TLS-Server eingerichtet, der mittels [[Server Name Indication]] auf besondere Anfragen der Zertifizierungsstelle antwortet (Domain-Validierung mittels Server Name Indication, DVSNI). Dieses Verfahren wird allerdings nur für eine erste Zertifikatsausstellung für eine Domain akzeptiert (sogenanntes „trust on first use“, TOFU – Vertrauen bei erster Benutzung). Danach kommt die alternative Validierung über ein bestehendes Zertifikat zum Einsatz. Bei Verlust der Kontrolle über ein bereits ausgestelltes Zertifikat muss daher ein Zertifikat von einem Drittanbieter erworben werden, um wieder ein Let’s-Encrypt-Zertifikat zu erhalten.
Auf dem Server-System müssen diese Anfragen korrekt beantwortet werden.  
* Dazu bietet das Protokoll verschiedene Möglichkeiten.  
* Bei einer  wird dazu von der ACME-Client-Software ein besonders konfigurierter TLS-Server eingerichtet, der mittels [[Server Name Indication]] auf besondere Anfragen der Zertifizierungsstelle antwortet (Domain-Validierung mittels Server Name Indication, DVSNI).  
* Dieses Verfahren wird allerdings nur für eine erste Zertifikatsausstellung für eine Domain akzeptiert (sogenanntes „trust on first use“, TOFU – Vertrauen bei erster Benutzung).  
* Danach kommt die alternative Validierung über ein bestehendes Zertifikat zum Einsatz.  
* Bei Verlust der Kontrolle über ein bereits ausgestelltes Zertifikat muss daher ein Zertifikat von einem Drittanbieter erworben werden, um wieder ein Let’s-Encrypt-Zertifikat zu erhalten.


Die Validierungsverfahren werden mehrmals über verschiedene Netzwerkpfade durchgeführt. Zur Erschwerung von [[Cache Poisoning|DNS-Spoofing]] ist die Prüfung von DNS-Einträgen von mehreren geographisch verteilten Standpunkten aus vorgesehen.
Die Validierungsverfahren werden mehrmals über verschiedene Netzwerkpfade durchgeführt.  
* Zur Erschwerung von [[Cache Poisoning|DNS-Spoofing]] ist die Prüfung von DNS-Einträgen von mehreren geographisch verteilten Standpunkten aus vorgesehen.


Bei ACME-Interaktionen werden [[JavaScript Object Notation|JSON]]-Dokumente über HTTPS-Verbindungen ausgetauscht.<ref name="Threatpost" /> Das Protokoll wurde im März 2019 von der [[Internet Engineering Task Force]] als [[Request for Comments]] im Status eines vorgeschlagenen [[Internetstandard]]s veröffentlicht.<ref>{{RFC-Internet |RFC=8555 |Titel=Automatic Certificate Management Environment (ACME) |Datum=2019-03}}</ref>
Bei ACME-Interaktionen werden [[JavaScript Object Notation|JSON]]-Dokumente über HTTPS-Verbindungen ausgetauscht.<ref name="Threatpost" /> Das Protokoll wurde im März 2019 von der [[Internet Engineering Task Force]] als [[Request for Comments]] im Status eines vorgeschlagenen [[Internetstandard]]s veröffentlicht.<ref>{{RFC-Internet |RFC=8555 |Titel=Automatic Certificate Management Environment (ACME) |Datum=2019-03}}</ref>
Zeile 105: Zeile 100:
=== Server-Implementierung ===
=== Server-Implementierung ===
[[Datei:Letsencrypt screenshot 2 domain choice.png|mini|Domainauswahldialog]]
[[Datei:Letsencrypt screenshot 2 domain choice.png|mini|Domainauswahldialog]]
Die Zertifizierungsstelle besteht im Wesentlichen aus einer in [[Go (Programmiersprache)|Go]] geschriebenen Software namens Boulder, die die Server-Seite des ACME-Protokolls implementiert. Sie wird als [[freie Software]] auch in [[Quelltext]]form unter den Bedingungen von Version 2 der [[Mozilla Public License]] (MPL) verbreitet.<ref name="license-boulder" /> Sie stellt eine [[Representational State Transfer|REST]]-[[Programmierschnittstelle]] zur Verfügung, auf die TLS-verschlüsselt zugegriffen werden kann.
Die Zertifizierungsstelle besteht im Wesentlichen aus einer in [[Go (Programmiersprache)|Go]] geschriebenen Software namens Boulder, die die Server-Seite des ACME-Protokolls implementiert.  
* Sie wird als [[freie Software]] auch in [[Quelltext]]form unter den Bedingungen von Version 2 der [[Mozilla Public License]] (MPL) verbreitet.<ref name="license-boulder" /> Sie stellt eine [[Representational State Transfer|REST]]-[[Programmierschnittstelle]] zur Verfügung, auf die TLS-verschlüsselt zugegriffen werden kann.


Für verschiedene Linux-Distributionen existieren Pakete, welche die Cert-Updates automatisch durchführen, so für [[Debian]] das package ''Certbot''.<ref>[https://packages.debian.org/stretch/certbot packages.debian.org]</ref>
Für verschiedene Linux-Distributionen existieren Pakete, welche die Cert-Updates automatisch durchführen, so für [[Debian]] das package ''Certbot''.<ref>[https://packages.debian.org/stretch/certbot packages.debian.org]</ref>
Zeile 112: Zeile 108:
Durch den offenen Standard ACME sind mittlerweile über 40 unterschiedliche Clients entwickelt worden.<ref>{{Internetquelle |url=https://community.letsencrypt.org/t/list-of-client-implementations/2103 |titel=List of Client Implementations |werk=Let's Encrypt Community Support |datum=2015-10-25 |abruf=2016-03-25}}</ref><ref>{{Internetquelle |url=https://letsencrypt.org/docs/client-options/ |titel=ACME Client Implementations |werk=Documentation – Let’s Encrypt – Free SSL_TLS Certificates |datum=2019-07-10 |abruf=2019-07-21}}</ref>
Durch den offenen Standard ACME sind mittlerweile über 40 unterschiedliche Clients entwickelt worden.<ref>{{Internetquelle |url=https://community.letsencrypt.org/t/list-of-client-implementations/2103 |titel=List of Client Implementations |werk=Let's Encrypt Community Support |datum=2015-10-25 |abruf=2016-03-25}}</ref><ref>{{Internetquelle |url=https://letsencrypt.org/docs/client-options/ |titel=ACME Client Implementations |werk=Documentation – Let’s Encrypt – Free SSL_TLS Certificates |datum=2019-07-10 |abruf=2019-07-21}}</ref>


Im Rahmen des Projekts wurde eine [[Apache-Lizenz|Apache-lizenzierte]]<ref name="license-letsencrypt" /> [[Python (Programmiersprache)|Python]]-[[Referenzimplementierung]] namens ''certbot'' (früher ''letsencrypt'') entwickelt. Über diese wird am Webserver eines Antragstellers das Zertifikat angefordert, der Domain-Validierungsprozess durchgeführt, das Zertifikat installiert, die HTTPS-Verschlüsselung im Webserver eingerichtet und später das Zertifikat regelmäßig erneuert.<ref name="techrepublic" /><ref name="heise20141119" /> Nach der Installation und Zustimmung zu einem Benutzervertrag genügt die Ausführung des reinen Befehls, um ein gültiges Zertifikat installiert zu bekommen. Es können aber auch zusätzliche Funktionen wie [[OCSP stapling]] oder [[HTTP Strict Transport Security]] (HSTS) eingestellt werden.<ref name="Threatpost" /> Die automatische Einrichtung funktioniert zunächst allerdings nur mit [[Apache HTTP Server|Apache]] und [[nginx]]. Der Client kann aus den Paketquellen diverser Linux-Distributionen installiert werden, beispielsweise aus den [[Debian Package Manager|Debian-Paketquellen]].<ref name="Debian-Paket" />
Im Rahmen des Projekts wurde eine [[Apache-Lizenz|Apache-lizenzierte]]<ref name="license-letsencrypt" /> [[Python (Programmiersprache)|Python]]-[[Referenzimplementierung]] namens ''certbot'' (früher ''letsencrypt'') entwickelt. Über diese wird am Webserver eines Antragstellers das Zertifikat angefordert, der Domain-Validierungsprozess durchgeführt, das Zertifikat installiert, die HTTPS-Verschlüsselung im Webserver eingerichtet und später das Zertifikat regelmäßig erneuert.<ref name="techrepublic" /><ref name="heise20141119" /> Nach der Installation und Zustimmung zu einem Benutzervertrag genügt die Ausführung des reinen Befehls, um ein gültiges Zertifikat installiert zu bekommen.  
* Es können aber auch zusätzliche Funktionen wie [[OCSP stapling]] oder [[HTTP Strict Transport Security]] (HSTS) eingestellt werden.<ref name="Threatpost" /> Die automatische Einrichtung funktioniert zunächst allerdings nur mit [[Apache HTTP Server|Apache]] und [[nginx]].  
* Der Client kann aus den Paketquellen diverser Linux-Distributionen installiert werden, beispielsweise aus den [[Debian Package Manager|Debian-Paketquellen]].<ref name="Debian-Paket" />


Daneben gibt es mit ''acmetool''<ref>{{Internetquelle |url=https://hlandau.github.io/acme/ |titel=acmetool |werk=hlandau.github.io |abruf=2016-03-25 |archiv-url=https://web.archive.org/web/20160320114953/https://hlandau.github.io/acme/ |archiv-datum=2016-03-20 |offline=1 |archiv-bot=2022-03-14 23:35:22 InternetArchiveBot }}</ref> einen in [[Go (Programmiersprache)|Go]] geschriebenen mit vor-kompilierten, [[Statisches Binden|statischen]] [[Programmdatei]]en Client. Die Seite ''Get HTTPS for free!''<ref>{{Internetquelle |url=https://gethttpsforfree.com/ |titel=Get HTTPS for free! |werk=gethttpsforfree.com |abruf=2016-03-25}}</ref> validiert ein Zertifikat per [[JavaScript]] im Webbrowser, wobei der Webadmin Anleitungen bekommt für verschiedene manuell auszuführende Schritte. [[Caddy (Webserver)|Caddy]]<ref>{{Internetquelle |url=https://caddyserver.com/ |titel=Caddy – The HTTP/2 Web Server with Fully Managed SSL |werk=caddyserver.com |abruf=2016-03-25}}</ref> ist ein [[HTTP/2]]-kompatibler [[Webserver]], der vollautomatisch ein Zertifikat erzeugt und Inhalte per HTTPS ausliefert. Ein weiterer weit verbreiteter Client ist acme-tiny, ein in Python geschriebener Client, er ist weniger als 200 Zeilen lang und soll somit von jedem Nutzer vor der Verwendung selbst gelesen werden.<ref>{{Internetquelle |url=https://github.com/diafygi/acme-tiny |titel=GitHub – diafygi/acme-tiny: A tiny script to issue and renew TLS certs from Let's Encrypt |werk=github.com |hrsg= |sprache=en |abruf=2017-03-02 |archiv-url= |archiv-datum= |offline=}}</ref>
Daneben gibt es mit ''acmetool''<ref>{{Internetquelle |url=https://hlandau.github.io/acme/ |titel=acmetool |werk=hlandau.github.io |abruf=2016-03-25 |archiv-url=https://web.archive.org/web/20160320114953/https://hlandau.github.io/acme/ |archiv-datum=2016-03-20 |offline=1 |archiv-bot=2022-03-14 23:35:22 InternetArchiveBot }}</ref> einen in [[Go (Programmiersprache)|Go]] geschriebenen mit vor-kompilierten, [[Statisches Binden|statischen]] [[Programmdatei]]en Client.  
* Die Seite ''Get HTTPS for free!''<ref>{{Internetquelle |url=https://gethttpsforfree.com/ |titel=Get HTTPS for free! |werk=gethttpsforfree.com |abruf=2016-03-25}}</ref> validiert ein Zertifikat per [[JavaScript]] im Webbrowser, wobei der Webadmin Anleitungen bekommt für verschiedene manuell auszuführende Schritte. [[Caddy (Webserver)|Caddy]]<ref>{{Internetquelle |url=https://caddyserver.com/ |titel=Caddy – The HTTP/2 Web Server with Fully Managed SSL |werk=caddyserver.com |abruf=2016-03-25}}</ref> ist ein [[HTTP/2]]-kompatibler [[Webserver]], der vollautomatisch ein Zertifikat erzeugt und Inhalte per HTTPS ausliefert.  
* Ein weiterer weit verbreiteter Client ist acme-tiny, ein in Python geschriebener Client, er ist weniger als 200 Zeilen lang und soll somit von jedem Nutzer vor der Verwendung selbst gelesen werden.<ref>{{Internetquelle |url=https://github.com/diafygi/acme-tiny |titel=GitHub – diafygi/acme-tiny: A tiny script to issue and renew TLS certs from Let's Encrypt |werk=github.com |hrsg= |sprache=en |abruf=2017-03-02 |archiv-url= |archiv-datum= |offline=}}</ref>


== Geschichte und Zeitplan ==
== Geschichte und Zeitplan ==
Die Wurzeln des Projektes liegen in einem von der [[Electronic Frontier Foundation]] zusammen mit der University of Michigan betriebenen Projekt und einem unabhängigen Projekt von Mozilla, die in Let’s Encrypt zusammengeführt wurden. 2014 wurde die Trägerorganisation, die ISRG, gegründet. Der Start von Let’s Encrypt wurde am 18. November 2014 bekannt gemacht.<ref name="out-of-stealth" />
Die Wurzeln des Projektes liegen in einem von der [[Electronic Frontier Foundation]] zusammen mit der University of Michigan betriebenen Projekt und einem unabhängigen Projekt von Mozilla, die in Let’s Encrypt zusammengeführt wurden. 2014 wurde die Trägerorganisation, die ISRG, gegründet.  
* Der Start von Let’s Encrypt wurde am 18.  
* November 2014 bekannt gemacht.<ref name="out-of-stealth" />


Am 28. Januar 2015 wurde das ACME-Protokoll erstmals bei der IETF zur Standardisierung eingereicht.<ref name="draft-barnes-acme" />
Am 28.  
Am 9. April 2015 verkündeten die ISRG und die Linux Foundation ihre Zusammenarbeit.<ref name="ISRG-LF" />
* Januar 2015 wurde das ACME-Protokoll erstmals bei der IETF zur Standardisierung eingereicht.<ref name="draft-barnes-acme" />
Am 9.  
* April 2015 verkündeten die ISRG und die Linux Foundation ihre Zusammenarbeit.<ref name="ISRG-LF" />
Anfang Juni wurden die Stamm- und Zwischenzertifikate erzeugt.<ref name="heise20150605" />
Anfang Juni wurden die Stamm- und Zwischenzertifikate erzeugt.<ref name="heise20150605" />
Am 16. Juni wurde der endgültige Zeitplan für die Dienstaufnahme bekanntgegeben, wonach die Ausstellung des ersten Zertifikats für die Woche des 27. Juli vorgesehen war, dem eine Phase eingeschränkter Ausstellung folgen sollte, um die Sicherheit und Skalierbarkeit zu erproben.<ref name="schedule" /> Am 7. August wurde der Zeitplan geändert auf die erste Zertifikatsausstellung in der Woche des 7. Septembers und allgemeine Verfügbarkeit in der Woche des 16. November.<ref name="schedule2" /> Ab 3. Dezember 2015 befand sich das Projekt in der offenen [[Betatest]]-Phase und kann seither von allen Interessierten genutzt werden.<ref name="beta" />
Am 16.  
* Juni wurde der endgültige Zeitplan für die Dienstaufnahme bekanntgegeben, wonach die Ausstellung des ersten Zertifikats für die Woche des 27.  
* Juli vorgesehen war, dem eine Phase eingeschränkter Ausstellung folgen sollte, um die Sicherheit und Skalierbarkeit zu erproben.<ref name="schedule" /> Am 7.  
* August wurde der Zeitplan geändert auf die erste Zertifikatsausstellung in der Woche des 7.  
* Septembers und allgemeine Verfügbarkeit in der Woche des 16.  
* November.<ref name="schedule2" /> Ab 3.  
* Dezember 2015 befand sich das Projekt in der offenen [[Betatest]]-Phase und kann seither von allen Interessierten genutzt werden.<ref name="beta" />


Am 8. März 2016 wurde bekannt gegeben, dass schon über eine Million Zertifikate ausgestellt wurden.<ref name="1Mio" />
Am 8.  
Eineinhalb Monate später waren es über zwei Millionen, weitere eineinhalb Monate später über fünf Millionen Zertifikate ausgestellt. Ein nennenswerter Teil des Zuwachses geht auf Kooperationen mit Webhosting-Anbietern wie zum Beispiel [[WordPress.com]] (über 1 Million zusätzliche Sites) zurück, die für betreute Websites TLS-Verschlüsselung mit Let’s-Encrypt-Zertifikaten anbieten beziehungsweise diese eigenständig umgestellt haben. Seit der Öffnung des Betriebs erhöhte sich bis zum 22. Juni 2016 nach Messung von Browserhersteller Mozilla der weltweite Anteil verschlüsselter Websites von 39,5 auf 45&nbsp;Prozent.<ref name="5Mio" />
* März 2016 wurde bekannt gegeben, dass schon über eine Million Zertifikate ausgestellt wurden.<ref name="1Mio" />
Eineinhalb Monate später waren es über zwei Millionen, weitere eineinhalb Monate später über fünf Millionen Zertifikate ausgestellt.  
* Ein nennenswerter Teil des Zuwachses geht auf Kooperationen mit Webhosting-Anbietern wie zum Beispiel [[WordPress.com]] (über 1 Million zusätzliche Sites) zurück, die für betreute Websites TLS-Verschlüsselung mit Let’s-Encrypt-Zertifikaten anbieten beziehungsweise diese eigenständig umgestellt haben.  
* Seit der Öffnung des Betriebs erhöhte sich bis zum 22.  
* Juni 2016 nach Messung von Browserhersteller Mozilla der weltweite Anteil verschlüsselter Websites von 39,5 auf 45&nbsp;Prozent.<ref name="5Mio" />


Am 17. März 2016 gab das Projekt bekannt, dem [[CA/Browser Forum]] beigetreten zu sein,<ref name="CABForum" /> das die Nutzung von X.509-v.3-Zertifikaten für TLS regelt.
Am 17.  
* März 2016 gab das Projekt bekannt, dem [[CA/Browser Forum]] beigetreten zu sein,<ref name="CABForum" /> das die Nutzung von X.509-v.3-Zertifikaten für TLS regelt.


Am 12. April 2016 ging das Projekt aus der offenen Betaphase in den offiziellen Regelbetrieb über.<ref name="outofbeta" />
Am 12.  
* April 2016 ging das Projekt aus der offenen Betaphase in den offiziellen Regelbetrieb über.<ref name="outofbeta" />


Seit dem 13. März 2018 bietet Let’s Encrypt auch sogenannte ''Wildcard-Zertifikate'' an.<ref name="wild1" />
Seit dem 13.  
* März 2018 bietet Let’s Encrypt auch sogenannte ''Wildcard-Zertifikate'' an.<ref name="wild1" />


Am 27. Februar 2020 stellte Let’s Encrypt das einmilliardste Zertifikat aus.<ref>https://www.heise.de/security/meldung/Erfolgsgeschichte-Let-s-Encrypt-stellt-einmilliardstes-Zertifikat-aus-4673299.html</ref><ref>https://letsencrypt.org/2020/02/27/one-billion-certs.html</ref> Kurz darauf musste Let’s Encrypt 3 Millionen Zertifikate zurückziehen, da bei deren Ausstellung die [[DNS Certification Authority Authorization]] nicht hinreichend geprüft wurde.<ref>https://www.heise.de/security/meldung/Achtung-Let-s-Encrypt-macht-heute-nacht-3-Millionen-Zertifikate-ungueltig-4676017.html</ref>
Am 27.  
* Februar 2020 stellte Let’s Encrypt das einmilliardste Zertifikat aus.<ref>https://www.heise.de/security/meldung/Erfolgsgeschichte-Let-s-Encrypt-stellt-einmilliardstes-Zertifikat-aus-4673299.html</ref><ref>https://letsencrypt.org/2020/02/27/one-billion-certs.html</ref> Kurz darauf musste Let’s Encrypt 3 Millionen Zertifikate zurückziehen, da bei deren Ausstellung die [[DNS Certification Authority Authorization]] nicht hinreichend geprüft wurde.<ref>https://www.heise.de/security/meldung/Achtung-Let-s-Encrypt-macht-heute-nacht-3-Millionen-Zertifikate-ungueltig-4676017.html</ref>


== Siehe auch ==
== Siehe auch ==
Zeile 175: Zeile 193:
</ref>
</ref>
<ref name="heise20141119">
<ref name="heise20141119">
Fabian Scherschel (heise.de), 19. November 2014: [https://heise.de/-2460155 Let’s Encrypt: Mozilla und die EFF mischen den CA-Markt auf]
Fabian Scherschel (heise.de), 19.  
* November 2014: [https://heise.de/-2460155 Let’s Encrypt: Mozilla und die EFF mischen den CA-Markt auf]
</ref>
</ref>
<ref name="SDTimes">
<ref name="SDTimes">
Rob Marvin (SD Times), 19. November 2014: [http://sdtimes.com/eff-wants-make-https-default/ EFF wants to make HTTPS the default protocol]
Rob Marvin (SD Times), 19.  
* November 2014: [http://sdtimes.com/eff-wants-make-https-default/ EFF wants to make HTTPS the default protocol]
</ref>
</ref>
<ref name="Debian-Paket">
<ref name="Debian-Paket">
Zeile 184: Zeile 204:
</ref>
</ref>
<ref name="deprecating HTTP Mozilla">
<ref name="deprecating HTTP Mozilla">
Richard Barnes (Mozilla), 30. April 2015: [https://blog.mozilla.org/security/2015/04/30/deprecating-non-secure-http/ Deprecating Non-Secure HTTP]
Richard Barnes (Mozilla), 30.  
* April 2015: [https://blog.mozilla.org/security/2015/04/30/deprecating-non-secure-http/ Deprecating Non-Secure HTTP]
</ref>
</ref>
<ref name="deprecating HTTP Chromium">
<ref name="deprecating HTTP Chromium">
Zeile 190: Zeile 211:
</ref>
</ref>
<ref name="ZDNet20141109">
<ref name="ZDNet20141109">
Liam Tung (ZDNet), 19. November 2014: [http://www.zdnet.com/article/eff-mozilla-to-launch-free-one-click-website-encryption/ EFF, Mozilla to launch free one-click website encryption]
Liam Tung (ZDNet), 19.  
* November 2014: [http://www.zdnet.com/article/eff-mozilla-to-launch-free-one-click-website-encryption/ EFF, Mozilla to launch free one-click website encryption]
</ref>
</ref>
<ref name="Moody">
<ref name="Moody">
Glyn Moody, 25. November 2014: [http://www.computerworlduk.com/blogs/open-enterprise/surveillance-3588605/ The Coming War on Encryption, Tor, and VPNs] – Time to stand up for your right to online privacy
Glyn Moody, 25.  
* November 2014: [http://www.computerworlduk.com/blogs/open-enterprise/surveillance-3588605/ The Coming War on Encryption, Tor, and VPNs] – Time to stand up for your right to online privacy
</ref>
</ref>
<ref name="transparency report">
<ref name="transparency report">
Zeljka Zorz (Help Net Security), 6. Juli 2015: [http://net-security.org/secworld.php?id=18595 Let's Encrypt CA releases transparency report before its first certificate]
Zeljka Zorz (Help Net Security), 6.  
* Juli 2015: [http://net-security.org/secworld.php?id=18595 Let's Encrypt CA releases transparency report before its first certificate]
</ref>
</ref>
<ref name="ISRG-LF">Sean Michael Kerner (eweek.com), 9. April 2015: [https://www.eweek.com/security/lets-encrypt-becomes-linux-foundation-collaborative-project.html Let’s Encrypt Becomes Linux Foundation Collaborative Project]{{Toter Link|url=https://www.eweek.com/security/lets-encrypt-becomes-linux-foundation-collaborative-project.html |date=2019-09 |archivebot=2019-09-17 18:26:18 InternetArchiveBot }}</ref>
<ref name="ISRG-LF">Sean Michael Kerner (eweek.com), 9.  
* April 2015: [https://www.eweek.com/security/lets-encrypt-becomes-linux-foundation-collaborative-project.html Let’s Encrypt Becomes Linux Foundation Collaborative Project]{{Toter Link|url=https://www.eweek.com/security/lets-encrypt-becomes-linux-foundation-collaborative-project.html |date=2019-09 |archivebot=2019-09-17 18:26:18 InternetArchiveBot }}</ref>
<ref name="ZDNet20150409">
<ref name="ZDNet20150409">
Steven J. Vaughan-Nichols (ZDNet), 9. April 2015: [http://www.zdnet.com/article/securing-the-web-once-and-for-all-the-open-encryption-project the web once and for all: The Let’s Encrypt Project]
Steven J.  
* Vaughan-Nichols (ZDNet), 9.  
* April 2015: [http://www.zdnet.com/article/securing-the-web-once-and-for-all-the-open-encryption-project the web once and for all: The Let’s Encrypt Project]
</ref>
</ref>
<ref name="Threatpost">
<ref name="Threatpost">
Chris Brook (Threatpost), 18. November 2014: [https://threatpost.com/eff-others-plan-to-make-encrypting-the-web-easier-in-2015/109451 EFF, Others Plan to Make Encrypting the Web Easier in 2015]
Chris Brook (Threatpost), 18.  
* November 2014: [https://threatpost.com/eff-others-plan-to-make-encrypting-the-web-easier-in-2015/109451 EFF, Others Plan to Make Encrypting the Web Easier in 2015]
</ref>
</ref>
<ref name="techrepublic">
<ref name="techrepublic">
James Sanders (TechRepublic), 25. November 2014: [http://www.techrepublic.com/article/lets-encrypt-initiative-to-provide-free-encryption-certificates/ Let’s Encrypt initiative to provide free encryption certificates]
James Sanders (TechRepublic), 25.  
* November 2014: [http://www.techrepublic.com/article/lets-encrypt-initiative-to-provide-free-encryption-certificates/ Let’s Encrypt initiative to provide free encryption certificates]
</ref>
</ref>
<ref name="draft-barnes-acme">
<ref name="draft-barnes-acme">
Zeile 212: Zeile 241:
|url = https://tools.ietf.org/html/draft-barnes-acme-01
|url = https://tools.ietf.org/html/draft-barnes-acme-01
|title = Automatic Certificate Management Environment (ACME) draft-barnes-acme-01
|title = Automatic Certificate Management Environment (ACME) draft-barnes-acme-01
|author = R. Barnes, P. Eckersley, S. Schoen, A. Halderman, J. Kasten
|author = R.  
|date = 28. Januar 2015
* Barnes, P.  
* Eckersley, S.  
* Schoen, A.  
* Halderman, J.  
* Kasten
|date = 28.  
* Januar 2015
}}
}}
</ref>
</ref>
<ref name="heise20150605">
<ref name="heise20150605">
Reiko Kaps (heise.de), 5. Juni 2015: [https://heise.de/-2679600 Let’s Encrypt: Meilenstein zu kostenlosen SSL-Zertifikaten für alle]
Reiko Kaps (heise.de), 5.  
* Juni 2015: [https://heise.de/-2679600 Let’s Encrypt: Meilenstein zu kostenlosen SSL-Zertifikaten für alle]
</ref>
</ref>
<ref name="license-boulder">
<ref name="license-boulder">
Zeile 242: Zeile 278:
|website = letsencrypt.org
|website = letsencrypt.org
|publisher = Let’s Encrypt
|publisher = Let’s Encrypt
|accessdate = 19. Juni 2015
|accessdate = 19.  
|date = 16. Juni 2015
* Juni 2015
|date = 16.  
* Juni 2015
}}
}}
</ref>
</ref>
Zeile 250: Zeile 288:
|url = https://letsencrypt.org/2015/08/07/updated-lets-encrypt-launch-schedule.html
|url = https://letsencrypt.org/2015/08/07/updated-lets-encrypt-launch-schedule.html
|title = Updated Let’s Encrypt Launch Schedule
|title = Updated Let’s Encrypt Launch Schedule
|date = 17. August 2015
|date = 17.  
* August 2015
}}
}}
</ref>
</ref>
<ref name="heise20150617">
<ref name="heise20150617">
Reiko Kaps (heise.de), 17. Juni 2015: [https://heise.de/-2714819 SSL-Zertifizierungsstelle Lets Encrypt will Mitte September 2015 öffnen]
Reiko Kaps (heise.de), 17.  
* Juni 2015: [https://heise.de/-2714819 SSL-Zertifizierungsstelle Lets Encrypt will Mitte September 2015 öffnen]
</ref>
</ref>
<ref name="beta">
<ref name="beta">
Zeile 272: Zeile 312:
</ref>
</ref>
<ref name="5Mio">
<ref name="5Mio">
Dennis Schirrmacher (heise online), 23. Juni 2016: [https://heise.de/-3247077 Fünf Millionen Zertifikate: Let's Encrypt wächst rasant]
Dennis Schirrmacher (heise online), 23.  
* Juni 2016: [https://heise.de/-3247077 Fünf Millionen Zertifikate: Let's Encrypt wächst rasant]
</ref>
</ref>
<ref name="CABForum">
<ref name="CABForum">
Zeile 288: Zeile 329:
|url=http://www.linuxfoundation.org/news-media/announcements/2016/04/let-s-encrypt-leaves-beta
|url=http://www.linuxfoundation.org/news-media/announcements/2016/04/let-s-encrypt-leaves-beta
|website=LinuxFoundation.org
|website=LinuxFoundation.org
|accessdate=17. April 2016
|accessdate=17.  
* April 2016
|archiveurl=https://web.archive.org/web/20160415173611/http://www.linuxfoundation.org/news-media/announcements/2016/04/let-s-encrypt-leaves-beta
|archiveurl=https://web.archive.org/web/20160415173611/http://www.linuxfoundation.org/news-media/announcements/2016/04/let-s-encrypt-leaves-beta
|archivedate=2016-04-15
|archivedate=2016-04-15
Zeile 303: Zeile 345:
[[Kategorie:Organisation (IT-Sicherheit)]]
[[Kategorie:Organisation (IT-Sicherheit)]]
[[Kategorie:Internet-Organisation]]
[[Kategorie:Internet-Organisation]]


= TMP 2 =
= TMP 2 =
= ACME Client Implementierungen =
= ACME Client Implementierungen =
Let’s Encrypt verwendet das ACME-Protokoll, um zu überprüfen, ob Sie einen bestimmten Domainnamen steuern und um Ihnen ein Zertifikat auszustellen.
* Um ein Let’s Encrypt-Zertifikat zu erhalten, müssen Sie eine ACME-Clientsoftware auswählen.


Let’s Encrypt verwendet das ACME-Protokoll, um zu überprüfen, ob Sie einen bestimmten Domainnamen steuern und um Ihnen ein Zertifikat auszustellen. Um ein Let’s Encrypt-Zertifikat zu erhalten, müssen Sie eine ACME-Clientsoftware auswählen.
Die folgenden ACME-Clients werden von Dritten angeboten.  
 
* Let’s Encrypt kontrolliert oder überprüft keine Clients von Drittanbietern und kann keine Garantie für deren Sicherheit oder Zuverlässigkeit abgeben.
Die folgenden ACME-Clients werden von Dritten angeboten. Let’s Encrypt kontrolliert oder überprüft keine Clients von Drittanbietern und kann keine Garantie für deren Sicherheit oder Zuverlässigkeit abgeben.


Einige ACME-Clients im Browser sind zwar verfügbar, werden hier jedoch nicht aufgeführt, da sie einen manuellen Erneuerungsworkflow fördern, der zu einer schlechten Benutzererfahrung führt und das Risiko von versäumten Erneuerungen erhöht.
Einige ACME-Clients im Browser sind zwar verfügbar, werden hier jedoch nicht aufgeführt, da sie einen manuellen Erneuerungsworkflow fördern, der zu einer schlechten Benutzererfahrung führt und das Risiko von versäumten Erneuerungen erhöht.


= Empfohlen: Certbot =
= Empfohlen: Certbot =
 
Wir empfehlen, dass die meisten Leute mit dem [https://certbot.eff.org/ Certbot] Client beginnen.  
Wir empfehlen, dass die meisten Leute mit dem [https://certbot.eff.org/ Certbot] Client beginnen. Er kann einfach ein Zertifikat für Sie erhalten oder auch bei der Installation geholfen werden, je nachdem, was Sie bevorzugen. Es ist einfach zu bedienen, funktioniert mit vielen Betriebssystemen und ist gut dokumentiert.
* Er kann einfach ein Zertifikat für Sie erhalten oder auch bei der Installation geholfen werden, je nachdem, was Sie bevorzugen.  
* Es ist einfach zu bedienen, funktioniert mit vielen Betriebssystemen und ist gut dokumentiert.


Wenn certbot nicht Ihren Anforderungen entspricht oder Sie einfach etwas anderes ausprobieren möchten, können Sie unten aus einer Vielzahl von Clients auswählen, sortiert nach der Sprache oder Umgebung, in der sie ausgeführt werden.
Wenn certbot nicht Ihren Anforderungen entspricht oder Sie einfach etwas anderes ausprobieren möchten, können Sie unten aus einer Vielzahl von Clients auswählen, sortiert nach der Sprache oder Umgebung, in der sie ausgeführt werden.


= ACMEv1 und ACMEv2 =
= ACMEv1 und ACMEv2 =
 
Let’s Encrypt unterstützt die ACMEv2 API, welche kompatibel ist mit dem [https://tools.ietf.org/html/rfc8555 finalisierten ACME Standard].  
Let’s Encrypt unterstützt die ACMEv2 API, welche kompatibel ist mit dem [https://tools.ietf.org/html/rfc8555 finalisierten ACME Standard]. Wir [https://community.letsencrypt.org/t/end-of-life-plan-for-acmev1/88430/ bauen langsam die ältere ACMEv1 API] in 2020 und 2021 ab. Wenn Sie bereits einen dieser Clients verwenden, stellen Sie sicher, dass Sie auf die neueste Version aktualisieren. Wenn der von Ihnen verwendete Client unten nicht aufgeführt ist, wenden Sie sich an die Projektbetreuer, oder wechseln Sie zu einem anderen Client.
* Wir [https://community.letsencrypt.org/t/end-of-life-plan-for-acmev1/88430/ bauen langsam die ältere ACMEv1 API] in 2020 und 2021 ab.  
* Wenn Sie bereits einen dieser Clients verwenden, stellen Sie sicher, dass Sie auf die neueste Version aktualisieren.  
* Wenn der von Ihnen verwendete Client unten nicht aufgeführt ist, wenden Sie sich an die Projektbetreuer, oder wechseln Sie zu einem anderen Client.


https://letsencrypt.org/de/docs/client-options/
https://letsencrypt.org/de/docs/client-options/


= Erste Schritte =
= Erste Schritte =
Um HTTPS auf Ihrer Website zu aktivieren, brauchen Sie ein Zertifikat (eine Datei) von einer Zertifizierungsstelle (CA).
* Let’s Encrypt ist eine CA.
* Um für Ihre Domain ein Zertifikat von Let’s Encrypt zu bekommen, müssen Sie nachweisen, dass Sie die Kontrolle über diese Domain haben.
* Mit Let’s Encrypt benutzen Sie Software, die das [https://tools.ietf.org/html/rfc8555 ACME-Protokoll] benutzt, welches typischerweise auf Ihrem Web-Host läuft.


Um HTTPS auf Ihrer Website zu aktivieren, brauchen Sie ein Zertifikat (eine Datei) von einer Zertifizierungsstelle (CA). Let’s Encrypt ist eine CA. Um für Ihre Domain ein Zertifikat von Let’s Encrypt zu bekommen, müssen Sie nachweisen, dass Sie die Kontrolle über diese Domain haben. Mit Let’s Encrypt benutzen Sie Software, die das [https://tools.ietf.org/html/rfc8555 ACME-Protokoll] benutzt, welches typischerweise auf Ihrem Web-Host läuft.
Um herauszufinden, welche Methode für Sie die richtige ist, ist es wichtig herauszufinden, ob Sie zu Ihrer Webseite [https://en.wikipedia.org/wiki/Shell_account Shell-Zugang] haben (auch bekannt als SSH-Zugang).  
 
* Wenn Sie Ihre Website durch eine Kontrollschnittstelle verwalten wie [https://cpanel.net/ cPanel], [https://www.plesk.com/ Plesk] oder [https://wordpress.org/ WordPress], dann haben Sie wahrscheinlich keinen Shell-Zugang.  
Um herauszufinden, welche Methode für Sie die richtige ist, ist es wichtig herauszufinden, ob Sie zu Ihrer Webseite [https://en.wikipedia.org/wiki/Shell_account Shell-Zugang] haben (auch bekannt als SSH-Zugang). Wenn Sie Ihre Website durch eine Kontrollschnittstelle verwalten wie [https://cpanel.net/ cPanel], [https://www.plesk.com/ Plesk] oder [https://wordpress.org/ WordPress], dann haben Sie wahrscheinlich keinen Shell-Zugang. Sicherheitshalber können Sie Ihren Dienstanbieter fragen.
* Sicherheitshalber können Sie Ihren Dienstanbieter fragen.


= Mit Shell-Zugang =
= Mit Shell-Zugang =
Wir empfehlen den meisten Leuten mit Shell-Zugang die Benutzung des ACME [https://certbot.eff.org/ Certbots].
* Er kann Zertifikate automatisch ohne Ausfallzeit erstellen und installieren.
* Er hat auch einen Expertenmodus für Leute, die keine Autokonfiguration möchten.
* Er ist einfach zu benutzen, funktioniert auf vielen Betriebssystemen und hat eine großartige Dokumentation. [https://certbot.eff.org/ Besuchen Sie die Seite von Certbot], um passende Anleitungen für Ihr Betriebssystem und ihren Server zu erhalten.


Wir empfehlen den meisten Leuten mit Shell-Zugang die Benutzung des ACME [https://certbot.eff.org/ Certbots]. Er kann Zertifikate automatisch ohne Ausfallzeit erstellen und installieren. Er hat auch einen Expertenmodus für Leute, die keine Autokonfiguration möchten. Er ist einfach zu benutzen, funktioniert auf vielen Betriebssystemen und hat eine großartige Dokumentation. [https://certbot.eff.org/ Besuchen Sie die Seite von Certbot], um passende Anleitungen für Ihr Betriebssystem und ihren Server zu erhalten.
Wenn [https://certbot.eff.org/ Certbot] nicht ihren Anforderungen entspricht, oder Sie einen anderen Client verwenden möchten, gibt es [https://letsencrypt.org/de/docs/client-options/ viele weitere ACME-Clients zur Auswahl].  
 
* Sobald Sie einen ACME-Client gewählt haben, können Sie in die dazugehörige Dokumentation verwenden.
Wenn [https://certbot.eff.org/ Certbot] nicht ihren Anforderungen entspricht, oder Sie einen anderen Client verwenden möchten, gibt es [https://letsencrypt.org/de/docs/client-options/ viele weitere ACME-Clients zur Auswahl]. Sobald Sie einen ACME-Client gewählt haben, können Sie in die dazugehörige Dokumentation verwenden.


Wenn Sie mit unterschiedlichen ACME-Clients experimentieren, benutzen Sie [https://letsencrypt.org/de/docs/staging-environment/ die Staging-Umgebung], um zu verhindern, dass die [https://letsencrypt.org/de/docs/rate-limits/ Anfragelimits] überschritten werden.
Wenn Sie mit unterschiedlichen ACME-Clients experimentieren, benutzen Sie [https://letsencrypt.org/de/docs/staging-environment/ die Staging-Umgebung], um zu verhindern, dass die [https://letsencrypt.org/de/docs/rate-limits/ Anfragelimits] überschritten werden.


= Ohne Shell-Zugriff =
= Ohne Shell-Zugriff =
Der beste Weg, Let’s Encrypt ohne Shell-Zugriff zu benutzen, ist der eingebaute Support von Ihrem Hosting-Provider.
* Wenn Ihr Hosting-Provider Let’s Encrypt Unterstützung anbietet, dann kann er in Ihrem Namen freie Zertifikate anfordern, installieren und automatisch aktuell halten.
* Bei einigen Hosting-Providern müssen Sie diese Unterstützung einschalten.
* Andere Provider machen dies automatisch für ihre Kunden.


Der beste Weg, Let’s Encrypt ohne Shell-Zugriff zu benutzen, ist der eingebaute Support von Ihrem Hosting-Provider. Wenn Ihr Hosting-Provider Let’s Encrypt Unterstützung anbietet, dann kann er in Ihrem Namen freie Zertifikate anfordern, installieren und automatisch aktuell halten. Bei einigen Hosting-Providern müssen Sie diese Unterstützung einschalten. Andere Provider machen dies automatisch für ihre Kunden.
[https://community.letsencrypt.org/t/web-hosting-who-support-lets-encrypt/6920 Überprüfen Sie unsere Liste von Hosting-Providern], um zu sehen, ob Ihrer mit dabei ist.  
* Wenn das so ist, folgen Sie der Dokumentation, um Ihr Let’s Encrypt-Zertifikat einzurichten.


[https://community.letsencrypt.org/t/web-hosting-who-support-lets-encrypt/6920 Überprüfen Sie unsere Liste von Hosting-Providern], um zu sehen, ob Ihrer mit dabei ist. Wenn das so ist, folgen Sie der Dokumentation, um Ihr Let’s Encrypt-Zertifikat einzurichten.
Wenn Ihr Hosting Provider-Let’s Encrypt nicht unterstützt, können Sie ihn kontaktieren und Unterstützung anfragen.  
* Wir tun unser Bestes, um Let’s Encrypt-Unterstützung zu ermöglichen und Provider sind oft sehr froh, wenn dieser Vorschlag von ihren Kunden kommt!


Wenn Ihr Hosting Provider-Let’s Encrypt nicht unterstützt, können Sie ihn kontaktieren und Unterstützung anfragen. Wir tun unser Bestes, um Let’s Encrypt-Unterstützung zu ermöglichen und Provider sind oft sehr froh, wenn dieser Vorschlag von ihren Kunden kommt!
Wenn Ihr Hosting-Provider Let’s Encrypt nicht integrieren möchte, aber das Hochladen von eigenen Zertifikaten unterstützt, können Sie Certbot auf Ihrem eigenen Rechner installieren und im [https://certbot.eff.org/docs/using.html#manual manuellen Modus] benutzen.  
 
* Im manuellen Modus laden Sie eine spezielle Datei auf Ihre Website, um zu beweisen, dass Sie die Kontrolle über diese haben.  
Wenn Ihr Hosting-Provider Let’s Encrypt nicht integrieren möchte, aber das Hochladen von eigenen Zertifikaten unterstützt, können Sie Certbot auf Ihrem eigenen Rechner installieren und im [https://certbot.eff.org/docs/using.html#manual manuellen Modus] benutzen. Im manuellen Modus laden Sie eine spezielle Datei auf Ihre Website, um zu beweisen, dass Sie die Kontrolle über diese haben. Certbot wird dann ein Zertifikat abrufen, welches Sie dann zu Ihrem Hosting-Provider hochladen können. Wir empfehlen diese Methode nicht, denn sie kostet viel Zeit und Sie müssen sie mehrmals im Jahr wiederholen, da Ihr Zertifikat abläuft. Für viele Benutzer ist es besser, Let’s Encrypt-Unterstützung von ihrem Hosting-Provider anzufordern oder zu einem anderen Anbieter zu wechseln.
* Certbot wird dann ein Zertifikat abrufen, welches Sie dann zu Ihrem Hosting-Provider hochladen können.  
* Wir empfehlen diese Methode nicht, denn sie kostet viel Zeit und Sie müssen sie mehrmals im Jahr wiederholen, da Ihr Zertifikat abläuft.  
* Für viele Benutzer ist es besser, Let’s Encrypt-Unterstützung von ihrem Hosting-Provider anzufordern oder zu einem anderen Anbieter zu wechseln.


= Hilfe erhalten =
= Hilfe erhalten =
Wenn Sie Fragen haben zur Auswahl eines ACME-Clients, zur Benutzung eines besonderen Clients oder eine andere Frage bezüglich Let’s Encrypt haben, können Sie gerne unser [https://community.letsencrypt.org/ hilfreiches Community Forum] besuchen.
Wenn Sie Fragen haben zur Auswahl eines ACME-Clients, zur Benutzung eines besonderen Clients oder eine andere Frage bezüglich Let’s Encrypt haben, können Sie gerne unser [https://community.letsencrypt.org/ hilfreiches Community Forum] besuchen.


= Wie es funktioniert =
= Wie es funktioniert =
 
Das Ziel von Let’s&nbsp;Encrypt und des [https://tools.ietf.org/html/rfc8555 ACME-Protokolls] besteht darin, die Einrichtung eines HTTPS-Servers zu ermöglichen, der automatisch ein vertrauenswürdiges Browserzertifikat ohne menschliches Eingreifen erhält.  
Das Ziel von Let’s&nbsp;Encrypt und des [https://tools.ietf.org/html/rfc8555 ACME-Protokolls] besteht darin, die Einrichtung eines HTTPS-Servers zu ermöglichen, der automatisch ein vertrauenswürdiges Browserzertifikat ohne menschliches Eingreifen erhält. Dies wird durch Ausführen eines Zertifikatsverwaltungsagenten auf dem Webserver erreicht.
* Dies wird durch Ausführen eines Zertifikatsverwaltungsagenten auf dem Webserver erreicht.


Um zu verstehen, wie die Technologie funktioniert, gehen wir die Einrichtung von <tt>https://example.com/</tt> mit einem Zertifikatsverwaltungsagenten durch, der Let’s&nbsp;Encrypt unterstützt.
Um zu verstehen, wie die Technologie funktioniert, gehen wir die Einrichtung von <tt>https://example.com/</tt> mit einem Zertifikatsverwaltungsagenten durch, der Let’s&nbsp;Encrypt unterstützt.


Dieser Prozess umfasst zwei Schritte. Zunächst weist der Agent der Zertifizierungsstelle nach, dass der Webserver eine Domain kontrolliert. Anschließend kann der Agent Zertifikate für diese Domain anfordern, erneuern und widerrufen.
Dieser Prozess umfasst zwei Schritte.  
* Zunächst weist der Agent der Zertifizierungsstelle nach, dass der Webserver eine Domain kontrolliert.  
* Anschließend kann der Agent Zertifikate für diese Domain anfordern, erneuern und widerrufen.


== Domain-Validierung ==
== Domain-Validierung ==
Let’s&nbsp;Encrypt identifiziert den Serveradministrator anhand des öffentlichen Schlüssels.
* Wenn die Agentensoftware zum ersten Mal mit Let’s&nbsp;Encrypt interagiert, generiert sie ein neues Schlüsselpaar und weist der Let’s&nbsp;Encrypt-Zertifizierungsstelle nach, dass der Server eine oder mehrere Domain kontrolliert.
* Dies ist vergleichbar mit dem traditionellen CA-Verfahren, bei dem ein Konto erstellt und diesem Konto Domains hinzugefügt werden.


Let’s&nbsp;Encrypt identifiziert den Serveradministrator anhand des öffentlichen Schlüssels. Wenn die Agentensoftware zum ersten Mal mit Let’s&nbsp;Encrypt interagiert, generiert sie ein neues Schlüsselpaar und weist der Let’s&nbsp;Encrypt-Zertifizierungsstelle nach, dass der Server eine oder mehrere Domain kontrolliert. Dies ist vergleichbar mit dem traditionellen CA-Verfahren, bei dem ein Konto erstellt und diesem Konto Domains hinzugefügt werden.
Um den Prozess zu starten, fragt der Agent die Let’s Encrypt-Zertifizierungsstelle, was zu tun ist, um zu beweisen, dass sie <tt>example.com</tt> kontrolliert.  
 
* Die Let’s Encrypt-Zertifizierungsstelle prüft den angeforderten Domainnamen und gibt eine oder mehrere Herausforderungen heraus.  
Um den Prozess zu starten, fragt der Agent die Let’s Encrypt-Zertifizierungsstelle, was zu tun ist, um zu beweisen, dass sie <tt>example.com</tt> kontrolliert. Die Let’s Encrypt-Zertifizierungsstelle prüft den angeforderten Domainnamen und gibt eine oder mehrere Herausforderungen heraus. Es gibt verschiedene Möglichkeiten, mit denen der Agent die Kontrolle über die Domain nachweisen kann. Beispielsweise kann die Zertifizierungsstelle dem Agenten die Wahl zwischen folgenden Optionen geben:* Bereitstellung eines DNS-Eintrags unter <tt>example.com</tt> oder  
* Es gibt verschiedene Möglichkeiten, mit denen der Agent die Kontrolle über die Domain nachweisen kann.  
* Beispielsweise kann die Zertifizierungsstelle dem Agenten die Wahl zwischen folgenden Optionen geben:* Bereitstellung eines DNS-Eintrags unter <tt>example.com</tt> oder  
* Bereitstellung einer HTTP-Ressource unter einer bekannten URI unter <tt>http://example.com/</tt>  
* Bereitstellung einer HTTP-Ressource unter einer bekannten URI unter <tt>http://example.com/</tt>  


Neben den Herausforderungen bietet die Let’s Encrypt-Zertifizierungsstelle auch eine Nonce, die der Agent mit seinem privaten Schlüsselpaar signieren muss, um zu beweisen, dass er das Schlüsselpaar kontrolliert.
Neben den Herausforderungen bietet die Let’s Encrypt-Zertifizierungsstelle auch eine Nonce, die der Agent mit seinem privaten Schlüsselpaar signieren muss, um zu beweisen, dass er das Schlüsselpaar kontrolliert.
Zeile 376: Zeile 438:
[[Image:Bild1.png|top|alt="Aufforderung zur Validierung von example.com stellen"]]
[[Image:Bild1.png|top|alt="Aufforderung zur Validierung von example.com stellen"]]


Die Agentensoftware erfüllt eine der gestellten Herausforderungen. Nehmen wir an, sie ist in der Lage, die zweite Aufgabe oben auszuführen: Sie erstellt eine Datei in einem angegebenen Pfad auf der Website <tt>http://example.com</tt>. Der Agent signiert die bereitgestellte Nonce außerdem mit seinem privaten Schlüssel. Nachdem der Agent diese Schritte ausgeführt hat, benachrichtigt er die Zertifizierungsstelle, dass sie zur Validierung bereit ist.
Die Agentensoftware erfüllt eine der gestellten Herausforderungen.  
* Nehmen wir an, sie ist in der Lage, die zweite Aufgabe oben auszuführen: Sie erstellt eine Datei in einem angegebenen Pfad auf der Website <tt>http://example.com</tt>.  
* Der Agent signiert die bereitgestellte Nonce außerdem mit seinem privaten Schlüssel.  
* Nachdem der Agent diese Schritte ausgeführt hat, benachrichtigt er die Zertifizierungsstelle, dass sie zur Validierung bereit ist.


Dann ist es die Aufgabe der Zertifizierungsstelle, zu überprüfen, ob die Aufforderungen erfüllt sind. Die Zertifizierungsstelle überprüft die Signatur auf der Nonce und versucht, die Datei vom Webserver herunterzuladen und sicherzustellen, dass sie den erwarteten Inhalt hat.
Dann ist es die Aufgabe der Zertifizierungsstelle, zu überprüfen, ob die Aufforderungen erfüllt sind.  
* Die Zertifizierungsstelle überprüft die Signatur auf der Nonce und versucht, die Datei vom Webserver herunterzuladen und sicherzustellen, dass sie den erwarteten Inhalt hat.


[[Image:Bild2.png|top|alt="Erfordert Autorisierung um für example.com zu agieren"]]
[[Image:Bild2.png|top|alt="Erfordert Autorisierung um für example.com zu agieren"]]


Wenn die Signatur über die Nonce gültig ist und die Herausforderungen ausgecheckt werden, ist der durch den öffentlichen Schlüssel identifizierte Agent berechtigt, die Zertifikatsverwaltung für <tt>example.com</tt> durchzuführen. Wir nennen das Schlüsselpaar, dass der Agent ein “autorisiertes Schlüsselpaar” für <tt>example.com</tt> verwendet hat.
Wenn die Signatur über die Nonce gültig ist und die Herausforderungen ausgecheckt werden, ist der durch den öffentlichen Schlüssel identifizierte Agent berechtigt, die Zertifikatsverwaltung für <tt>example.com</tt> durchzuführen.  
* Wir nennen das Schlüsselpaar, dass der Agent ein “autorisiertes Schlüsselpaar” für <tt>example.com</tt> verwendet hat.


== Zertifikatausstellung und Widerruf ==
== Zertifikatausstellung und Widerruf ==
Wenn der Agent über ein autorisiertes Schlüsselpaar verfügt, ist das Anfordern, Erneuern und Sperren von Zertifikaten ganz einfach: Senden Sie einfach Zertifikatsverwaltungsnachrichten und signieren Sie sie mit dem autorisierten Schlüsselpaar.
Wenn der Agent über ein autorisiertes Schlüsselpaar verfügt, ist das Anfordern, Erneuern und Sperren von Zertifikaten ganz einfach: Senden Sie einfach Zertifikatsverwaltungsnachrichten und signieren Sie sie mit dem autorisierten Schlüsselpaar.


Um ein Zertifikat für die Domain zu erhalten, erstellt der Agent eine PKCS#10-Anforderung [https://tools.ietf.org/html/rfc2986 Zertifikatsignierungsanforderung], in der die Let’s&nbsp;Encrypt-Zertifizierungsstelle aufgefordert wird, ein Zertifikat für <tt>example.com</tt> mit einem angegebenen öffentlichen Schlüssel auszustellen. Wie üblich enthält der CSR eine Signatur des privaten Schlüssels, der dem öffentlichen Schlüssel in dem CSR entspricht. Der Agent signiert außerdem die gesamte CSR mit dem autorisierten Schlüssel für <tt>example.com</tt>, damit die Let’s&nbsp;Encrypt-Zertifizierungsstelle weiß, dass sie autorisiert ist.
Um ein Zertifikat für die Domain zu erhalten, erstellt der Agent eine PKCS#10-Anforderung [https://tools.ietf.org/html/rfc2986 Zertifikatsignierungsanforderung], in der die Let’s&nbsp;Encrypt-Zertifizierungsstelle aufgefordert wird, ein Zertifikat für <tt>example.com</tt> mit einem angegebenen öffentlichen Schlüssel auszustellen.  
* Wie üblich enthält der CSR eine Signatur des privaten Schlüssels, der dem öffentlichen Schlüssel in dem CSR entspricht.  
* Der Agent signiert außerdem die gesamte CSR mit dem autorisierten Schlüssel für <tt>example.com</tt>, damit die Let’s&nbsp;Encrypt-Zertifizierungsstelle weiß, dass sie autorisiert ist.


Wenn die Let’s&nbsp;Encrypt-Zertifizierungsstelle die Anforderung erhält, werden beide Signaturen überprüft. Wenn alles gut aussieht, wird ein Zertifikat für <tt>example.com</tt> mit dem öffentlichen Schlüssel aus dem CSR ausgestellt und an den Agenten zurückgegeben.
Wenn die Let’s&nbsp;Encrypt-Zertifizierungsstelle die Anforderung erhält, werden beide Signaturen überprüft.  
* Wenn alles gut aussieht, wird ein Zertifikat für <tt>example.com</tt> mit dem öffentlichen Schlüssel aus dem CSR ausgestellt und an den Agenten zurückgegeben.


[[Image:Bild3.png|top|alt="Anfordern eines Zertifikats für example.com"]]
[[Image:Bild3.png|top|alt="Anfordern eines Zertifikats für example.com"]]


Der Widerruf funktioniert auf ähnliche Weise. Der Agent unterzeichnet eine Sperranforderung mit dem für <tt>example.com</tt> autorisierten Schlüsselpaar, und die Let’s&nbsp;Encrypt-Zertifizierungsstelle überprüft, ob die Anforderung autorisiert ist. In diesem Fall werden Sperrinformationen in den normalen Sperrkanälen (z.B. OCSP) veröffentlicht, sodass vertrauende Parteien wie Browser wissen können, dass sie das widerrufene Zertifikat nicht akzeptieren sollten.
Der Widerruf funktioniert auf ähnliche Weise.  
* Der Agent unterzeichnet eine Sperranforderung mit dem für <tt>example.com</tt> autorisierten Schlüsselpaar, und die Let’s&nbsp;Encrypt-Zertifizierungsstelle überprüft, ob die Anforderung autorisiert ist.  
* In diesem Fall werden Sperrinformationen in den normalen Sperrkanälen (z.B.  
* OCSP) veröffentlicht, sodass vertrauende Parteien wie Browser wissen können, dass sie das widerrufene Zertifikat nicht akzeptieren sollten.


[[Image:Bild4.png|top|alt="Anfrage zum Widerruf eines Zertifikats für example.com"]]
[[Image:Bild4.png|top|Anfrage zum Widerruf eines Zertifikats für example.com

Version vom 31. Mai 2022, 09:39 Uhr

topic kurze Beschreibung

Beschreibung

Installation

Syntax

Parameter

Optionen

Umgebungsvariablen

Exit-Status

Konfiguration

Dateien

Anwendungen

Sicherheit

Dokumentation

RFC

Man-Pages

Info-Pages

Siehe auch

Links

Projekt-Homepage

Weblinks

Einzelnachweise


Testfragen

Testfrage 1

Antwort1

Testfrage 2

Antwort2

Testfrage 3

Antwort3

Testfrage 4

Antwort4

Testfrage 5

Antwort5

TMP 1

Vorlage:Lang (deutsch „Lasst uns verschlüsseln“) ist eine Zertifizierungsstelle, die Ende 2015 in Betrieb gegangen ist und kostenlose X.509-Zertifikate für Transport Layer Security (TLS) anbietet.

  • Die Zertifikate haben eine Gültigkeit von jeweils 90 Tagen und können manuell oder automatisch erneuert werden.
  • Dabei ersetzt ein automatisierter Prozess die bisher gängigen komplexen händischen Vorgänge bei der Erstellung, Validierung, Signierung, Einrichtung und Erneuerung von Zertifikaten für verschlüsselte Websites.[1][2]

Überblick

Ziel des Projekts ist es, verschlüsselte Verbindungen im World Wide Web zum Normalfall zu machen.

  • Indem unter anderem Zahlung, Webserverkonfiguration, Validierungs-E-Mails und die Sorge um abgelaufene Zertifikate überflüssig werden, sollen Aufwand für Einrichtung und Pflege von TLS-Verschlüsselung deutlich gesenkt werden.[3] Auf einem Linux-Webserver soll das Ausführen von nur zwei Befehlen genügen, um binnen 20 bis 30 Sekunden HTTPS-Verschlüsselung einzurichten, Zertifikate anzufordern und zu installieren.[4][5]

Bei aktuellen Bestrebungen von großen Webbrowser-Projekten, unverschlüsseltes HTTP als überholt zu erklären und zukünftig davor zu warnen oder die Unterstützung einzuschränken, wird unter anderem auf die Verfügbarkeit von Let’s Encrypt gesetzt.[6][7] Dem Projekt wird das Potenzial zugesprochen, die standardmäßige Verschlüsselung des gesamten Web zu erreichen.[8]

Um sowohl die eigene Vertrauenswürdigkeit zu erhöhen, als auch gegen Angriffe und Manipulationsversuche zu schützen, soll auf größtmögliche Transparenz gesetzt werden.

Das Projekt erhielt den FSF Award 2019.

Es werden TLS-Zertifikate mit Domain Validation (DV) ausgestellt.

  • Bewusst nicht angeboten werden TLS-Zertifikate mit einer Prüfung auf Organization Validation (OV) und Extended Validation (EV),[10] da deren Antragsprozess per Definition nicht vollautomatisiert möglich ist und der Zweck von Let’s Encrypt ist, eine niederschwellige unmittelbare Ausstellung von TLS-Zertifikaten zu ermöglichen.

Beteiligte

Let’s Encrypt ist ein von der gemeinnützigen Internet Security Research Group (ISRG) angebotener Dienst.

Technik

Let’s Encrypt besitzt ein RSA-Stammzertifikat, das in einem Hardware-Sicherheitsmodul verwahrt und nicht direkt verwendet wird.

  • Es soll im dritten Quartal 2019 durch ein ECDSA-Stammzertifikat ergänzt werden[12].
  • Damit werden mehrere Zwischenzertifikate signiert, welche durch die Zertifizierungsstelle IdenTrust gegengezeichnet werden.[13] Eines davon dient dann zur Signierung der ausgestellten Zertifikate, die anderen als Ersatz bei Problemen mit dem ersten.
  • Durch die IdenTrust-Signatur können die ausgestellten Zertifikate in gebräuchlichen Webbrowsern über die vorinstallierten Stammzertifizierungsstellen geprüft werden.
  • So werden Let’s-Encrypt-Zertifikate auf Client-Seite von Anfang an in der Regel ohne weiteres akzeptiert.[14] Seit Ende Juli 2018 ist das Stammzertifikat von Let's Encrypt in allen wichtigen Root-Programmen vertreten.[15]

Protokoll

Zur Automatisierung der Zertifizierung nutzt Let’s Encrypt das Challenge-Response-Verfahren Automatic Certificate Management Environment (ACME).

  • Dabei werden verschiedene Anfragen entweder an Unterseiten am Webserver oder direkt DNS-Anfragen an die zu zertifizierende Domain gestellt.
  • In beiden Fällen wird ein vorher von Let’s Encrypt erstellter Token entweder auf einer speziellen Unterseite am Web-Server oder als TXT Resource Record im DNS der betreffenden Domain öffentlich abgelegt und von Let’s-Encrypt-Servern in Folge abgefragt.
  • Anhand der Antwort mit den Token wird sichergestellt, dass der Antragsteller den Web-Server oder direkt den Nameserver und die damit verknüpfte Domain kontrolliert ().

Auf dem Server-System müssen diese Anfragen korrekt beantwortet werden.

  • Dazu bietet das Protokoll verschiedene Möglichkeiten.
  • Bei einer wird dazu von der ACME-Client-Software ein besonders konfigurierter TLS-Server eingerichtet, der mittels Server Name Indication auf besondere Anfragen der Zertifizierungsstelle antwortet (Domain-Validierung mittels Server Name Indication, DVSNI).
  • Dieses Verfahren wird allerdings nur für eine erste Zertifikatsausstellung für eine Domain akzeptiert (sogenanntes „trust on first use“, TOFU – Vertrauen bei erster Benutzung).
  • Danach kommt die alternative Validierung über ein bestehendes Zertifikat zum Einsatz.
  • Bei Verlust der Kontrolle über ein bereits ausgestelltes Zertifikat muss daher ein Zertifikat von einem Drittanbieter erworben werden, um wieder ein Let’s-Encrypt-Zertifikat zu erhalten.

Die Validierungsverfahren werden mehrmals über verschiedene Netzwerkpfade durchgeführt.

  • Zur Erschwerung von DNS-Spoofing ist die Prüfung von DNS-Einträgen von mehreren geographisch verteilten Standpunkten aus vorgesehen.

Bei ACME-Interaktionen werden JSON-Dokumente über HTTPS-Verbindungen ausgetauscht.[16] Das Protokoll wurde im März 2019 von der Internet Engineering Task Force als Request for Comments im Status eines vorgeschlagenen Internetstandards veröffentlicht.[17]

Server-Implementierung

Domainauswahldialog

Die Zertifizierungsstelle besteht im Wesentlichen aus einer in Go geschriebenen Software namens Boulder, die die Server-Seite des ACME-Protokolls implementiert.

Für verschiedene Linux-Distributionen existieren Pakete, welche die Cert-Updates automatisch durchführen, so für Debian das package Certbot.[19]

Clients

Durch den offenen Standard ACME sind mittlerweile über 40 unterschiedliche Clients entwickelt worden.[20][21]

Im Rahmen des Projekts wurde eine Apache-lizenzierte[22] Python-Referenzimplementierung namens certbot (früher letsencrypt) entwickelt. Über diese wird am Webserver eines Antragstellers das Zertifikat angefordert, der Domain-Validierungsprozess durchgeführt, das Zertifikat installiert, die HTTPS-Verschlüsselung im Webserver eingerichtet und später das Zertifikat regelmäßig erneuert.[23][4] Nach der Installation und Zustimmung zu einem Benutzervertrag genügt die Ausführung des reinen Befehls, um ein gültiges Zertifikat installiert zu bekommen.

Daneben gibt es mit acmetool[25] einen in Go geschriebenen mit vor-kompilierten, statischen Programmdateien Client.

  • Die Seite Get HTTPS for free![26] validiert ein Zertifikat per JavaScript im Webbrowser, wobei der Webadmin Anleitungen bekommt für verschiedene manuell auszuführende Schritte. Caddy[27] ist ein HTTP/2-kompatibler Webserver, der vollautomatisch ein Zertifikat erzeugt und Inhalte per HTTPS ausliefert.
  • Ein weiterer weit verbreiteter Client ist acme-tiny, ein in Python geschriebener Client, er ist weniger als 200 Zeilen lang und soll somit von jedem Nutzer vor der Verwendung selbst gelesen werden.[28]

Geschichte und Zeitplan

Die Wurzeln des Projektes liegen in einem von der Electronic Frontier Foundation zusammen mit der University of Michigan betriebenen Projekt und einem unabhängigen Projekt von Mozilla, die in Let’s Encrypt zusammengeführt wurden. 2014 wurde die Trägerorganisation, die ISRG, gegründet.

  • Der Start von Let’s Encrypt wurde am 18.
  • November 2014 bekannt gemacht.[29]

Am 28.

  • Januar 2015 wurde das ACME-Protokoll erstmals bei der IETF zur Standardisierung eingereicht.[30]

Am 9.

  • April 2015 verkündeten die ISRG und die Linux Foundation ihre Zusammenarbeit.[11]

Anfang Juni wurden die Stamm- und Zwischenzertifikate erzeugt.[14] Am 16.

  • Juni wurde der endgültige Zeitplan für die Dienstaufnahme bekanntgegeben, wonach die Ausstellung des ersten Zertifikats für die Woche des 27.
  • Juli vorgesehen war, dem eine Phase eingeschränkter Ausstellung folgen sollte, um die Sicherheit und Skalierbarkeit zu erproben.[31] Am 7.
  • August wurde der Zeitplan geändert auf die erste Zertifikatsausstellung in der Woche des 7.
  • Septembers und allgemeine Verfügbarkeit in der Woche des 16.
  • November.[32] Ab 3.
  • Dezember 2015 befand sich das Projekt in der offenen Betatest-Phase und kann seither von allen Interessierten genutzt werden.[33]

Am 8.

  • März 2016 wurde bekannt gegeben, dass schon über eine Million Zertifikate ausgestellt wurden.[34]

Eineinhalb Monate später waren es über zwei Millionen, weitere eineinhalb Monate später über fünf Millionen Zertifikate ausgestellt.

  • Ein nennenswerter Teil des Zuwachses geht auf Kooperationen mit Webhosting-Anbietern wie zum Beispiel WordPress.com (über 1 Million zusätzliche Sites) zurück, die für betreute Websites TLS-Verschlüsselung mit Let’s-Encrypt-Zertifikaten anbieten beziehungsweise diese eigenständig umgestellt haben.
  • Seit der Öffnung des Betriebs erhöhte sich bis zum 22.
  • Juni 2016 nach Messung von Browserhersteller Mozilla der weltweite Anteil verschlüsselter Websites von 39,5 auf 45 Prozent.[35]

Am 17.

  • März 2016 gab das Projekt bekannt, dem CA/Browser Forum beigetreten zu sein,[36] das die Nutzung von X.509-v.3-Zertifikaten für TLS regelt.

Am 12.

  • April 2016 ging das Projekt aus der offenen Betaphase in den offiziellen Regelbetrieb über.[37]

Seit dem 13.

  • März 2018 bietet Let’s Encrypt auch sogenannte Wildcard-Zertifikate an.[38]

Am 27.

Siehe auch

Weblinks

Vorlage:Commonscat

Quellen

  1. Liam Tung (ZDNet), 19.
  2. 4,0 4,1 4,2 4,3 Fabian Scherschel (heise.de), 19.
  3. Rob Marvin (SD Times), 19.
  4. Richard Barnes (Mozilla), 30.
  5. The Chromium Projects – Marking HTTP As Non-Secure
  6. Glyn Moody, 25.
  7. Zeljka Zorz (Help Net Security), 6.
  8. Steven J.
  9. 11,0 11,1 Sean Michael Kerner (eweek.com), 9.
  10. Reiko Kaps (heise.de), 17.
  11. 14,0 14,1 Reiko Kaps (heise.de), 5.
  12. 16,0 16,1 Chris Brook (Threatpost), 18.
  13. Vorlage:RFC-Internet
  14. github.com
  15. packages.debian.org
  16. github.com
  17. James Sanders (TechRepublic), 25.
  18. ITP: letsencrypt – Let's Encrypt client that can update Apache configurations
  19. Vorlage:Cite web
  20. Vorlage:Cite web
  21. Vorlage:Cite web
  22. Dennis Schirrmacher (heise online), 23.
  23. Vorlage:Cite web
  24. https://www.heise.de/security/meldung/Erfolgsgeschichte-Let-s-Encrypt-stellt-einmilliardstes-Zertifikat-aus-4673299.html
  25. https://letsencrypt.org/2020/02/27/one-billion-certs.html
  26. https://www.heise.de/security/meldung/Achtung-Let-s-Encrypt-macht-heute-nacht-3-Millionen-Zertifikate-ungueltig-4676017.html

TMP 2

ACME Client Implementierungen

Let’s Encrypt verwendet das ACME-Protokoll, um zu überprüfen, ob Sie einen bestimmten Domainnamen steuern und um Ihnen ein Zertifikat auszustellen.

  • Um ein Let’s Encrypt-Zertifikat zu erhalten, müssen Sie eine ACME-Clientsoftware auswählen.

Die folgenden ACME-Clients werden von Dritten angeboten.

  • Let’s Encrypt kontrolliert oder überprüft keine Clients von Drittanbietern und kann keine Garantie für deren Sicherheit oder Zuverlässigkeit abgeben.

Einige ACME-Clients im Browser sind zwar verfügbar, werden hier jedoch nicht aufgeführt, da sie einen manuellen Erneuerungsworkflow fördern, der zu einer schlechten Benutzererfahrung führt und das Risiko von versäumten Erneuerungen erhöht.

Empfohlen: Certbot

Wir empfehlen, dass die meisten Leute mit dem Certbot Client beginnen.

  • Er kann einfach ein Zertifikat für Sie erhalten oder auch bei der Installation geholfen werden, je nachdem, was Sie bevorzugen.
  • Es ist einfach zu bedienen, funktioniert mit vielen Betriebssystemen und ist gut dokumentiert.

Wenn certbot nicht Ihren Anforderungen entspricht oder Sie einfach etwas anderes ausprobieren möchten, können Sie unten aus einer Vielzahl von Clients auswählen, sortiert nach der Sprache oder Umgebung, in der sie ausgeführt werden.

ACMEv1 und ACMEv2

Let’s Encrypt unterstützt die ACMEv2 API, welche kompatibel ist mit dem finalisierten ACME Standard.

  • Wir bauen langsam die ältere ACMEv1 API in 2020 und 2021 ab.
  • Wenn Sie bereits einen dieser Clients verwenden, stellen Sie sicher, dass Sie auf die neueste Version aktualisieren.
  • Wenn der von Ihnen verwendete Client unten nicht aufgeführt ist, wenden Sie sich an die Projektbetreuer, oder wechseln Sie zu einem anderen Client.

https://letsencrypt.org/de/docs/client-options/

Erste Schritte

Um HTTPS auf Ihrer Website zu aktivieren, brauchen Sie ein Zertifikat (eine Datei) von einer Zertifizierungsstelle (CA).

  • Let’s Encrypt ist eine CA.
  • Um für Ihre Domain ein Zertifikat von Let’s Encrypt zu bekommen, müssen Sie nachweisen, dass Sie die Kontrolle über diese Domain haben.
  • Mit Let’s Encrypt benutzen Sie Software, die das ACME-Protokoll benutzt, welches typischerweise auf Ihrem Web-Host läuft.

Um herauszufinden, welche Methode für Sie die richtige ist, ist es wichtig herauszufinden, ob Sie zu Ihrer Webseite Shell-Zugang haben (auch bekannt als SSH-Zugang).

  • Wenn Sie Ihre Website durch eine Kontrollschnittstelle verwalten wie cPanel, Plesk oder WordPress, dann haben Sie wahrscheinlich keinen Shell-Zugang.
  • Sicherheitshalber können Sie Ihren Dienstanbieter fragen.

Mit Shell-Zugang

Wir empfehlen den meisten Leuten mit Shell-Zugang die Benutzung des ACME Certbots.

  • Er kann Zertifikate automatisch ohne Ausfallzeit erstellen und installieren.
  • Er hat auch einen Expertenmodus für Leute, die keine Autokonfiguration möchten.
  • Er ist einfach zu benutzen, funktioniert auf vielen Betriebssystemen und hat eine großartige Dokumentation. Besuchen Sie die Seite von Certbot, um passende Anleitungen für Ihr Betriebssystem und ihren Server zu erhalten.

Wenn Certbot nicht ihren Anforderungen entspricht, oder Sie einen anderen Client verwenden möchten, gibt es viele weitere ACME-Clients zur Auswahl.

  • Sobald Sie einen ACME-Client gewählt haben, können Sie in die dazugehörige Dokumentation verwenden.

Wenn Sie mit unterschiedlichen ACME-Clients experimentieren, benutzen Sie die Staging-Umgebung, um zu verhindern, dass die Anfragelimits überschritten werden.

Ohne Shell-Zugriff

Der beste Weg, Let’s Encrypt ohne Shell-Zugriff zu benutzen, ist der eingebaute Support von Ihrem Hosting-Provider.

  • Wenn Ihr Hosting-Provider Let’s Encrypt Unterstützung anbietet, dann kann er in Ihrem Namen freie Zertifikate anfordern, installieren und automatisch aktuell halten.
  • Bei einigen Hosting-Providern müssen Sie diese Unterstützung einschalten.
  • Andere Provider machen dies automatisch für ihre Kunden.

Überprüfen Sie unsere Liste von Hosting-Providern, um zu sehen, ob Ihrer mit dabei ist.

  • Wenn das so ist, folgen Sie der Dokumentation, um Ihr Let’s Encrypt-Zertifikat einzurichten.

Wenn Ihr Hosting Provider-Let’s Encrypt nicht unterstützt, können Sie ihn kontaktieren und Unterstützung anfragen.

  • Wir tun unser Bestes, um Let’s Encrypt-Unterstützung zu ermöglichen und Provider sind oft sehr froh, wenn dieser Vorschlag von ihren Kunden kommt!

Wenn Ihr Hosting-Provider Let’s Encrypt nicht integrieren möchte, aber das Hochladen von eigenen Zertifikaten unterstützt, können Sie Certbot auf Ihrem eigenen Rechner installieren und im manuellen Modus benutzen.

  • Im manuellen Modus laden Sie eine spezielle Datei auf Ihre Website, um zu beweisen, dass Sie die Kontrolle über diese haben.
  • Certbot wird dann ein Zertifikat abrufen, welches Sie dann zu Ihrem Hosting-Provider hochladen können.
  • Wir empfehlen diese Methode nicht, denn sie kostet viel Zeit und Sie müssen sie mehrmals im Jahr wiederholen, da Ihr Zertifikat abläuft.
  • Für viele Benutzer ist es besser, Let’s Encrypt-Unterstützung von ihrem Hosting-Provider anzufordern oder zu einem anderen Anbieter zu wechseln.

Hilfe erhalten

Wenn Sie Fragen haben zur Auswahl eines ACME-Clients, zur Benutzung eines besonderen Clients oder eine andere Frage bezüglich Let’s Encrypt haben, können Sie gerne unser hilfreiches Community Forum besuchen.

Wie es funktioniert

Das Ziel von Let’s Encrypt und des ACME-Protokolls besteht darin, die Einrichtung eines HTTPS-Servers zu ermöglichen, der automatisch ein vertrauenswürdiges Browserzertifikat ohne menschliches Eingreifen erhält.

  • Dies wird durch Ausführen eines Zertifikatsverwaltungsagenten auf dem Webserver erreicht.

Um zu verstehen, wie die Technologie funktioniert, gehen wir die Einrichtung von https://example.com/ mit einem Zertifikatsverwaltungsagenten durch, der Let’s Encrypt unterstützt.

Dieser Prozess umfasst zwei Schritte.

  • Zunächst weist der Agent der Zertifizierungsstelle nach, dass der Webserver eine Domain kontrolliert.
  • Anschließend kann der Agent Zertifikate für diese Domain anfordern, erneuern und widerrufen.

Domain-Validierung

Let’s Encrypt identifiziert den Serveradministrator anhand des öffentlichen Schlüssels.

  • Wenn die Agentensoftware zum ersten Mal mit Let’s Encrypt interagiert, generiert sie ein neues Schlüsselpaar und weist der Let’s Encrypt-Zertifizierungsstelle nach, dass der Server eine oder mehrere Domain kontrolliert.
  • Dies ist vergleichbar mit dem traditionellen CA-Verfahren, bei dem ein Konto erstellt und diesem Konto Domains hinzugefügt werden.

Um den Prozess zu starten, fragt der Agent die Let’s Encrypt-Zertifizierungsstelle, was zu tun ist, um zu beweisen, dass sie example.com kontrolliert.

  • Die Let’s Encrypt-Zertifizierungsstelle prüft den angeforderten Domainnamen und gibt eine oder mehrere Herausforderungen heraus.
  • Es gibt verschiedene Möglichkeiten, mit denen der Agent die Kontrolle über die Domain nachweisen kann.
  • Beispielsweise kann die Zertifizierungsstelle dem Agenten die Wahl zwischen folgenden Optionen geben:* Bereitstellung eines DNS-Eintrags unter example.com oder
  • Bereitstellung einer HTTP-Ressource unter einer bekannten URI unter http://example.com/

Neben den Herausforderungen bietet die Let’s Encrypt-Zertifizierungsstelle auch eine Nonce, die der Agent mit seinem privaten Schlüsselpaar signieren muss, um zu beweisen, dass er das Schlüsselpaar kontrolliert.

"Aufforderung zur Validierung von example.com stellen"

Die Agentensoftware erfüllt eine der gestellten Herausforderungen.

  • Nehmen wir an, sie ist in der Lage, die zweite Aufgabe oben auszuführen: Sie erstellt eine Datei in einem angegebenen Pfad auf der Website http://example.com.
  • Der Agent signiert die bereitgestellte Nonce außerdem mit seinem privaten Schlüssel.
  • Nachdem der Agent diese Schritte ausgeführt hat, benachrichtigt er die Zertifizierungsstelle, dass sie zur Validierung bereit ist.

Dann ist es die Aufgabe der Zertifizierungsstelle, zu überprüfen, ob die Aufforderungen erfüllt sind.

  • Die Zertifizierungsstelle überprüft die Signatur auf der Nonce und versucht, die Datei vom Webserver herunterzuladen und sicherzustellen, dass sie den erwarteten Inhalt hat.

"Erfordert Autorisierung um für example.com zu agieren"

Wenn die Signatur über die Nonce gültig ist und die Herausforderungen ausgecheckt werden, ist der durch den öffentlichen Schlüssel identifizierte Agent berechtigt, die Zertifikatsverwaltung für example.com durchzuführen.

  • Wir nennen das Schlüsselpaar, dass der Agent ein “autorisiertes Schlüsselpaar” für example.com verwendet hat.

Zertifikatausstellung und Widerruf

Wenn der Agent über ein autorisiertes Schlüsselpaar verfügt, ist das Anfordern, Erneuern und Sperren von Zertifikaten ganz einfach: Senden Sie einfach Zertifikatsverwaltungsnachrichten und signieren Sie sie mit dem autorisierten Schlüsselpaar.

Um ein Zertifikat für die Domain zu erhalten, erstellt der Agent eine PKCS#10-Anforderung Zertifikatsignierungsanforderung, in der die Let’s Encrypt-Zertifizierungsstelle aufgefordert wird, ein Zertifikat für example.com mit einem angegebenen öffentlichen Schlüssel auszustellen.

  • Wie üblich enthält der CSR eine Signatur des privaten Schlüssels, der dem öffentlichen Schlüssel in dem CSR entspricht.
  • Der Agent signiert außerdem die gesamte CSR mit dem autorisierten Schlüssel für example.com, damit die Let’s Encrypt-Zertifizierungsstelle weiß, dass sie autorisiert ist.

Wenn die Let’s Encrypt-Zertifizierungsstelle die Anforderung erhält, werden beide Signaturen überprüft.

  • Wenn alles gut aussieht, wird ein Zertifikat für example.com mit dem öffentlichen Schlüssel aus dem CSR ausgestellt und an den Agenten zurückgegeben.

"Anfordern eines Zertifikats für example.com"

Der Widerruf funktioniert auf ähnliche Weise.

  • Der Agent unterzeichnet eine Sperranforderung mit dem für example.com autorisierten Schlüsselpaar, und die Let’s Encrypt-Zertifizierungsstelle überprüft, ob die Anforderung autorisiert ist.
  • In diesem Fall werden Sperrinformationen in den normalen Sperrkanälen (z.B.
  • OCSP) veröffentlicht, sodass vertrauende Parteien wie Browser wissen können, dass sie das widerrufene Zertifikat nicht akzeptieren sollten.

[[Image:Bild4.png|top|Anfrage zum Widerruf eines Zertifikats für example.com