This commit is contained in:
Andreas Knuth 2026-01-30 17:12:26 -06:00
parent 2026e6afcd
commit 38fcf8c4d8
3 changed files with 22 additions and 28 deletions

View File

@ -24,8 +24,3 @@ COPY sieve-schedule /etc/sieve-schedule
# 5. Supervisor Konfiguration kopieren
COPY sieve-supervisor.conf /etc/supervisor/conf.d/sieve-sync.conf
# --- NEU: Startup-Skript für Whitelist ---
# DMS führt Skripte in /docker-entrypoint-init.d/ beim Start automatisch aus
COPY update-whitelist.sh /docker-entrypoint-init.d/update-whitelist.sh
RUN chmod +x /docker-entrypoint-init.d/update-whitelist.sh

View File

@ -0,0 +1,21 @@
#!/bin/bash
# user-patches.sh läuft bei jedem Start von DMS automatisch
ACCOUNTS_FILE="/tmp/docker-mailserver/postfix-accounts.cf"
WHITELIST_FILE="/etc/rspamd/override.d/docker_whitelist.map"
echo "Patching: Generiere Rspamd Whitelist aus Accounts..."
if [ -f "$ACCOUNTS_FILE" ]; then
# Whitelist generieren
awk -F'|' '{print $1}' "$ACCOUNTS_FILE" | cut -d'@' -f2 | sort | uniq > "$WHITELIST_FILE"
# Berechtigungen korrigieren
chmod 644 "$WHITELIST_FILE"
chown _rspamd:_rspamd "$WHITELIST_FILE" 2>/dev/null || true
echo "Whitelist erfolgreich erstellt:"
cat "$WHITELIST_FILE"
else
echo "FEHLER: $ACCOUNTS_FILE wurde nicht gefunden!"
fi

View File

@ -1,22 +0,0 @@
#!/bin/bash
# Pfade im Container
ACCOUNTS_FILE="/tmp/docker-mailserver/postfix-accounts.cf"
WHITELIST_FILE="/etc/rspamd/override.d/docker_whitelist.map"
echo "Startup-Script: Generiere Rspamd Whitelist aus Accounts..."
if [ -f "$ACCOUNTS_FILE" ]; then
# 1. Alles vor dem Pipe (|) nehmen -> user@domain.com
# 2. Alles nach dem @ nehmen -> domain.com
# 3. Sortieren und Duplikate entfernen
# 4. In die Whitelist schreiben
awk -F'|' '{print $1}' "$ACCOUNTS_FILE" | cut -d'@' -f2 | sort | uniq > "$WHITELIST_FILE"
# Berechtigung setzen (zur Sicherheit)
chmod 644 "$WHITELIST_FILE"
echo "Whitelist aktualisiert. Gefundene Domains:"
cat "$WHITELIST_FILE"
else
echo "WARNUNG: $ACCOUNTS_FILE nicht gefunden!"
fi