...
| Codeblock |
|---|
~# certbot run -d domains ~# certbot certonly -d domains [--deploypre-hook script --post-hook script --csr csr.pem] |
- run - erzeugt die Zertifikats-Dateien und installiert sie im angegebenen Webserver (apache oder nginx) wenn diese in der Konfiguration angegeben wurden.
- certonly - erzeugt die Zertifikats-Dateien ohne weitere Verarbeitung.
- domains ist der Servername oder eine Komma-separierte Liste von Servernamen, für den das Zertifikat ausgestellt wird. Der erste Name in der Liste ist der Zertifikatsname, wenn nicht mit der Option --cert-name Zertifikatsname ein anderer Name angegeben wird.
- mit -- deploy
- pre-hook kann ein Script angegeben werden, welches für jedes erfolgreich ausgestellte oder erneuerte Zertifikat ausgeführt wird. Damit ist eine automatische Weiterverarbeitung und Verteilung von Zertifikaten für andere als die direkt unterstützten Webserver möglich
- vor dem Erzeugen neuer Zertifikate ausgeführt wird.
- mit --post-hook kann ein Script angegeben werden, welches nach dem Erhalt neuer Zertifikate ausgeführt wird.
- mit --csr kann eine Zertifikats-Request-Datei angegeben werden. Damit bleibt der private Schlüssel zu jedem Zeitpunkt auf dem eigenen Server.
Die Zertifikate werden standardmäßig unter /etc/letsencrypt/live/Zertifikatsname verlinkt und stehen dort zur weiteren Verarbeitung/Verteilung zur Verfügung.
Automatische Neuausstellung ablaufender Zertifikate
Zum Erneuern von certbot verwalteter Zertifikate dient der Befehl
| Codeblock |
|---|
~# certbot renew [--pre-hook script --post-hook script --deploy-hook script --reuse-key] |
Dieser Befehl prüft, für welche Zertifikate 2/3 der Nutzungsdauer abgelaufen sind (bzw. welche in den nächsten 30 Tagen ablaufen bei älteren certbot-Versionen) und erneuert für diese die Zertifikate. Werden keine Zertifikate erneuert, tut der Befehl nichts weiter. Er kann also regelmäßig (täglich oder wöchentlich) per cron aufgerufen werden.
- --reuse-key gibt an, dass beim Erneuern der aktuelle private Schlüssel gültig bleibt
- mit --deploy-hook kann ein Script angegeben werden, welches für jedes erfolgreich erneuerte Zertifikat ausgeführt wird. Damit ist eine automatische Weiterverarbeitung und Verteilung von Zertifikaten für andere als die direkt unterstützten Webserver möglich. Dem Script werden die Umgebungsvariablen $RENEWED_LINEAGE (Pfad, in dem das erneuerte Zertifikat bereitgestellt wird, standardmäßig /etc/letsencrypt/live/servername.h2.de) und $RENEWED_DOMAINS (komma-separierte Liste der Domains des erneuerten Zertifikates) mitgegeben.
- mit --pre-hook bzw. --post-hook können jeweils Scripte angegeben werden, die vor bzw nach der Erneuerung der Zertifikate ausgeführt werden (typischerweise Webserver stoppen / starten oder Konfiguration neu einlesen).
Scripte, die in der Unterverzeichnissen pre, post oder deploy von /etc/letsencrypt/renewal-hooks/ abgelegt werden, werden automatisch in den entsprechenden Hooks in alphabetischer Reihenfolge ausgeführt ohne extra in der Kommandozeile angegeben zu werden.
Viele weitere nützliche Parameter sind in der Dokumentation zu certbot beschrieben: man certbot oder https://eff-certbot.readthedocs.io/en/stable/