main
Skript zum herunterfahren einer entfernten Computers
Dieses Skript automatisiert das Herunterfahren eines Servers per SSH und sendet anschließend eine Benachrichtigung an einen NTFY-Server.
Für die Benachrichtigungen wird curl verwendet.
Das Herunterfahren erfolgt per ssh. Dafür muss zuvor ein SSH-Key zwischen den Systemen ausgetauscht werden.
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.
NTFY Ein NTFY-Server für Benachrichtigungen
Installation
- Stellen Sie sicher, dass
curlauf Ihrem System installiert sind:
sudo apt install curl
- 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).
- 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 .conf-Datei mit den folgenden Variablen:
# NTFY Server
NTFY_URL=https://ntfy.server.net/
AUTH_TOKEN=tk_ntfytoken
# 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
# Entfernter Computer
SSH_HOST=192.168.178.105
SSH_USER=admin
SSH_KEY=/config/.ssh/id_ed25519
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_KEY: Pfad zum privaten SSH-Key.
SSH-Key erstellen und austauschen
Für die passwortlose SSH-Anmeldung muss zunächst ein SSH-Key erzeugt und auf das Zielsystem kopiert werden.
1. SSH-Key erstellen
ssh-keygen -t ed25519
Dadurch werden folgende Dateien erzeugt:
~/.ssh/id_ed25519
~/.ssh/id_ed25519.pub
2. Public Key auf das Zielsystem kopieren
ssh-copy-id -i ~/.ssh/id_ed25519.pub USER@HOST
Beispiel:
ssh-copy-id -i ~/.ssh/id_ed25519.pub admin@192.168.178.105
Verwendung des Scripts
- Führen Sie das Skript aus:
./shell_ntfy_remote_shutdown.sh
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.
54 KiB
0 Stars
1 Watchers
0 Forks
Languages
Shell
100%