From fcb5b666cb4b2505e8c3d534e6dadcb7e6a21359 Mon Sep 17 00:00:00 2001 From: DragonSlayer_14 Date: Mon, 3 Mar 2025 23:37:52 +0100 Subject: [PATCH] =?UTF-8?q?Feat:=20F=C3=BCgt=20ein=20Skript=20hinzu,=20um?= =?UTF-8?q?=20Zertifikate=20via=20certbot=20zu=20aktualisieren.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Maintenance/CertbotRenew.sh | 83 +++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100755 Maintenance/CertbotRenew.sh diff --git a/Maintenance/CertbotRenew.sh b/Maintenance/CertbotRenew.sh new file mode 100755 index 0000000..322c6eb --- /dev/null +++ b/Maintenance/CertbotRenew.sh @@ -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"