Blogs

Letsencrypt schickt sich an, den Markt der Zertifizierungsinstanzen aufzumischen (zumindest in “einfachen Fällen” in denen es “nur” um Verschlüsselung geht). Extended Validation (EV) Zertifikate wird letsencrypt aber nicht ausstellen können. Für den Privatgebrauch wird dies aber meistens nicht benötigt.

Das besondere an letsencrypt is die einfache bzw. weitgehend automatische Beantragung / Einrichtung des Zertifikats mit Hilfe des ACME Protokolls.

Aktuell ist letsencrypt in der “limited beta”, d.h. man bekommt typischerweise erst nach einigen Tagen / Wochen Zugang zum System für die angegebenen Domains.

Zuerst klont man das letsencrypt client repository und veranlasst eine automatische Installation. Dabei werden je nach Plattform Pakete (z.B. augeas-lenses und python header) installiert und ein Python virtualenv vorbereitet.

git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto --agree-dev-preview --server \
   https://acme-v01.api.letsencrypt.org/directory auth

Nun muss man eine Mailadresse und die Domain für die Zertifikatsausstellung angegeben werden. Alle Einstellungen und Zertifikate werden in /etc/letsencrypt gespeichert. Bei der vollautomatischen Einrichtung muss auch ein eventuell laufender Webserver auf Port 80 gestoppt werden. Letsencrypt startet einen temporäre NGINX um die Kontrolle über die Domain vorweisen zu können. Dieser wird nur für die Verifikation benötigt und anschließend automatisch wieder gestoppt.

Ergebnis ist dann:

- Congratulations! Your certificate and chain have been saved at
  /etc/letsencrypt/live/subdomain.mydomain.de/fullchain.pem. Your cert
  will expire on 2016-02-03. To obtain a new version of the
  certificate in the future, simply run Let's Encrypt again.

Um ein Zertifikat für eine weitere Domain auszustellen, einfach nochmal

./letsencrypt-auto --agree-dev-preview --server \
   https://acme-v01.api.letsencrypt.org/directory auth

ausführen. Die Domain(s) kann / können auch mit (mehrfacher) Angabe von -d my.domain.de spezifiziert werden. Auf die gleiche Art und Weise können auch Zertifikate erneuert werden.

Weitere Informationen, z.B. wie man einen schon laufenden Webserver zur Authentifizierung verwenden kann finden sich in der Client Doku. Dort ist auch beschrieben wie sich der Renewal Prozess automatisieren lässt.

Letsencrypt ermöglicht eine sehr einfache Einrichtung von Zertifikaten mit gültiger Zertifizierungskette. Der Client ist gut dokumentiert und ermöglicht automatisches Renewal von Zertifikaten.