rspamd rule
This commit is contained in:
@@ -28,12 +28,67 @@
|
||||
# Header stempelt, koennen sie hier per multimap wieder bepunktet werden.
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# 1) Einlieferungen des email-workers (externe Mail + dessen Forwards/OOO)
|
||||
# 1) Vom Worker SELBST komponierte Mail: Weiterleitungen und OOO-Antworten
|
||||
#
|
||||
# Zusaetzlich zu den Auth-Symbolen aus Regel 2 fallen hier inhaltliche Symbole
|
||||
# an, die auf die Bauform der Weiterleitung reagieren. buildForwardMessage()
|
||||
# in email-worker-nodejs/src/email/rules-processor.ts setzt:
|
||||
#
|
||||
# From: die getroffene lokale Adresse (support@bayarea-cc.com)
|
||||
# To: das Weiterleitungsziel (ebrunks@bayarea-cc.com)
|
||||
# Reply-To: den Originalabsender (andreas.knuth@gmail.com)
|
||||
#
|
||||
# Damit sieht jede Weiterleitung an einen Kollegen in derselben Domain formal
|
||||
# aus wie CEO-Fraud: Absender und Empfaenger intern, Antwort geht nach aussen
|
||||
# an eine Freemail-Adresse. Rspamd bepunktet das - zu Recht, nur ist die
|
||||
# Praemisse hier falsch, weil wir die Mail selbst gebaut haben:
|
||||
#
|
||||
# SPOOF_REPLYTO 6.0 From-Domain == To-Domain != Reply-To-Domain
|
||||
# FREEMAIL_REPLYTO_NEQ_FROM 2.0 Reply-To ist Freemail und != From
|
||||
#
|
||||
# Belegt an F228E320085 (2026-08-15 07:53:38): Score 7.95, also ueber
|
||||
# add_header = 6 - die Weiterleitung landete im Junk, waehrend dieselbe Mail
|
||||
# als Original an support@ mit -1.05 sauber durchlief (EC702320085).
|
||||
#
|
||||
# WARUM EINE EIGENE REGEL statt symbols_disabled in Regel 2:
|
||||
# Regel 2 gilt auch fuer "delivered", also fuer echte eingehende Fremdmail.
|
||||
# Dort ist SPOOF_REPLYTO genau das Signal, das BEC-Angriffe erkennt - das
|
||||
# darf nicht verloren gehen. Diese Regel prueft deshalb den WERT des Headers
|
||||
# und greift nur fuer Mail aus unserer eigenen Komposition.
|
||||
#
|
||||
# Die Auth-Gruppen muessen wiederholt werden: rspamd wertet nach Prioritaet
|
||||
# aus und wendet nur die erste passende Regel an, Regel 2 greift hier also
|
||||
# nicht mehr.
|
||||
#
|
||||
# Falls der Regexp-Vergleich nicht zieht, faellt die Mail auf Regel 2 zurueck
|
||||
# und behaelt ihre 7.95 - der Fehler ist damit sichtbar, nicht still. Pruefen
|
||||
# laesst sich das am Feld "Regel:" in:
|
||||
# docker exec mailserver bash /tmp/docker-mailserver/rspamd_report.sh --detail <QID>
|
||||
# Erwartet wird ses_worker_forwarded.
|
||||
# ---------------------------------------------------------------------------
|
||||
ses_worker_forwarded {
|
||||
priority = 20;
|
||||
ip = ["172.16.0.0/12", "127.0.0.0/8"];
|
||||
header = {
|
||||
"X-SES-Worker-Processed" = "^(forwarded|ooo-reply)$";
|
||||
}
|
||||
apply {
|
||||
groups_disabled = ["spf", "dkim", "dmarc", "hfilter"];
|
||||
symbols_disabled = ["RDNS_NONE", "SPOOF_REPLYTO",
|
||||
"FREEMAIL_REPLYTO_NEQ_FROM", "FREEMAIL_REPLYTO"];
|
||||
}
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# 2) Uebrige Einlieferungen des email-workers (externe Mail, "delivered")
|
||||
#
|
||||
# Der Worker setzt X-SES-Worker-Processed auf JEDER Mail, die er einliefert:
|
||||
# delivered = Originalmail an das lokale Postfach
|
||||
# forwarded = neu komponierte Weiterleitung (rules-processor.ts)
|
||||
# ooo-reply = Abwesenheitsantwort
|
||||
# delivered = Originalmail an das lokale Postfach -> diese Regel
|
||||
# forwarded = neu komponierte Weiterleitung -> Regel 1
|
||||
# ooo-reply = Abwesenheitsantwort -> Regel 1
|
||||
#
|
||||
# Hier werden ausschliesslich die Transportpruefungen abgeschaltet. Alle
|
||||
# inhaltlichen Symbole bleiben aktiv, insbesondere SPOOF_REPLYTO.
|
||||
#
|
||||
# Die IP-Bedingung ist die Absicherung: ohne sie koennte ein externer Absender
|
||||
# den Header selbst setzen und die Auth-Pruefungen abschalten. Beide
|
||||
@@ -52,7 +107,7 @@ ses_worker_injected {
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# 2) Lokale Re-Injection ohne Worker-Header
|
||||
# 3) Lokale Re-Injection ohne Worker-Header
|
||||
#
|
||||
# Betrifft:
|
||||
# - Sieve-Redirects fuer INTERNE Mail (accounting@ -> support@ -> Forwards).
|
||||
@@ -64,8 +119,8 @@ ses_worker_injected {
|
||||
# Regel ersetzt sie - deutlich enger gefasst, weil sie an das Docker-Netz
|
||||
# gebunden ist statt an eine faelschbare Absenderdomain.
|
||||
#
|
||||
# Niedrigere Prioritaet als Regel 1: rspamd wertet Regeln nach Prioritaet aus
|
||||
# und nimmt den ersten Treffer, Worker-Mail landet also nie hier.
|
||||
# Niedrigste Prioritaet: rspamd wertet Regeln nach Prioritaet aus und nimmt
|
||||
# den ersten Treffer, Worker-Mail landet also immer in Regel 1 oder 2.
|
||||
#
|
||||
# ACHTUNG: Diese Regel setzt voraus, dass Port 25 NICHT oeffentlich erreichbar
|
||||
# ist (docker-compose.yml bindet ihn auf 127.0.0.1). Wird das je geaendert,
|
||||
|
||||
Reference in New Issue
Block a user