exim, rspamd, getmail

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

exim, rspamd, getmail

Beitrag von scientific » 24.10.2018 08:28:30

Hi Leute!

Ich habe jetzt mal rspamd auf meinem Mailserver installiert und in exim4 eingebunden, wie es auf der rspamd-Site vorgeschlagen wird.
Das funktioniert auch für Mails, die direkt bei meinem Mailserver eingeliefert werden sehr gut.

Ich habe aber noch Accounts bei verschiedenen Mailprovidern (Die bekannten mit dem "g" am beginn und auch bei dem mit dem "y" für div. Mailinglisten...), welche ich automatisiert mit getmail abhole und exim verfüttere. Die Option in meiner getmailrc ist dazu:

Code: Alles auswählen

[destination]
type = MDA_external
path = /usr/sbin/exim4
arguments = ("user@mailhost.tld",)
Diese Emails aber werden von rspamd nicht verarbeitet.
Lt. Anleitung der rspamd-Website sollte ein hinzufügen von

Code: Alles auswählen

spamd_address = 127.0.0.1 11333 variant=rspamd : 127.0.0.1 783
und eine entsprechende ACL für acl_check_data

Code: Alles auswählen

 deny
    message = This message scored $spam_score spam points.
    spam = debian-spamd:true
    condition = ${if >{$spam_score_int}{120}{1}{0}}
reichen.

Da ja die Zustellung über getmail keinen smtp-Dialog, und damit kein "data" im smtp-dialog hat, greift diese ACL aber nicht...
Soweit ich rausgefunden habe, ist die Zeite

Code: Alles auswählen

spam = debian-spamd:true
dafür verantwortlich, dass das Email zu rspamd geschickt und dort geprüft wird. Das "true" bewirkt, dass das in jedem Fall ausgeführt wird.

Aber wie baue ich rspamd in meine Exim-Config ein, dass auch Emails von Getmail von rspamd (oder auch spamassassin) geprüft werden?

Leider habe ich mir irgendwo einen Spammer eingefangen, der mir Mittel gegen Kratzer am Auto, Durchlauferhitzer und Halux-Valgus-Hilfe andrehen möchte, und die Emails so gut gestaltet, dass sie von den Spamfiltern meiner großen Provider nicht erkannt werden. Daher tät ich gerne einen eigenen Spamfilter trainieren, um diesen Müll zumindest auf meinem Server noch auszufiltern...

Die Infolage bei der Suchmaschine meines geringsten Misstrauens zum Thema exim4, dovecot und getmail ist sehr bescheiden bis nicht vorhanden. Kombinationen zweier Begriffe gibt es, aber alle 3 haben offenbar zu wenige im Einsatz, oder keine Probleme damit... Die Doku zu getmail ist überhaupt äußerst bescheiden... und rspamd lässt sich über router und transports in exim4 auch nicht aus...

lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

Benutzeravatar
format_c
Beiträge: 188
Registriert: 23.01.2008 14:24:17
Kontaktdaten:

Re: exim, rspamd, getmail

Beitrag von format_c » 24.10.2018 09:36:44

Hi,
findet sich was im mainlog File wenn Debiangetmail zustellt?
Ich frage mich, wie Debiangetmail überhaupt zustellt wenn nicht über SMTP.

Ich schätze eher, dass die Zustellung von localhost als vertrauenswürdig angesehen wird und damit der SPAM Scan entfällt.


P.S.
Ich verwende Exim in Kombination mit Debiangreylistd und Debianspamassassin (mit Debiansa-exim plugin).
Mit Debianrspamd habe ich bisher noch keine Erfahrungen gemacht.
[[ Black Holes are where God devided by 0 ]]

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: exim, rspamd, getmail

Beitrag von scientific » 24.10.2018 21:38:59

Offenbar erfolgt die Zustellung nicht über smtp.

In den Logs sehe ich, dass acl_check_not_smtp zum Zuge kommt.
Den selben Effekt habe ich auch, wenn ich mit

Code: Alles auswählen

echo "bla"|exim local.emailuser
ein Email absetze. Auch mit den Optionen "-bt -v -d" zusätzlich sehe ich, dass es kein SMTP-Dialog ist, und die ACL acl_check_not_smtp zum Zuge kommt. Damit wird auch die Spamprüfung in acl_check_data, welche im SMTP-Dialog beim Befehl "data" zum Zuge kommt, nicht verwendet und Emails von lokal (dazu zählt auch die Zustellung von Getmail) bekommen keine Spamprüfung.

Ich fand mal eine Anleitung (die ich jetzt nicht mehr finde), wo Exim so konfiguriert wurde, dass es mit einem Router das Email an einen Spamcheck-Prozess weiterreichte, und dann auf einem anderen Port von diesem Programm wieder entgegen nahm und weiter mit den Routern fortfuhr...

Ansich dürfte ja exim das in der Standard-Konfiguration, wenn

Code: Alles auswählen

spamd_address = 127.0.0.1 11333 variant=rspamd
gesetzt ist, das sehr ähnlich machen... aber halt irgendwie anders... ich finde auch keinen dazupassenden Router oder Transport... das dürfte also von exim irgendwie anders abgehandelt werden.
In der ACL die Zeile

Code: Alles auswählen

spam = name:true
löst die Spamprüfung aus... Wie geht das? Und warum funktioniert das in der ACL acl_check_not_smtp nicht?

lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

scientific
Beiträge: 3020
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: exim, rspamd, getmail

Beitrag von scientific » 24.10.2018 22:51:50

Ich glaub, ich hab es lösen können.

In der Doku zu exim fand ich, dass acl_not_smtp_start Actions ignoriert werden.
https://www.exim.org/exim-html-current/ ... lists.html

Dann hab ich meine Konfig noch einmal gecheckt und festgestellt dass folgendes gesetzt war:

Code: Alles auswählen

acl_not_smtp_start = acl_check_not_smtp
Hab das dann so abgeändert und nun wird die ACL nicht mehr ignoriert.

Code: Alles auswählen

acl_not_smtp = acl_check_not_smtp

Jetzt werden Emails. welche Getmail über /usr/sbin/exim4 einliefert auch auf Spam gecheckt.
Weiterhin werden Emails, die ich von der Commandline absetze oder Lokal verschickt werden, aber nicht auf Spam geprüft.

Solange ich das nicht im täglichen Betrieb geprüft habe, setze ich den Thread noch nicht auf gelöst.

lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

Antworten