Spam-Problem auf .qmail-Adressen

Teufelskreis

NGBler
Registriert
14 Juli 2013
Beiträge
207
Hi,

ich administriere für einen Verein seit kurzem seine Internetpräsenz. Die haben auch relativ viele E-Mailadressen, für jeden Gruppenleiter eine eigene, für jede Gruppe eine und eine "allgemeine". Da die Gruppenleiter nicht noch ein Postfach überprüfen wollen, werden die E-Mails einfach weitergeleitet - früher mit dem Online-Ding von HostEurope, heute mit .qmail auf nem Uberspace (früher, als die Seite noch bei HostEurope gehostet war, waren alle Adressen mit [at] und [dot] auf nem Uralt-Joomla angegeben, also sind ungefähr alle Adressen in tausenden Spam- und Malwareverteilern). Die Gruppenadressen leiten die E-Mails an alle Gruppenleiter der Gruppe weiter, die allgemeine an alle Gruppenleiter des Vereins. Da es nur Weiterleitungen, keine Mailboxen sind, ist das mit Maildrop zusammen mit DSPAM und SpamAssasin etwas komplizierter, da habe ich schon mit dem Uberspace-Support drüber gequatscht, der vorschlug, einfach trotzdem Mailboxen zu erstellen, da müssten die Leiter halt durch, oder für jede Adresse nen eigenen Filter zu erstellen. Habe also zweiteres gemacht und in jede .qmail-Adressenname reingeschrieben:
[src=bash]|maildrop filter-Adressenname[/src]

dieser Filter sieht so aus:
[src=bash]
MAXSPAMSCORE="3"
logfile "$HOME/mailfilter.log"

RECEIVER="!leiterdurch.6-stellige-kombination@domain.de"
SPAM_RECEIVER="!6-stellige-kombination.spam@domain.de"
# set default Maildir
MAILDIR="$HOME/Maildir"

# show the mail to SpamAssassin
xfilter "/usr/bin/spamc"

# now show the mail to DSPAM
xfilter "/package/host/localhost/dspam/bin/dspam --mode=teft --deliver=innocent,spam --stdout"

# if whitelisted by DSPAM just deliver
if ( /^X-DSPAM-Result: Whitelisted/)
{
to "$RECEIVER"
}

# process SPAM
if ( /^X-Spam-Level: \*{$MAXSPAMSCORE,}$/ || /^X-DSPAM-Result: Spam/)
{
RECEIVER="$SPAM_RECEIVER"
}

# and finally, deliver everything that survived our filtering
to "$RECEIVER"
[/src]

Das funktioniert für viele E-Mails auch gut, die gefilterten E-Mails kriege ich auf eine Adresse ohne Spam-Filter zur Analyse.. In der z.B. .qmail-leiterdurch:xf29dd stehen dann einfach alle Adressen der zugehörigen Gruppe wie bei einer normalen .qmail. Allerdings überleben immernoch einzelne E-Mails, ich sehe aber nur in der mailfilter.log:
[src=text]
Date: Tue Mar 22 15:32:57 2016
From: =?UTF-8?B?QW5hIGhld2FyZA==?= <hewardAna191@appletelecom.kz>
Subj: =?UTF-8?B?WW91IGFyZSBiZWluZyBhY2N1c2VkIHdpdGggYm9kaWx5IGluanVyeSAoQ2FzZT
File: !leiterdurch.jfe39w@domain.de (7048)

Date: Tue Mar 22 17:27:28 2016
From: Alisha Downs <Downs.Alisha65@pgsm.nl>
Subj: Urgent: F498638 Sobranie/ HPE
File: !leiterdurch.hewf3e@domain.de (100867)[/src]

Das heißt, diese E-Mails sind durchgekommen, obwohl sie offensichtlich Spam sind. Leider kann ich die nicht analysieren, weil ich nicht im entsprechenden Verteiler bin. Gibt es irgendeine Möglichkeit, dem Spam-Filter diese E-Mails beizubringen? Die liegen ja leider in keiner Mailbox, die ich DSPAM geben könnte.. Über Ideen und Anregungen würde ich mich freuen -- nutzt es was, die MAXSPAMSCORE anzupassen? Ich bedanke mich schon mal im Voraus :-)
 
Wie ist denn euer Verein so aufgestellt? Sonst mach doch als erstes eine IP-Blacklist für die halbe welt per iptables z.B. und eine Begrenzung der Domain-Endungen des Absenders könnte auch ein Stück helfen.
 
Joah, alles außer Zentraleuropa zu sperren ist ja schon mal ne super Lösung, wenn man keinen Kontakt mit Leuten aus dem Bereich hat.

Selbst bei mittleren Firmen hatte ich das schon so gemacht, für einzelne Domains kann man dann ja ne Whitelist anlegen.
 
Hatte eine ähnliche Idee, dann aber gelesen, dass tausende iptables-rules ziemlich ressourcen-hungrig sein sollen und man das eher unterlassen sollte. Keine Ahnung ob das tatsächlich so ist.

Bin dann auf eine Country DNS Blacklist auf gestoßen, was prinzipiell gut funktioniert, wenn man sich leisten kann, ganze Regionen zu blockieren.
 
  • Thread Starter Thread Starter
  • #5
N'abend :)

Danke erst mal für eure Antworten. Ich habe schon eine kleine Änderung gestern Abend am Setup vorgenommen: Ich nehme alle E-Mails, die durchgelassen werden, mit einem
[src=bibtex]./.mailfile[/src]
in der .qmail-leiterdurch.*-Datei in eine Text-Datei auf. Wenn mir dann im Logfile eine verdächtige E-Mail auffällt, bitte ich einen Empfänger dieser E-Mail, die Datei zu öffnen und mir den Inhalt zu schicken, aus Angst gegen das Fernmeldegeheimnis zu verstoßen (was ich aber wohl eh tu, weil ich die Datei erst runterladen und dem Empfänger schicken muss, weil ich der einzige mit SSH-Zugriff auf den Uberspace bin). Daraus kann ich dann fälschlicherweise als nicht-Spam markierte E-Mails extrahieren und DSPAM nochmal geben. War heute zum Glück nur eine von einer schweizerischen Adresse, versendet von einem koreanischen Server. Interessanterweise war es eine E-Mail, die sich ausgab, eine Rechnung von Sixt zu beinhalten, in dessen Anhang sich eine .doc-Datei befand, also vermutlich ein Locky-Virus, trotzdem hat es von DSPAM bei erster Bewertung 98% Vertrauen und von SpamAssassin einen Spamscore 0/5 (einziges "Manko": HTML-E-Mail) bekommen, obwohl es kein gültiges HELO (nämlich Kauderwelsch ohne Serverangabe) gab. Alle anderen Mails - auch weitere "Sixt"-Rechnungen, wurden richtig beurteilt. Klar ist mir aber auch, dass DSPAM Malware nicht erkennen kann und der SpamAssassin von seiten Uberspace nur alle drei Stunden mit aktuellen Hashs über Spam-Mails versorgt wird.

Ländersperren klingen gut, es gibt keinen sinnvollen E-Mailverkehr, der nicht von einem Provider aus einem deutschen Nachbarland und Schweden kommt. Eine IP-Sperre aber ist nicht so eine gute Idee, weil Gruppenleiter sich auch mal in Afrika engagieren oder in Asien Urlaub machen, außerdem wissen wir auch nie, wo sich unsere Gesprächspartner aufhalten - fängt ja schon bei Uberspace an, wenn der Mitarbeiter gerade auf Fidschi ist, sollte seine Mail ja trotzdem ankommen. Haben etwa 300 Mitglieder und 50 Gruppenleiter, jeden Urlaub eines Gruppenleiters von Hand in einer Whitelist freizuschalten empfinde ich als etwas anstrengend ... Wenn man aber E-Mailadressen mit *.tk o.ä. sperrt ist das eigentlich schon mal eine gute Idee, dann würde ich die Mails aber am liebsten in der Annahme verweigern, um einen SMTP-Fehler zu erzeugen, statt selber zu bouncen, selber bouncen will ich nicht. Allerdings tut SpamAssassin doch quasi das selbe, oder?

Bleibt noch eine letzte Frage - wie funktionieren eigentlich die Spam-Filter von den privaten Adressen, die die (durchgelassenen) Mails bekommen? Wenn was durchkommt, krieg ich meistens Meldung vom DAEMON, dass gmail, t-online und posteo die Annahme verweigert haben, aber bei GMX und web.de flutscht es einfach durch und wird auch nicht als Spam erkannt, sondern landet wohl im Postfach. Kriege ich meinen Spam-Filter auf "kleiner" Serverebene überhaupt so stark wie den der Telekom? Ist das Spam-Filter-Trainieren von Google, Telekom und Co. auch nur ein tausendfaches Füttern von DSPAM mit Spam und Ham? Oder bringt es nichts, jeden Tag eine falsch eingestufte E-Mail DSPAM von Hand zurückzugeben, weil DSPAM nur bei Masse neu lernt?
 
Kriege ich meinen Spam-Filter auf "kleiner" Serverebene überhaupt so stark wie den der Telekom?

Spannende Frage. Ich experimentiere auch gerade mit verschiedenen Möglichkeiten zur Spambekämpfung. Wenn du was interessantes rausfindest, bitte lass es mich wissen.

Ist das Spam-Filter-Trainieren von Google, Telekom und Co. auch nur ein tausendfaches Füttern von DSPAM mit Spam und Ham?

Ich denke, deren Stärke liegt darin, dass Millionen von Mails hier täglich durchwandern, man sie in großem Stil analysieren und Absender bewerten kann und Mails auch von Usern selbst als Spam markiert werden.

Ich habe auf unseren Servern überraschend gute Resultate mit Greylisting zusätzlich zu Amavis/Spamassassin und ein paar DNS Blocklists erreicht. Die Zahl der zugestellten Nachrichten ist dadurch um fast 30 Prozent (!) gesunken. Anfangs gab es mit ein paar Absendern Probleme (false Positives), aber nach ein paar Wochen war unsere Whitelist eigentlich vollständig und ich hab keine Beschwerden von den Benutzern mehr gehört.

Manche Benutzer klagen aber dennoch über eine hohe Zahl von Spammails. Ich möchte deshalb so bald wie möglich soetwas wie einrichten, das Benutzer auf Wunsch aktivieren können. Neue Sender erhalten eine automatische Antwort, dass sie einen Link klicken müssen, bevor ihre Mails durchgestellt werden. Das ist vielleicht nicht für Nutzer praktikabel, die ständig Mails von "neuen Leuten" bekommen, für den Durchschnittsbenutzer sollte soetwas aber durchaus sinnvoll sein.
 
Eine IP-Sperre aber ist nicht so eine gute Idee, weil Gruppenleiter sich auch mal in Afrika engagieren oder in Asien Urlaub machen, außerdem wissen wir auch nie, wo sich unsere Gesprächspartner aufhalten - fängt ja schon bei Uberspace an, wenn der Mitarbeiter gerade auf Fidschi ist, sollte seine Mail ja trotzdem ankommen.

Ich glaube, da hast du was falsch verstanden – du sollst nicht die IPs der Clients sperren, sondern IPs von Mailservern. Glaube kaum, dass der Gruppenleiter auf Fiji sich nen eigenen Mailserver aufsetzt, um zu kommunizieren ;)

SMTP-Auth über TLS ist ja eh Pflicht.
 
Ich habe seit jahren sehr gute Erfahrung mit ASSP gemacht.
Habe vor ca. 3 Wochen auf einem neuen Server das ganze neu Eingerichtet mit etwas anderen Einstellungen als sonst - daher sind die Statistiken über welche Filtermethode wieviel hängen bleibt noch nicht sonderlich Aussagekräftig. Kann aber hier gerne dann noch mal in 1-2 Wochen was posten.

Mit der Software sind jedenfalls ohne Weiteres Filterungen auf Enterprise-Niveau möglich - und die könnte auch mehrere Mio. Mails verarbeiten. Braucht aber in der Basis-Config schon ~1GB ram - daher eher weniger was für sowas wie ueberspace :)
 
ja das ist die Statistik von ASSP von mir seit dem letzten Neustart. Es gibt eine Statistik-Api die auf einem Port lauscht, somit könnte man das wohl auch irgendwo einbinden...
Da ich die Infos aber nicht wirklich brauche - bzw. mir es reicht das alle paar Monate mal anzuschauen um vielleicht was nach zu justieren oder falls halt mehr spam-mails raus kommen habe ich mir das nie weiter angeschaut.

 
Zurück
Oben