script
This commit is contained in:
parent
2026e6afcd
commit
38fcf8c4d8
|
|
@ -24,8 +24,3 @@ COPY sieve-schedule /etc/sieve-schedule
|
||||||
|
|
||||||
# 5. Supervisor Konfiguration kopieren
|
# 5. Supervisor Konfiguration kopieren
|
||||||
COPY sieve-supervisor.conf /etc/supervisor/conf.d/sieve-sync.conf
|
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
|
|
||||||
|
|
@ -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
|
||||||
|
|
@ -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
|
|
||||||
Loading…
Reference in New Issue