Rspamd Neu: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „== Installation und Konfiguration von Rspamd mit Postfix und Dovecot == Dieses Tutorial beschreibt die Integration von Rspamd als Milter in Postfix, die Anbin…“)
 
Zeile 1: Zeile 1:
== Installation und Konfiguration von Rspamd mit Postfix und Dovecot ==
+
== Installation von Rspamd, Postfix und Dovecot ==
  
Dieses Tutorial beschreibt die Integration von Rspamd als Milter in Postfix, die Anbindung an ClamAV zur Virenerkennung sowie die automatische Spam-Sortierung in Dovecot mittels Sieve.
+
Um ein funktionsfähiges Anti-Spam-System aufzubauen, müssen die Pakete für den Filter, den Virenscanner und die Sieve-Erweiterung installiert werden.
  
=== Voraussetzungen ===
+
=== Paketinstallation ===
  
* Installiertes Postfix und Dovecot (LMTP-Setup)
+
Die Installation erfolgt unter Debian/Ubuntu über die Standard-Repositorys:
* Installiertes ClamAV (clamav-daemon)
+
* apt update
* Betriebssystem: Debian / Ubuntu (Pfade können bei RHEL/CentOS variieren)
+
* apt install rspamd clamav-daemon dovecot-sieve dovecot-managesieved
  
=== 1. Rspamd Grundlagen-Konfiguration ===
+
=== Rspamd: Modul-Konfiguration ===
  
Konfigurationsverzeichnis:
+
Die Steuerung erfolgt über Dateien im Verzeichnis /etc/rspamd/local.d/.
* /etc/rspamd/local.d/
 
 
 
==== Virenscanner (ClamAV) einbinden ====
 
  
 +
==== Virenscanner-Anbindung (ClamAV) ====
 
Datei: /etc/rspamd/local.d/antivirus.conf
 
Datei: /etc/rspamd/local.d/antivirus.conf
 
<pre>
 
<pre>
Zeile 28: Zeile 26:
 
</pre>
 
</pre>
  
==== Bayes-Filter (Spam-Lernen) aktivieren ====
+
==== Statistischer Filter (Bayes) ====
 
 
 
Datei: /etc/rspamd/local.d/classifier-bayes.conf
 
Datei: /etc/rspamd/local.d/classifier-bayes.conf
 
<pre>
 
<pre>
Zeile 42: Zeile 39:
 
</pre>
 
</pre>
  
==== Web-Interface (Controller) konfigurieren ====
+
==== Web-Interface Zugriff ====
 
 
 
Datei: /etc/rspamd/local.d/worker-controller.inc
 
Datei: /etc/rspamd/local.d/worker-controller.inc
 
<pre>
 
<pre>
 
bind_socket = "127.0.0.1:11334";
 
bind_socket = "127.0.0.1:11334";
password = "$2$abcdef..."; # Generiert mit: rspamadm pw
+
password = "$2$abcdef..."; # Erstellt via: rspamadm pw
 
</pre>
 
</pre>
  
=== 2. Postfix Integration ===
+
=== Postfix: Milter-Integration ===
 
 
Damit Postfix mit Rspamd kommunizieren kann, wird Rspamd als Milter (Mail Filter) eingebunden.
 
  
==== Berechtigungen setzen ====
+
Damit Postfix jede Mail an Rspamd zur Prüfung übergibt, wird die Milter-Schnittstelle konfiguriert.
  
Der Postfix-Benutzer muss Zugriff auf den Rspamd-Socket haben.
+
==== Berechtigungen ====
 +
Der User postfix muss in die Gruppe rspamd aufgenommen werden, um auf den Socket zugreifen zu können:
 
* usermod -aG rspamd postfix
 
* usermod -aG rspamd postfix
  
 
==== Postfix Hauptkonfiguration ====
 
==== Postfix Hauptkonfiguration ====
 
 
Datei: /etc/postfix/main.cf
 
Datei: /etc/postfix/main.cf
 
<pre>
 
<pre>
# Rspamd Milter Konfiguration
+
# Milter-Einstellungen für Rspamd
 
smtpd_milters = unix:/var/lib/rspamd/rspamd.sock
 
smtpd_milters = unix:/var/lib/rspamd/rspamd.sock
 
non_smtpd_milters = unix:/var/lib/rspamd/rspamd.sock
 
non_smtpd_milters = unix:/var/lib/rspamd/rspamd.sock
Zeile 70: Zeile 64:
 
</pre>
 
</pre>
  
Dienste neu starten:
+
Dienste aktualisieren:
 
* systemctl restart rspamd
 
* systemctl restart rspamd
 
* systemctl restart postfix
 
* systemctl restart postfix
  
=== 3. Dovecot Integration (Spam-Sortierung) ===
+
=== Dovecot: Sieve-Sortierung (Spam-to-Junk) ===
 
 
Damit Mails mit dem Header "X-Spam: Yes" automatisch im Ordner "Junk" landen, wird das Sieve-Plugin genutzt.
 
  
==== Dovecot LMTP mit Sieve erweitern ====
+
Hier wird festgelegt, dass Mails mit Spam-Markierung automatisch in den Junk-Ordner verschoben werden.
  
 +
==== LMTP-Plugin Aktivierung ====
 
Datei: /etc/dovecot/conf.d/20-lmtp.conf
 
Datei: /etc/dovecot/conf.d/20-lmtp.conf
 
<pre>
 
<pre>
Zeile 87: Zeile 80:
 
</pre>
 
</pre>
  
==== Globale Sieve-Regel erstellen ====
+
==== Sieve-Regel (Global) ====
 
 
 
Datei: /var/lib/dovecot/sieve/default.sieve
 
Datei: /var/lib/dovecot/sieve/default.sieve
 
<pre>
 
<pre>
Zeile 99: Zeile 91:
 
</pre>
 
</pre>
  
Sieve-Regel kompilieren:
+
Regel aktivieren und Dovecot neu starten:
 
* sievec /var/lib/dovecot/sieve/default.sieve
 
* sievec /var/lib/dovecot/sieve/default.sieve
 
Dienst neu starten:
 
 
* systemctl restart dovecot
 
* systemctl restart dovecot
  
=== 4. Testen und Validierung ===
+
=== Validierung und Tests ===
 
 
==== Test mit EICAR (Virus) ====
 
 
 
Simulation einer infizierten Mail (Inhalt ist ein Test-String):
 
* echo 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*' | mail -s "Virus Test" user@example.com
 
  
==== Logs prüfen ====
+
==== EICAR-Virus Test ====
 +
Sendet eine Test-Mail mit dem Standard-Virenstring:
 +
* echo 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*' | mail -s "Virus-Test" user@example.com
  
In Echtzeit mitverfolgen, wie Rspamd die Mail bewertet:
+
==== Log-Überwachung ====
 +
Prüfung der Rspamd-Entscheidungen (Score, Symbole, Action):
 
* tail -f /var/log/rspamd/rspamd.log
 
* tail -f /var/log/rspamd/rspamd.log
* journalctl -u postfix -f
 
 
=== 5. Manuelles Training ===
 
 
Falls eine Spam-Mail durchschlüpft, kann der Filter manuell trainiert werden:
 
* rspamc learn_spam < /pfad/zu/spam.eml
 
* rspamc learn_ham < /pfad/zu/gute-mail.eml
 
  
 
== Fazit ==
 
== Fazit ==
Durch die Kombination von Postfix (MTA), Rspamd (Filter/Milter), ClamAV (Scanner) und Dovecot Sieve (Sortierung) ist das Mail-System vollautomatisiert gegen Spam und Viren geschützt.
+
Durch die Installation der Pakete und die anschließende Verknüpfung über Milter (Postfix) und Sieve (Dovecot) ist das System in der Lage, Mails automatisiert zu filtern und zu sortieren.

Version vom 18. März 2026, 17:36 Uhr

Installation von Rspamd, Postfix und Dovecot

Um ein funktionsfähiges Anti-Spam-System aufzubauen, müssen die Pakete für den Filter, den Virenscanner und die Sieve-Erweiterung installiert werden.

Paketinstallation

Die Installation erfolgt unter Debian/Ubuntu über die Standard-Repositorys:

  • apt update
  • apt install rspamd clamav-daemon dovecot-sieve dovecot-managesieved

Rspamd: Modul-Konfiguration

Die Steuerung erfolgt über Dateien im Verzeichnis /etc/rspamd/local.d/.

Virenscanner-Anbindung (ClamAV)

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

clamav {
  scan_mime_parts = true;
  scan_text_mime = true;
  scan_image_mime = true;
  symbol = "CLAM_VIRUS";
  type = "clamav";
  servers = "/run/clamav/clamd.ctl";
}

Statistischer Filter (Bayes)

Datei: /etc/rspamd/local.d/classifier-bayes.conf

enabled = true;
autolearn = true;
backend = "sqlite3";

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

backend = "sqlite3";

Web-Interface Zugriff

Datei: /etc/rspamd/local.d/worker-controller.inc

bind_socket = "127.0.0.1:11334";
password = "$2$abcdef..."; # Erstellt via: rspamadm pw

Postfix: Milter-Integration

Damit Postfix jede Mail an Rspamd zur Prüfung übergibt, wird die Milter-Schnittstelle konfiguriert.

Berechtigungen

Der User postfix muss in die Gruppe rspamd aufgenommen werden, um auf den Socket zugreifen zu können:

  • usermod -aG rspamd postfix

Postfix Hauptkonfiguration

Datei: /etc/postfix/main.cf

# Milter-Einstellungen für Rspamd
smtpd_milters = unix:/var/lib/rspamd/rspamd.sock
non_smtpd_milters = unix:/var/lib/rspamd/rspamd.sock
milter_default_action = accept
milter_protocol = 6

Dienste aktualisieren:

  • systemctl restart rspamd
  • systemctl restart postfix

Dovecot: Sieve-Sortierung (Spam-to-Junk)

Hier wird festgelegt, dass Mails mit Spam-Markierung automatisch in den Junk-Ordner verschoben werden.

LMTP-Plugin Aktivierung

Datei: /etc/dovecot/conf.d/20-lmtp.conf

protocol lmtp {
  mail_plugins = $mail_plugins sieve
}

Sieve-Regel (Global)

Datei: /var/lib/dovecot/sieve/default.sieve

require ["fileinto"];

if header :contains "X-Spam" "Yes" {
  fileinto "Junk";
  stop;
}

Regel aktivieren und Dovecot neu starten:

  • sievec /var/lib/dovecot/sieve/default.sieve
  • systemctl restart dovecot

Validierung und Tests

EICAR-Virus Test

Sendet eine Test-Mail mit dem Standard-Virenstring:

  • echo 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*' | mail -s "Virus-Test" user@example.com

Log-Überwachung

Prüfung der Rspamd-Entscheidungen (Score, Symbole, Action):

  • tail -f /var/log/rspamd/rspamd.log

Fazit

Durch die Installation der Pakete und die anschließende Verknüpfung über Milter (Postfix) und Sieve (Dovecot) ist das System in der Lage, Mails automatisiert zu filtern und zu sortieren.