From ee892a6b33104a051a327081867299af82550026 Mon Sep 17 00:00:00 2001 From: Christoph Kuchenbuch Date: Sun, 15 Feb 2026 14:36:21 +0100 Subject: [PATCH] Add script 'set-policyd-spf-config-for-listserver.sh' - More relaxed settings for Listenserver. --- set-policyd-spf-config-for-listserver.sh | 40 ++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100755 set-policyd-spf-config-for-listserver.sh diff --git a/set-policyd-spf-config-for-listserver.sh b/set-policyd-spf-config-for-listserver.sh new file mode 100755 index 0000000..1fe587c --- /dev/null +++ b/set-policyd-spf-config-for-listserver.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +set -euo pipefail + +CONF="/etc/postfix-policyd-spf-python/policyd-spf.conf" +BACKUP="${CONF}.$(date +%Y%m%d-%H%M%S).bak" + +if [[ ! -f "$CONF" ]]; then + echo "ERROR: Config not found: $CONF" >&2 + exit 1 +fi + +cp -a -- "$CONF" "$BACKUP" + +ensure_kv() { + local key="$1" + local value="$2" + + # Prüfen ob es eine AKTIVE (nicht auskommentierte) Zeile gibt + if grep -Eq "^[[:space:]]*${key}[[:space:]]*=" "$CONF"; then + # Nur erste aktive Zeile ersetzen + sed -ri "0,/^[[:space:]]*${key}[[:space:]]*=.*/s//${key} = ${value}/" "$CONF" + else + # Anfügen mit Leerzeile + Kommentar + cat >>"$CONF" <