Nachdem ich das SSL-Zertifikat mit Let's Encrypt erhalten habe, habe ich die automatische Verlängerung eingerichtet, aber ich werde eine Lösung einführen, wenn ein Fehler auftritt und diese nicht automatisch erneuert wird.
・ Debian (GCP)
Da das SSL-Zertifikat von Let's Encrypt ein Ablaufdatum von 3 Monaten hat, wird der Nervenbefehl regelmäßig von crontab ausgeführt, um das Zertifikat automatisch zu erneuern.
crontab
certbot renew --post-hook "/etc/init.d/apache2 restart"
Es heißt, dass es nicht aktualisiert werden kann, weil der Port verwendet wird. Ich musste den laufenden Webserver (Dienst zum Aktualisieren des SSL-Zertifikats) stoppen und dann den Erneuerungsbefehl ausführen.
WARNING:certbot.renewal:Attempting to renew cert from /etc/letsencrypt/renewal/SITE_URI.conf produced an unexpected error: At least one of the required ports is already taken.. Skipping.
crontab
certbot renew --pre-hook "/etc/init.d/apache2 stop" --post-hook "/etc/init.d/apache2 start"
Option --pre-hook zum alten Befehl hinzugefügt.
-Wenn Sie es zur crontab des Root-Benutzers hinzufügen, wird der Befehl mit Root-Rechten ausgeführt. Beim Hinzufügen zu crontab eines anderen Benutzers muss sudo vor dem Befehl wie "sudo /etc/init.d/apache2 restart" hinzugefügt werden.
・ Ersetzen Sie certbot erneuerung je nach Umgebung durch certbot-auto. Abhängig von der Umgebung kann das Verzeichnis von certbot angegeben werden. Beispiel: / home / Benutzername / certbot erneuern.