Re: RSPAMD Grundsätzliches

Carsten Rosenberg cr at ncxs.de
Mo Nov 27 21:16:38 CET 2023


Hey,

On 27.11.23 08:55, Patrick Ben Koetter via Postfixbuch-users wrote:
> Guten Morgen,
> 
> Am 22.11.23 um 17:56 schrieb usenet--- via Postfixbuch-users:
>>
>> Hallo zusammen,
>>

>>
>> Soweit läuft das Setup recht gut, aber vermissen tue ich einige nicht 
>> unwichtige Dinge:
>>
>> Eine Einbindung von Virenscannern und Rückmeldung/Infos an den Empfänger.
>> Über Amavisd hatte ich die Möglichkeit, Rückmeldungen bei Vireneingang 
>> anzulegen z.B.
>>
>> "Sie haben gerade eine Email von xxx erhalten die einen Virus enthält. 
>> Die Mail wurde in Quarantäne gestellt (Nr.: E56729B)" usw...
>>
> rspamd implementiert kein Management für solche Dinge. Du kannst Dir mit 
> LUA was selbst schreiben. Genau darin unterscheiden sich rspamd und 
> amavis in Funktion. rspamd ist ein Content Filter und amavis ist ein 
> Content Filter Framework, welches individuell diverse classifier 
> einbindet, deren Ergebnisse auswertet und dann unterschiedliche Actions 
> ausführt (Äpfel vs. Birnen).
> 

Ich sehe auch den Rspamd eher als Content-Filter-Framework oder 
eigentlich als Mail-Processing Framework. Neben der reinen Erkennung, 
bindet Rspamd dutzende Dienste an und kann auf die einzelnen internen 
und externen Rückmeldungen sehr flexibel aggregieren und darauf 
reagieren. Wir nutzen den Rspamd auch sehr gern zur 
Verarbeitung/Änderung von Mails.

Ich finde die Möglichkeiten im Rspamd viel flexibler als im Amavis 
damals. Aber durch die vielen Möglichkeiten, gibt es auch viele Wege zum 
Ziel und keine eindeutige Vorgehensweise.
Rspamd kommt eben nicht mit einem voll ausgestatteten Regelset, dass nur 
anpasst werden muss. Neben ein paar Default-Einstellungen musst du es 
dir selbst zusammen stellen.

Hier gibt es in der Doku, wie Patrick schon sagte keinen roten Faden.

Einbindung von Virenscannern in Antivirus oder (ICAP) in External 
Services. Notifications generiert Milter Headers.

Eine Quarantäne gibt es nicht, finde ich auch immer noch nur selten 
empfehlenswert. Aber die Mail kann über Metadata Exporter per Mail oder 
HTTP ausgeleitet werden. Oder als poor man's quarantine kannst du die 
Mails in die Postfix HOLD packen.

--> force_actions.conf

RATELIMIT_HOLD {
   action = "quarantine";
   expression = "RATELIMIT_HOLD";
   message = "HOLD - limits exceeded";
}

> 
>> Bei Bedarf konnte ich als Admin dann mal schauen was mit der Email ist 
>> und nach Prüfung weitere Infos an den Kunden geben, oder sogar die 
>> Email retten.
>> Bei RSpamD hab ich noch keine Möglichkeit gefunden, Infos vom 
>> Virenscanner an RSpamD zurückzubekommen. Was bei Spoofing und Phishing 
>> Tests (unofficial-sigs) usw. schön wäre. Also die Rewrite Subject 
>> verfeinert mit: ***SPAM***, ***SPOOFING***, ***PHISHING***, ***VIRUS 
>> erkannt***.  Einen Virus einfach rejecten finde ich nicht so gut, 
>> sondern erst mal zu Seite legen und berichten.

Rspamd setzt bei einem Virenfund ein Symbol wie CLAMAV_VIRUS und in 
Klammern dazu den Virusnamen. Das kannst du weiter verarbeiten. Das 
Symbol quasi überall, den Virusnamen über Composites oder auch in den 
Milter Headers oder eben auch in LUA.

Wir kategorisieren Viren via Patters z.B. nach Spam, Phishing usw. in 
eigene Symbole. In den Force Actions kannst du dann auch das gewünschte 
Rewrite durchführen:

--> force_actions.conf

ENCRYPTED_ATTACHMENT_REWRITE {
   action = "rewrite subject";
   subject = "[ENCRYPTED] %s";
   expression = "MIME_ENCRYPTED_ARCHIVE | GROUP_ENCRYPTED_ATTACHMENT";
   honor_action = ["reject", "discard", "soft reject"]
}

>> Gibt es über die Zahlreichen Install Seiten im Web auch eine Seite die 
>> über die Standards hinausgeht und solche Feinheiten besser beschreibt. 
>> Die RspamD Docs sind nicht immer sehr Aufschlussreich. Oder gibt es 
>> einen /etc/rspamd Ordner mit Beispielconfigs?

Ich denke wirklich durchdacht und detailliert gibt es das nicht als 
Howto. Ich geb aber immer gern den Tipp, die direkten 
Reject-Möglichkeiten nicht zu nutzen und die Auswertung zentral in 
Composites/Force Actions zu machen. Dann ist man sehr flexibel.

Wie haben dieses Jahr einen Live-Workshop angefangen. Leider sind 3h nix 
bei all den Möglichkeiten (daher ist das noch sehr unvollständig). Ein 
paar Zeilen zu unseren Ideen und die Beispielconfigs findest du hier:

https://github.com/HeinleinSupport/rspamd-slac-2023/

Wir bauen dieses Jahr bestimmt noch weiter daran.

Wenn du konkrete Fragen zum Rspamd hast, frag gern dazu nach.

Viele Grüße

Carsten

>>
> Die Doku von rspamd ist nicht immer vollständig und ist eher eine 
> Anwendungsdokumentation. Wie man rspamd anwendet sagt die Doku nicht.
> 
> p@
> 
> 
>> Besten Dank für Hilfe und Tipps
>>
>> Christian
>>
>>
>>
>>
>>
> -- 
> [*] sys4 AG
> 
> https://sys4.de, +49 (89) 30 90 46 64
> Schleißheimer Straße 26/MG,80333 München
> 
> Sitz der Gesellschaft: München, Amtsgericht München: HRB 199263
> Vorstand: Patrick Ben Koetter, Marc Schiffbauer, Wolfgang Stief
> Aufsichtsratsvorsitzender: Florian Kirstein
> 


Mehr Informationen über die Mailingliste Postfixbuch-users