Rspamd Bayes
Version vom 14. Dezember 2025, 18:26 Uhr von Thomas.will (Diskussion | Beiträge) (→Schritt 2: Score-Schwellen so setzen, dass nichts abgewiesen wird)
Ziel
- Spam wird erkannt
- Spam landet im Junk
- KEIN Reject
- KEIN Lernen
- Bayes nur vorbereitet
Schritt 1: Bayes ruhigstellen (aber nicht abschalten)
- vi /etc/rspamd/local.d/classifier-bayes.conf
backend = "sqlite3"; path = "/var/lib/rspamd/bayes.sqlite"; autolearn = false; min_tokens = 11;
- systemctl restart rspamd
Schritt 2: Score-Schwellen so setzen, dass nichts abgewiesen wird
- vi /etc/rspamd/local.d/actions.conf
add_header = 4; reject = 15;
- systemctl restart rspamd
Schritt 3: Keyword-Filter erzwingen (dein Hauptfilter)
- vi /etc/rspamd/local.d/multimap.conf
CUSTOM_KEYWORDS {
type = "content";
map = "/etc/rspamd/local.d/lists/junk_keywords.map";
regexp = true;
icase = true;
symbol = "CUSTOM_KEYWORD";
score = 10.0;
}
- systemctl restart rspamd
Schritt 4: Sicherstellen, dass Header gesetzt werden
- Test
- cat <<EOF | rspamc
From: a@b To: c@d Subject: viagra test
cheap viagra now EOF
- MUSS enthalten
- Action
- add header
- Symbol
- CUSTOM_KEYWORD
Schritt 5: Junk-Ablage NUR über Sieve (kein IMAPSieve, kein Lernen)
- vi /etc/dovecot/conf.d/90-sieve.conf
plugin {
sieve = ~/.dovecot.sieve
sieve_before = /var/lib/dovecot/sieve/spam-to-junk.sieve
}
- vi /var/lib/dovecot/sieve/spam-to-junk.sieve
require ["fileinto"];
if header :contains "X-Spam" "Yes" {
fileinto "Junk";
stop;
}
- sievec /var/lib/dovecot/sieve/spam-to-junk.sieve
- chown dovecot:dovecot /var/lib/dovecot/sieve/spam-to-junk.*
- systemctl restart dovecot
Schritt 6: Test mit echter Mail
- Betreff
- viagra
- Inhalt
- viagra
- Erwartung
- Mail kommt an
- NICHT gebounced
- landet im Junk
Schritt 7: Kontrolle
- grep -i spam /home/thomas.will/Maildir/.Junk/cur/* | head