====== Ssl-letsencrypt ====== Bei [[https://letsencrypt.org/|Lets-Encrypt]] kann man kostenlos SSL-Zertifikate erwerben. ===== Installation ===== Aktuell kann man einen Lets-Encrypt Client von Github downloaden. cd /opt git clone https://github.com/letsencrypt/letsencrypt ===== Zertifikate erstellen ===== Nun kann man mit dem Script ''letsencrypt-auto'' ein Zertifikat für eine oder mehrere Domains erstellen. Da das Letsencrypt Script einen Webserver startet und dieser auch auf Port 80 läuft, muss vorher jeder Webserver-Dienst gestoppt werden. service nginx stop [service apache2 stop] cd /opt/letsencrypt ./letsencrypt-auto certonly --standalone --email @. -d [-d ] [-d ] Es wird nun das Verzeichnis ''/etc/letsencrypt'' erstellt. Hier werden alle Zertifikate und sonstige Einstellungen abgelegt. Möchte man ein Zertifikat und den dazugehörigen Key in einem Programm verwenden, dann nutzt man einfach folgende Pfade: * **Zertifikat:** \\ etc/letsencrypt/live//fullchain.pem * **Key:** \\ /etc/letsencrypt/live//privkey.pem ==== Subdomains erweitern ==== Möchte man eine Subdomain später hinzufügen, erweitert man einfach den o.g. Befehl zum Erstellen der Zertifikate um die Subdomain. Man wird dann gefragt ob man die bestehenden Zertifikate erweitern möchte. ===== Gültigkeit und Verlängerung ===== Die Zertifikate sind nur 3 Monate gültig. Um diese kontinuierlich zu erweitern, legt man sich eine Zeile in der ''Crontab'' an. Dieser Befehl wird dann z.B. jede Woche ausgeführt. 00 1 * * 7 root /usr/sbin/service nginx stop && /opt/letsencrypt/letsencrypt-auto certonly --keep-until-expiring --standalone --email @. -d [-d ] [-d ] && /usr/sbin/service nginx start