Seit längerer Zeit können mit Let’s Encrypt (letsencrypt.org) TLS Zertifikate (SSL) erstellt werden, leider ist das Anfordern solcher Zertifikate nicht gerade einfach.
Am einfachsten ist es, wenn ein Linux-System mit root-Rechten verwendet wird, da diese Sache einfacher unter Linux funktioniert, für Windows gibt es derzeit irgendwie noch nichts brauchbares, was sich unkompliziert einsetzen ließe.
Folgendes wird benötigt/ist erforderlich
- Webspace: Domain muss via HTTP und nicht mit HTTPS aufrufbar sein, sonst schlägt die Erstellung fehl
- Webspace: Die benötigten Ordner müssen zumindest Leserechte beinhalten
- Linux-Betriebssystem (Ubuntu etc., Debian und Co.), kann auch in einer Virtuellen Maschine mit Internetzugriff verwendet werden, Wahlweise auf Root-Server, VPS (Virtual Private Server)…
- Terminal (Console (ist in der Regel bei einem grafischen System installiert))
- FTP-Client um später die benötigten Order und Datei anlegen zu können
Bitte Terminal starten und folgendes eingeben um den ACME Clienten zu installieren:
cd /~ git clone https://github.com/letsencrypt/letsencrypt cd letsencrypt
(Sollte git noch nicht installiert sein, kann dies mit sudo apt-get install git
nachgeholt werden)
Wenn alles soweit geklappt hat, kann jetzt das Zertifikat oder die Zertifikate erstellt werden, dazu folgendes im Terminal eingeben:
./letsencrypt-auto certonly -a manual --rsa-key-size 4096 -d meinedomain.de -d www.meinedomain.de
Die Werte meinedomain.de www.meinedomain.de müssen durch die eigene Domain ersetzt werden, es können bei Bedarf mehrere Sub-Domains hinzugefügt werden, wobei für jeden Eintrag später eine Prüfdatei auf dem Webspace angelegt werden muss.
Im Terminal sollte in der Regel eine Art grafische Oberfläche angezeigt werden
NOTE: The IP of this machine will be publicly logged as having requested this certificate. If you're running letsencrypt in manual mode on a machine that is not your server, please ensure you're okay with that. Are you OK with your IP being logged? < Yes > < No >
Es sollte mit Yes bestätigt werden. Anschließend erscheint folgende Textausgabe im Terminal:
Make sure your web server display the following content at http://www.domain.de/.well-known/acme-challenge/Generierter-Code-fuer-Dateinamen
Es ist wichtig, dass auf dem Webspace folgende Ordner angelegt werden:
.well-known
und acme-challenge
Beispiel: /htdocs/.well-known/acme-challenge
In diesem Ordner bitte eine Datei mit dem Namen des Codes Generierter-Code-fuer-Dateiname erstellen (siehe Ausgabe Terminal ACME)
Beispiel: /htdocs/.well-known/acme-challenge/Generierter-Code-fuer-Dateiname
Im Terminal wird etwas weiter unten ein langer Code angezeigt, dieser muss kopiert und in die erstellte Datei eingefügt werden, danach abspeichern.
Wenn die Schritte erfolgreich waren, im Terminal die Enter
-Taste drücken und die Ausgabe im Terminal beobachten. Wenn alles gutgegangen ist, erscheinend folgendes:
IMPORTANT NOTE: Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/meinedomain.de/fullchain.pem. Your cert will expire on xxxx-xx-xx. To obtain a new version of the certificate in future, simply run Let's Encrypt again.
Nachdem die Zertifikate erfolgreich erstellt wurden, können zumindest die Dateien gelöscht werden, da diese nicht mehr gebraucht werden.
Die erstellten Zertifikate von Let’s Encrypt sind drei Monate gültig und verlieren danach ihre Gültigkeit, um dies vorzubeugen müssen die Schritte aus dieser Anleitung erneut bis auf dem Download des Scriptes durchgeführt werden, am besten nach etwa zwei Monate vor Ablauf.
Kleiner Hinweis: Die Erstellung der Zertifikate wurde bereits in etwa nach diesem Schema erstellt, der Inhalt dieser Anleitung wurde noch einmal schriftlich hier verfasst, es können Abweichungen auftreten. Diese Anleitung wird demnächst noch einmal überprüft und dementsprechend korrigiert.