[LINUX] Lassen Sie uns den Fehler bei der automatischen Aktualisierung des Certbot erneuern

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.

Annahme

・ Debian (GCP)

Ziel

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.

Einstellungen vor Änderung (Ausführungsplanteil weggelassen)

crontab


certbot renew --post-hook "/etc/init.d/apache2 restart"
Aktualisierungsfehler

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.
Einstellungen nach Änderung (Ausführungsplanteil weggelassen)

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.

Ergänzung

-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.

Recommended Posts

Lassen Sie uns den Fehler bei der automatischen Aktualisierung des Certbot erneuern
Lassen Sie uns aktualisiert verschlüsseln! Was tun, wenn der Befehl certbot erneuern nicht funktioniert?