Drei Wege zu einem Let’s Encrypt-Zertifikat (HTTPS)

HTTPS ist im Internet nicht wegzudenken.

Als HTTPS wird eine verschlüsselte Verbindung zwischen einem Endgerät (Client) und dem Server bezeichnet (siehe hier – Was ist HTTPS?).

Der Webseitenbetreiber benötigt dazu ein SSL-Zertifikat (hier ist immer noch die Rede von SSL-Zertifikat, auch wenn HTTPS mittlerweile mit TLS statt SSL verschlüsselt).

Früher waren SSL-Zertifikate teuer und aufwendig einzurichten.

Mittlerweile gibt es die kostenlose Alternative Let’s Encrypt (Webseite), die kostenlose SSL-Zertifikate ausstellt und außerdem noch die Einrichtung vereinfacht.

Wie sich die Webseite mit einem kostenlosen SSL-Zertifikat absichern lässt, das beschreibe ich hier. Und zwar auf drei Wegen.

Drei Wege zu einem kostenlosen SSL-Zertifikat

Weg #1 – für Webhosting bzw. Webspace

Wer ein Webhosting-Paket bzw. Webspace nutzt, um die eigene Webseite zu betreiben, dem bleibt nur, sich einen Webhoster zu suchen, der Let’s Encrypt eingebunden hat.

Mit einem Webhosting-Paket fehlen nämlich die Administrationsrechte, um Let’s Encrypt selbst zu installieren. Das muss der Hoster bzw. Provider machen.

Glücklicherweise bieten mittlerweile viele Webhoster kostenlose SSL-Zertifikate von Let’s Encrypt an. Die Auswahl ist ziemlich groß.

Webhosting mit Let's Encrypt
Screenshot – Let’s Encrypt-Zertifikat bei (Shared) Webhosting einrichten, hier: netcup

Hierfür empfiehlt es sich also, beim Webhoster zu überprüfen, ob kostenlose Let’s Encrypt-Zertifikate angeboten werde.

Manche Hoster bieten Let’s Encrypt nur in bestimmten Webhosting Tarifen an.

Weg #2 und Weg #3 – für vServer bzw. VPS oder Dedicated Server

Wer über einen Root-Zugang zum virtuellen Server oder dedizierten Server verfügt, kann sich um die Einrichtung von Let’s Encrypt selbst kümmern.

Das ist nicht sonderlich kompliziert.

Eines der Ziele von Let’s Encrypt war es schließlich auch, die Einrichtung des SSL-Zertifikats für Serveradministatoren zu vereinfachen.

Weg #2 – Let’s Encrypt installieren (offizieller Let’s Encrypt-Client)

Let’s Encrypt bietet einen eigenen Client (Python) an.

Die Installation lässt sich über Git anstoßen.

cd /usr/local/
git clone https://github.com/letsencrypt/letsencrypt

Anschließend können SSL-Zertifikate über den Let’s Encrypt-Client ausgestellt werden.

Das funktioniert z.B. wie folgt (am Beispiel Apache Webserver):

cd /usr/local/letsencrypt
./letsencrypt-auto --apache -d meinedomain.tld

Hier muss natürlich „meinedomain.tld“ durch den eigenen Domainnamen ersetzt werden.

Der Let’s Encrypt-Client führt im folgenden durch die Installation und übernimmt grundsätzlich auch die Webserver-Konfiguration (Apache oder Nginx).

Nachdem die Einrichtung vom SSL-Zertifikat erfolgt ist und überprüft wurde, sollte ein Cronjob eingerichtet werden, die das SSL-Zertifikat regelmäßig erneuert.

Ein Let’s Encrypt-Zertifikat ist nämlich lediglich für 90 Tage gültig.

Das geht z.B. wie folgt:

crontab -e

… und folgende Zeile hinzufügen:

0 4 * * 7 /usr/local/letsencrypt/letsencrypt-auto renew >> /var/log/letsencrypt-renew.log

Folgender Cronjob würde jeden Sonntag, um 4 Uhr morgens, eine Überprüfung anstoßen, ob das Let’s Encrypt-Zertifikat erneuert werden muss.

Das funktioniert auch, wenn mehrere Let’s Encrypt-Zertifikate vorliegen.

Die Schritte oben sind nur als kurzer Einstieg gedacht.

Ein ausführliches Tutorial findet sich z.B. hier (für RHEL 6/7 bzw. CentOS 6/7) oder hier (Ubuntu).

Weg #3 – Let’s Encrypt via acme.sh

Etwas einfacher als der „offizielle Weg“ ist z.B. das Shell-Script acme.sh, welches von dem Entwickler Neil Pang gepflegt wird.

Das Shell-Script ist „leichter“ als der offizielle Python-Client (weniger Abhängigkeiten), einfach zu bedienen und bringt einige sinnvolle Erweiterungen mit (zumindest meiner Meinung nach) – so werden z.B. Let’s Encrypt-Zertifikate automatisch erneuert.

Fazit zu kostenlosen Let’s Encrypt-Zertifikaten

Mittlerweile sind kostenlose Let’s Encrypt-Zertifikate einfach zu haben.

Einerseits bieten viele Webhoster eine Schnittstelle ein, so dass Webspace- bzw. Hosting-Kunden ein SSL-Zertifikate von Let’s Encrypt bequem über das Admin-Panel beziehen können.

Andererseits haben Serveradministratoren den offiziellen Python-Client oder Dritt-Tools zur Auswahl, um Let’s Encrypt einzurichten.

Let’s Encrypt-Zertifikate eignen sich für viele private Webseiten. Aber auch auf einigen E-Commerce-Webseiten habe ich schon solche Zertifikate gesehen.

Wer ein höheres Sicherheitsniveau benötigt, setzt jedoch meist weiterhin auf SSL-Zertifikate von anderen CAs (Certification Authorities).

Bei Let’s Encrypt-Zertifikaten handelt es sich um die einfachste Stufe eines SSL-Zertifikats – ein domainvalidiertes Zertifikat.

Wer ein inhabervalidiertes Zertifikat oder gar ein EV-Zertifikat (EV – extended validation) benötigt, der landet zwangsweise bei einem klassischen CA.

Veröffentlicht von Patrick

Hallo, ich bin Patrick. Hier blogge ich zu verschiedensten Technik-Themen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Ich stimme zu, dass meine Angaben und Daten zur Veröffentlichung des Kommentars gemäß Datenschutzerklärung elektronisch erhoben und gespeichert werden.