Rspamd Gewichtete Bewertung (Scoring-Logik)

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Gewichtete Bewertung und Scoring-Logik

Das Herzstück von Rspamd ist das mathematische Bewertungssystem. Anstatt eine E-Mail sofort zu löschen, summiert Rspamd die Ergebnisse aller Einzelprüfungen zu einem Gesamtergebnis (Score).

Prinzip der Schwellenwerte

In der Konfiguration werden Grenzwerte (Thresholds) definiert, die das Schicksal einer E-Mail bestimmen. Diese Werte verhindern, dass ein einzelner kleiner Fehler (z.B. ein fehlender SPF-Eintrag) sofort zur Ablehnung der Mail führt.

Greylisting (Score 2.0)

Der Absender wird temporär abgewiesen. Legitime Server senden die Mail nach wenigen Minuten erneut, während viele Spam-Bots den Zustellversuch abbrechen.

Add Header (Score 4.0)

Die Mail wird als verdächtig eingestuft. Rspamd fügt den Header 'X-Spam: Yes' hinzu. Dies dient als Signal für die spätere automatische Sortierung in den Junk-Ordner.

Reject (Score 15.0)

Die Mail wird als gefährlich oder eindeutiger Spam klassifiziert. Postfix bricht die SMTP-Verbindung zum Absender hart ab.


Konfiguration der Grenzwerte

Die zentralen Grenzwerte werden in der Datei 'actions.conf' festgelegt. Diese Steuerung gilt global für alle einlaufenden Nachrichten im Netzwerk it201.int bis it213.int.

Datei: /etc/rspamd/local.d/actions.conf

# Definition der harten Grenzen
reject = 15.0;
add_header = 4.0;
greylist = 2.0;

# Optische Markierung im Betreff ab einem gewissen Wert
rewrite_subject = 6.0;
subject = "[SPAM] %s";

Individuelle Gewichtung der Symbole

Jedes Modul (SPF, Bayes, Antivirus) liefert Symbole mit hinterlegten Punktwerten. Die Summe dieser Werte ergibt den Score. In der 'scores.inc' kann die Wichtigkeit der Prüfungen justiert werden.

Datei: /etc/rspamd/local.d/scores.inc

symbols {
    # Identitätsfehler (Punkt 1)
    "R_SPF_ALLOW" { score = -1.0; }
    "R_SPF_FAIL" { score = 3.0; }

    # Virenfunde (Punkt 3) sind absolut kritisch
    "CLAM_VIRUS" { score = 20.0; }

    # Statistische Analyse (Punkt 2)
    "BAYES_SPAM" { score = 5.0; }
    "BAYES_HAM" { score = -2.5; }
}

Erfolgskontrolle durch Scoring-Analyse

Die Wirksamkeit der Logik wird durch die Analyse der abgelehnten Mails verifiziert. Rspamd listet im Journal genau auf, welche Symbole zur Überschreitung des Grenzwerts geführt haben.

  • Befehl: journalctl -u rspamd -f | grep "action"

Beispiel für eine Ablehnung:

(default: F (reject): [17.50 / 15.00] [CLAM_VIRUS(20.00), R_SPF_ALLOW(-2.50)])

Hier überwiegt der Malus des Virenscanners (20.0) den Bonus der korrekten Identität (-2.5), was zum Reject führt.

Fazit zur Bewertung

Transparenz
Jede Filterentscheidung ist durch die Summe der Symbole mathematisch begründet.
Flexibilität
Die Schärfe des Filters lässt sich durch einfaches Verschieben der Schwellenwerte zentral steuern.
Sicherheit
Kritische Bedrohungen hebeln durch extrem hohe Punktwerte (20.0) alle anderen Vertrauensmerkmale sofort aus.