Rspamd Bayes
Version vom 14. Dezember 2025, 18:29 Uhr von Thomas.will (Diskussion | Beiträge)
Ziel
- Spam wird erkannt
- Spam landet im Junk
- KEIN Reject
- KEIN Lernen
- Bayes nur vorbereitet
Schritt 0: Voraussetzungen prüfen
- Rspamd setzt Header nur bei add_header
- Dovecot muss Sieve im LMTP haben
- grep -R "protocol lmtp" /etc/dovecot/conf.d/20-lmtp.conf
- MUSS enthalten
- mail_plugins = $mail_plugins sieve
Schritt 1: Bayes ruhigstellen (nicht aktiv, nicht löschen)
- 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: Aktionen so setzen, dass NIE gebounced wird
- vi /etc/rspamd/local.d/actions.conf
reject = 999; greylist = 999; add_header = 6;
- systemctl restart rspamd
- Erklärung
- Score >= 6 → add_header → X-Spam
- Yes
- Reject ist faktisch unmöglich
Schritt 3: Hauptfilter – Keywords (DEIN Filter)
- mkdir -p /etc/rspamd/local.d/lists
- 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_KEYWORDS";
score = 10.0;
}
- vi /etc/rspamd/local.d/lists/junk_keywords.map
viagra cialis tadalafil penis enlargement xxx porn
- systemctl restart rspamd
Schritt 4: Funktionstest Rspamd (ohne Mailserver)
- cat <<EOF | rspamc
From: a@b To: c@d Subject: viagra test
cheap viagra now EOF
- MUSS ergeben
- Action
- add header
- Symbol
- CUSTOM_KEYWORDS
- Score >= 10
Schritt 5: Dovecot – Junk-Ablage NUR über Sieve
- KEIN imapsieve
- KEIN Lernskript
- KEIN Pipe
- vi /etc/dovecot/conf.d/90-sieve.conf
plugin {
sieve = ~/.dovecot.sieve
sieve_before = /var/lib/dovecot/sieve/spam-to-junk.sieve
}
- mkdir -p /var/lib/dovecot/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.*
- chmod 644 /var/lib/dovecot/sieve/spam-to-junk.*
- systemctl restart dovecot
Schritt 6: ECHTER Test
- Mail mit
- Subject
- viagra
- Body
- viagra
- Erwartung
- Mail wird angenommen
- Mail ist NICHT gebounced
- Mail liegt in
- ~/Maildir/.Junk/cur/
Schritt 7: Kontrolle
- ls /home/thomas.will/Maildir/.Junk/cur/