From 9b3b153772638fdd9c8b2c402c3d875ddbb61ef7 Mon Sep 17 00:00:00 2001 From: "manuel.maier" Date: Tue, 28 Jul 2026 00:45:21 +0200 Subject: [PATCH] =?UTF-8?q?install-wg-client-status-check.sh=20hinzugef?= =?UTF-8?q?=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- install-wg-client-status-check.sh | 50 +++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 install-wg-client-status-check.sh diff --git a/install-wg-client-status-check.sh b/install-wg-client-status-check.sh new file mode 100644 index 0000000..31f1bec --- /dev/null +++ b/install-wg-client-status-check.sh @@ -0,0 +1,50 @@ +#!/bin/bash + +# --- KONFIGURATION --- +# Passe hier die URL zu deinem Repository an +SCRIPT_URL="https://me-gitea.maieredv.cloud/DEIN_USER/DEIN_REPO/raw/branch/main/wg-client-status.sh" +DEST_PATH="/usr/local/bin/wg-client-status.sh" +CRON_FILE="/etc/cron.d/wg-client-status" + +echo "🚀 Starte Installation des Gateway-Status-Clients..." + +# 1. Root-Rechte prüfen +if [ "$EUID" -ne 0 ]; then + echo "❌ Bitte führe das Script als root aus (z.B. sudo ./install.sh)" + exit 1 +fi + +# 2. Aktuelles Script herunterladen +echo "📥 Lade Script von $SCRIPT_URL herunter..." +curl -sSL "$SCRIPT_URL" -o "$DEST_PATH" + +if [ ! -f "$DEST_PATH" ]; then + echo "❌ Fehler beim Herunterladen des Scripts! Bitte URL prüfen." + exit 1 +fi + +# 3. Ausführbar machen +chmod +x "$DEST_PATH" +echo "✅ Script installiert unter $DEST_PATH" + +# 4. Cronjobs systemweit und sauber in /etc/cron.d/ anlegen +echo "⏱️ Erstelle Cronjobs..." + +cat < "$CRON_FILE" +# Führt das Status-Script jede Minute aus +* * * * * root $DEST_PATH > /dev/null 2>&1 + +# Zieht sich jede Nacht um 03:00 Uhr die aktuellste Version aus dem Gitea-Repo +0 3 * * * root curl -sSL "$SCRIPT_URL" -o "$DEST_PATH" && chmod +x "$DEST_PATH" > /dev/null 2>&1 +EOF + +# Wichtig: Dateien in /etc/cron.d/ muessen root gehoeren und duerfen nicht executable sein (644) +chmod 644 "$CRON_FILE" +chown root:root "$CRON_FILE" +echo "✅ Cronjobs eingerichtet in $CRON_FILE" + +# 5. Erster Testlauf (optional, triggert direkt den ersten Heartbeat) +echo "🧪 Führe ersten Testlauf aus..." +"$DEST_PATH" + +echo "🎉 Installation abgeschlossen! Das Gateway meldet sich nun minütlich und hält sich selbst aktuell." \ No newline at end of file