68 lines
1.5 KiB
Bash
Executable File
68 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Variablen
|
|
WEBDAV_USER="tim.schilling@koenigsbrunn.de"
|
|
WEBDAV_PASS="HgdKS-P2004!"
|
|
|
|
WEBDAV_URL="https://www.kommsafe.de/webdav/Stadt%20K%C3%B6nigsbrunn/IuK/KITL-VaultWarden%20Backups"
|
|
RCLONE_CONFIG="/root/.config/rclone/rclone.conf"
|
|
|
|
# Farben für die Ausgabe
|
|
GREEN="\033[0;32m"
|
|
RED="\033[0;31m"
|
|
NC="\033[0m" # Keine Farbe
|
|
|
|
# Funktion zur Ausgabe von Meldungen
|
|
function log() {
|
|
echo -e "${GREEN}[INFO] $1${NC}"
|
|
}
|
|
|
|
function error() {
|
|
echo -e "${RED}[ERROR] $1${NC}"
|
|
}
|
|
|
|
# Sicherstellen, dass das Skript als root ausgeführt wird
|
|
if [[ $EUID -ne 0 ]]; then
|
|
error "Dieses Skript muss als root ausgeführt werden!"
|
|
exit 1
|
|
fi
|
|
|
|
|
|
# Installiere rclone, falls nicht vorhanden
|
|
if ! command -v rclone &> /dev/null; then
|
|
log "rclone wird installiert..."
|
|
apt update && apt install -y rclone || { error "Fehler bei der Installation von rclone!"; exit 1; }
|
|
else
|
|
log "rclone ist bereits installiert."
|
|
fi
|
|
|
|
|
|
# Verschlüsseltes Passwort generieren
|
|
log "Verschlüssele das WebDAV-Passwort..."
|
|
ENCRYPTED_PASSWORD=$(rclone obscure "$WEBDAV_PASS")
|
|
if [[ -z "$ENCRYPTED_PASSWORD" ]]; then
|
|
error "Fehler beim Verschlüsseln des Passworts!"
|
|
exit 1
|
|
fi
|
|
|
|
# Rclone-Konfigurationsdatei erstellen
|
|
log "Erstelle die rclone-Konfigurationsdatei..."
|
|
mkdir -p "$(dirname "$RCLONE_CONFIG")"
|
|
cat <<EOF > "$RCLONE_CONFIG"
|
|
[webdav]
|
|
type = webdav
|
|
url = $WEBDAV_URL
|
|
vendor = other
|
|
user = $WEBDAV_USER
|
|
pass = $ENCRYPTED_PASSWORD
|
|
EOF
|
|
chmod 600 "$RCLONE_CONFIG"
|
|
log "rclone-Konfiguration gespeichert unter $RCLONE_CONFIG."
|
|
|
|
|
|
useradd $bak_user
|
|
|
|
|
|
log "Vorbereitungen abgeschlossen"
|
|
|