2025-02-20 20:50:25 +01:00
.
2025-02-20 20:50:25 +01:00
.
2025-02-20 20:50:25 +01:00
.
2025-02-20 20:50:25 +01:00
.
2025-02-20 20:50:25 +01:00

Skript zum herunterfahren einer entfernten Computers

Dieses Skript automatisiert das herunterfahren eines Servers per SSH und sendet eine Benachrichtigung an einen NTFY Server. Es verwendet curl zum Senden von Benachrichtigungen und sshpass zum Ausführen von Remote-Befehlen.

Funktionen

  • Sendet eine Benachrichtigung an einen NTFY-Server mit benutzerdefinierten Details.
  • Führt das Herunterfahren eines Servers über SSH durch.
  • Lädt Konfigurationsvariablen aus einer externen .env-Datei.

Voraussetzungen

curl Benötigt für das Senden von HTTP-Anfragen. sshpass Benötigt für die nicht-interaktive SSH-Anmeldung. NTFY Ein NTFY-Server für Benachrichtigungen

Installation

  1. Stellen Sie sicher, dass curl und sshpass auf Ihrem System installiert sind:
sudo apt install curl sshpass
  1. Platzieren Sie das Skript und eine .env-Datei im gleichen Verzeichnis. Die .env-Datei muss denselben Namen wie das Skript haben, jedoch mit der Endung .env (z. B. shell_ntfy_remote_shutdown.sh und shell_ntfy_remote_shutdown.env).
  2. Setzen Sie die korrekten Dateiberechtigungen, um die Sicherheit zu gewährleisten:
chmod 700 shell_ntfy_remote_shutdown.sh
chmod 600 shell_ntfy_remote_shutdown.env
chmod +x shell_ntfy_remote_shutdown.sh

Konfiguration

Erstellen Sie eine .env-Datei mit den folgenden Variablen:

# NTFY Server
NTFY_URL=https://ntfy.server.net/
AUTH_TOKEN=tk_elwqvm6niscdn30f45iksdfh6sope

# Duplicati Server
DUPLICATI_URL=http://192.168.178.100:8200
SERVER_NAME=unRAID

# NTFY Icon (Optional / Leer lassen falls nicht benötigt)
ICON=http://192.168.178.25:3030/icons/qnap-ts-412.png

# SSH Zugangsdaten des entfernten System
SSH_HOST=192.168.178.105
SSH_USER=sshuser
SSH_PASSWORD=sshpass

Beschreibung der Variablen

NTFY_URL: Die Basis-URL des NTFY-Servers.
AUTH_TOKEN: Authentifizierungstoken für den NTFY-Server.
DUPLICATI_URL: URL zum Öffnen des Duplicati-Backup-Dashboards.
SERVER_NAME: Anzeigename des Servers.
ICON: URL für das Benachrichtigungssymbol.
SSH_HOST: Hostname oder IP-Adresse des Servers.
SSH_USER: Benutzername für die SSH-Anmeldung.
SSH_PASSWORD: Passwort für die SSH-Anmeldung am Server.

Verwendung

  • Führen Sie das Skript aus:
./shell_ntfy_remote_shutdown.sh
  • Stellen Sie sicher, dass alle Variablen in der .env-Datei korrekt gesetzt sind, um Laufzeitfehler zu vermeiden.

Sicherheitshinweise

  • Stellen Sie sicher, dass die .env-Datei restriktive Berechtigungen hat (chmod 600), um unbefugten Zugriff auf sensible Daten wie Passwörter und Tokens zu verhindern.
  • Vermeiden Sie es, sensible Informationen direkt im Skript zu hinterlegen.
Description
Dieses Skript automatisiert das herunterfahren eines Servers per SSH und sendet eine Benachrichtigung an einen NTFY Server. Es verwendet curl zum Senden von Benachrichtigungen und sshpass zum Ausführen von Remote-Befehlen.
Readme 43 KiB
Languages
Shell 100%