Feat: Fügt ein Skript hinzu, um Zertifikate via certbot zu aktualisieren.

This commit is contained in:
DragonSlayer_14 2025-03-03 23:37:52 +01:00
parent b91331307c
commit fcb5b666cb

83
Maintenance/CertbotRenew.sh Executable file
View File

@ -0,0 +1,83 @@
#!/bin/bash
# === IMPORTS ===
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "$SCRIPT_DIR/../Utility/NetworkCheck.sh"
source "$SCRIPT_DIR/../Utility/Log.sh"
# === ROOT-PRÜFUNG ===
if [[ $EUID -ne 0 ]]; then
echo "Dieses Skript muss als root ausgeführt werden! Bitte starte es mit sudo."
exit 1
fi
# === Funktionen ===
# Funktion zum sauberen Beenden des Skripts
cleanup() {
log "Prozess abgebrochen"
exit 1
}
# === Hauptskript ===
# Protokollieren des Startzeitpunkts
log "Zertifikatserneuerung gestartet"
# nginx stoppen
log "nginx stoppen"
output=$(systemctl stop nginx 2>&1)
status=$?
log "$output"
if [ $status -ne 0 ]; then
log "Fehler beim Stoppen von nginx"
cleanup
fi
log "nginx gestoppt"
# Zertifikat erneuern
log "Zertifikatserneuerung gestartet"
output=$(certbot renew 2>&1)
status=$?
log "$output"
if [ $status -ne 0 ]; then
log "Fehler bei der Zertifikatserneuerung"
cleanup
fi
log "Zertifikatserneuerung abgeschlossen"
# Docker neu starten
log "Docker wird neu gestartet"
output=$(systemctl restart docker 2>&1)
status=$?
log "$output"
if [ $status -ne 0 ]; then
log "Fehler beim Neustarten von Docker"
cleanup
fi
log "Docker erfolgreich neu gestartet"
# Wings neu starten
log "Wings wird neu gestartet"
output=$(systemctl restart wings 2>&1)
status=$?
log "$output"
if [ $status -ne 0 ]; then
log "Fehler beim Neustarten von Wings"
cleanup
fi
log "Wings erfolgreich neu gestartet"
# nginx starten
log "nginx starten"
output=$(systemctl start nginx 2>&1)
status=$?
log "$output"
if [ $status -ne 0 ]; then
log "Fehler beim Starten von nginx"
cleanup
fi
log "nginx gestartet"
# Protokollieren des Endzeitpunkts
log "Zertifikatserneuerung abgeschlossen"