58 lines
1.6 KiB
Bash
58 lines
1.6 KiB
Bash
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
NOTIF_CFG="/etc/pve/notifications.cfg"
|
|
PRIV_NOTIF_CFG="/etc/pve/priv/notifications.cfg"
|
|
|
|
if [ ! -f "$NOTIF_CFG" ]; then
|
|
echo "Fehler: $NOTIF_CFG nicht gefunden!"
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -f "$PRIV_NOTIF_CFG" ]; then
|
|
echo "Fehler: $PRIV_NOTIF_CFG nicht gefunden!"
|
|
exit 1
|
|
fi
|
|
|
|
# Backup anlegen
|
|
backup_file() {
|
|
local file=$1
|
|
local bak="${file}.bak.$(date +%Y%m%d%H%M%S)"
|
|
cp "$file" "$bak"
|
|
echo "Backup erstellt: $bak"
|
|
}
|
|
|
|
backup_file "$NOTIF_CFG"
|
|
backup_file "$PRIV_NOTIF_CFG"
|
|
|
|
echo "Bitte die SMTP Notification Konfiguration eingeben:"
|
|
|
|
read -rp "Author (z.B. MH-PVE02 | MAIERHOME H33): " AUTHOR
|
|
read -rp "From-Address (z.B. MH-PVE02@vmd55888.de): " FROMADDR
|
|
read -rp "Empfänger-Mailadresse (mailto): " MAILTO
|
|
read -rp "SMTP Server (z.B. mail.vmd55888.de): " SERVER
|
|
read -rp "SMTP Port (z.B. 587): " PORT
|
|
read -rp "Modus (starttls/ssl/none): " MODE
|
|
read -rp "SMTP Benutzername: " USERNAME
|
|
read -rsp "SMTP Passwort: " SMTP_PASS
|
|
echo
|
|
|
|
# notifications.cfg anpassen
|
|
sed -i "/^smtp:/,/^$/ {
|
|
s/^[[:space:]]*author .*/ author $AUTHOR/
|
|
s/^[[:space:]]*from-address .*/ from-address $FROMADDR/
|
|
s/^[[:space:]]*mailto .*/ mailto $MAILTO/
|
|
s/^[[:space:]]*server .*/ server $SERVER/
|
|
s/^[[:space:]]*port .*/ port $PORT/
|
|
s/^[[:space:]]*mode .*/ mode $MODE/
|
|
s/^[[:space:]]*username .*/ username $USERNAME/
|
|
}" "$NOTIF_CFG"
|
|
|
|
# priv/notifications.cfg anpassen
|
|
sed -i "/^smtp:/,/^$/ {
|
|
s/^[[:space:]]*password .*/ password $SMTP_PASS/
|
|
}" "$PRIV_NOTIF_CFG"
|
|
|
|
echo "Konfiguration wurde aktualisiert."
|
|
echo "Bitte überprüfe in der WebUI, ob alles korrekt übernommen wurde."
|