Hallo Gerald, ich hab das nochmal nachgelesen
---snip
http://www200.pair.com/mecham/spam/bypassing.html
Here is also another way to reduce the spam score for SASL auth users that can be used with Postfix version 2.1 or newer. This should add a 'X-SMTP-Auth: no' header to all messages except authenticated. The SpamAssassin rule then adds -10 points if this header is missing:
# In main.cf: smtpd_data_restrictions = reject_unauth_pipelining permit_sasl_authenticated check_client_access regexp:/etc/postfix/add_auth_header.regexp # In /etc/postfix/add_auth_header.regexp: /^/ PREPEND X-SMTP-Auth: no
# In SpamAssassin's local.cf: header __NO_SMTP_AUTH X-SMTP-Auth =~ /^no$/m meta SMTP_AUTH !__NO_SMTP_AUTH describe SMTP_AUTH Message sent using SMTP Authentication tflags SMTP_AUTH nice score SMTP_AUTH -10
I suggest you do not use X-SMTP-Auth literally. I would obscure this by using a X-something-else header name of your choice, and if you have more than one machine, I suggest using something different on each. In order to prevent confusion (the header would end up getting written again after the message was processed by amavisd-new), you should override smtpd_data_restrictions on the amavisd-new reinjection port. In master.cf add -o smtpd_data_restrictions=
127.0.0.1:10025 inet n - n - - smtpd -o content_filter= -o smtpd_data_restrictions= [other typical amavisd-new reinjection port overrides] ---snip
hast du -o smtpd_data_restrictions= sonst produzierst du wahrscheinlich die auth header doppelt
und bei mehreren server verschiedene auth header? ausserdem wird geraten den haeder zu obscuren, wahrscheinlich deshalb weil man ihn eben auch faelschen koennte, ich hab den von dir beschriebenen Fehler aber auf meinen Server nicht provozieren koennen egal wie ich es versucht hab
Robert Schetterer schrieb:
Hallo Gerald, ich muesste das mal nachsehen, du hast recht alle nicht authentifizierten sollen im header X-SMTP-Auth: no bekommen
ich hab
smtpd_data_restrictions = permit_mynetworks, permit_sasl_authenticated, check_client_access regexp:/etc/postfix/add_auth_header.regexp, reject_multi_recipient_bounce, reject_unauth_pipelining, permit
/etc/postfix/add_auth_header.regexp
/^/ PREPEND X-SMTP-Auth: no
/etc/mail/spamassassin/local.cf
header __NO_SMTP_AUTH X-SMTP-Auth =~ /^no$/ meta SMTP_AUTH !__NO_SMTP_AUTH describe SMTP_AUTH Message sent using SMTP Authentication tflags SMTP_AUTH nice score SMTP_AUTH -10
das fuehrt im spamassassin zu...
X-Spam-Status: No, score=-10.7 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VERIFIED,DK_POLICY_TESTING,DK_SIGNED,DK_VERIFIED,MISSING_SUBJECT, NO_REAL_NAME,SMTP_AUTH,SPF_HELO_PASS autolearn=ham version=3.1.9
bei authentifizierten usern funktioniert also
ich muesste erst mal eine mail produzieren in der X-SMTP-Auth: no schon drinn steht ich habs mal mit bounce probiert, aber auch hier wird grundsaetzlich die mail als neu erkannt und der vorhandene X-SMTP-Auth: no nicht interpretiert
ich grueble grad wie ich das Verhalten provozieren kann faellt dir was ein dann koennte ich es testen
Gerald Nowitzky schrieb:
Hallo!
Nein, wenn die Headerzeile "X-SMTP-Auth: no" **fehlt**, soll geniced werden, also ein hoher negativer score dazu. Bei allen Mails von nicht authentifizierten quellen wird der Header hinzugefügt und damit **nicht** geniced.
Das Problem ist, dass, wenn die Headerzeile zweimal da ist, auch geniced wird - (für mich) unerklärlicherweise.
Bis dann! (Gerald)
Robert Schetterer robert@schetterer.org hat am 23. Juli 2008 um 14:58 geschrieben:
Hallo Gerald,
Gerald Nowitzky schrieb:
Hallo! Einen kleinen Kollateralschaden gibts doch:
An sich klappt alles bestens. Die Lösung mit dem X-SMTP-Auth scheint aber ein loch zu haben; nämlich wenn ein Spammer eine Mail mit einem "X-SMTP-Auth: no" im Header schickt. Dann sieht es im Header nach dem Postfix so aus:
X-SMTP-Auth: no X-SMTP-Auth: no
vieleicht irre ich mich hier ( jemand ders besser weiss moege sich
melden )
negativer score ist doch erwuenscht, works as desinged wenn das 2 mal drin steht sollte es auch egal sein rein technisch
Unschoen ist wenn die mail von haus aus schon X-SMTP-Auth: no im header enthaelt enthaelt funktioniert die Methode halt nicht zuverlaessig
aber du koenntest ja auch z.B
X-SMTP-Auth-OK oder sowas verwenden
zuverlaessig kannst du spam flagging nur dann verhindern wenn du deine authentifizierten User am Amavis/spamassassin vorbeileitest, da sind diverse methoden denkbar
und das führt, aus irgendeinem Grund, dazu, dass die Mail geniced wird (also einen negativen score bekommt)
In der local.cnf des Spamassassin steht:
header __NO_SMTP_AUTH X-SMTP-Auth =~ /^no$/ meta SMTP_AUTH !__NO_SMTP_AUTH describe SMTP_AUTH Message sent using SMTP Authentication tflags SMTP_AUTH nice score SMTP_AUTH -200
Was läuft da schief? Wird das Flag beim Spamassassin wieder
invertiert?
Kann ich das verhindern? Kann ich irgendwie verhindern, dass das X.SMTP-Auth: no zweimal im Header erscheint - also den Eintrag unterdrücken, wenn er schon da ist?
Alternativ könnte ich natürlich einfach auch den Header verändern,
aber
das ist ja eigentlich keine richtige Lösung.
Vielen Dank! (Gerald)
Gerald Nowitzky whl@igne.de hat am 16. Juli 2008 um 10:38
geschrieben:
Hallo!
also, erstmal vielen Dank an alle für die ausführlichen und detaillierten Vorschläge! Ich habe die Lösung von Roland mit dem zusätzlichen Header bei nicht-authentifizierten Mails verwendet. Die ist "fälschungssicher", weil da eine Headerzeile bei externen Mails hinzugefügt wird. Da ein nicht authentifizierter Mail/Spamsender nur eine gefälschte Headerzeile anfügen kann, aber nicht löschen, kann diese Funktion auch nicht missbraucht werden.
"Kollateralschäden" sind mir bisher noch keine bekannt geworden ;-)
Die Lösung mit dem "smtpd_sasl_authenticated_header = yes" wollte ich nicht nehmen, weil dann a) Der Benutzername im Header erscheint b) Das Erkennungsmerkmal nur bei authetifizierten Mails vorhanden
ist,
und damit gefälscht werden kann.
Nochmal Danke an alle für die ausführliche Hilfe! Ein Problem weniger auf meiner Liste ;-)
(Gerald)
Roland Scheike rsbtde@googlemail.com hat am 15. Juli 2008 um 16:23 geschrieben:
Hallo Gerald,
machbar wäre z.B. ein "nicen" der versendeten Mail- d.h. Du ziehst einen Score von x ab. Ob das nun soviel ist dass der Spamscanner definitiv nicht mal seine Header schreiben kann oder nur ein paar wenige Punkte ist Dir überlassen.
Das Prinzip: # In /etc/postfix/main.cf: smtpd_data_restrictions = reject_unauth_pipelining permit_sasl_authenticated check_client_access regexp:/etc/postfix/add_auth_header.regexp
# In /etc/postfix/add_auth_header.regexp: /^/ PREPEND X-SMTP-Auth: no
Somit steht bei allen Mails, die nicht über die Regex gelaufen sind der Header X-SMTP-Auth: no drin.
Diesen kann man dann zum Prüfen verwenden: # In /etc/mail/spamassassin/local.cf: header __NO_SMTP_AUTH X-SMTP-Auth =~ /^no$/ meta SMTP_AUTH !__NO_SMTP_AUTH describe SMTP_AUTH Message sent using SMTP Authentication tflags SMTP_AUTH nice score SMTP_AUTH -25
Dann noch in der /etc/postfix/master.cf die Data-Restrictions wieder rausnehmen und gut ists
127.0.0.1:10025 inet n - n - - smtpd -o smtpd_data_restrictions= ...
HTH, Roland
2008/7/15 Gerald Nowitzky whl@igne.de: > Hallo! > > Ich habe folgendes Problem: > > Ich betreibe einen Postfix mit Amavis und Spamassassin. Der
Server
nimmt
> Mails für seine Domains entgegen und ist Relay für ausgehende
Mails. Die
> Nutzer für ausgehende Mails sind nicht in einem Trusted Network,
sondern
> authentifizieren sich über SASL. > > Das Problem ist nun, dass auch die ausgehenden Mails, also
Mails von
> Nutzern, die sich über SASL authentifizieren, über den
Spamassassin gehen.
> Mit entsprechend blödem Inhalt und einer dynamischen IP passiert
es immer
> wieder, dass eine ausgehende Mail von meinem Spamassassin als
Spam
markiert
> wird und so dem Empfänger zugestellt wird. Gibt es eine
Möglichkeit, das zu
> verhindern? > > Vielen Dank für die Hilfe! > (Gerald) > > Hier ist meine master.cf. :10024 / :10025 ist der "umweg" für den
Amavis.
> > smtp inet n - n - - smtpd > -o content_filter=smtp-amavis:[127.0.0.1]:10024 > pickup fifo n - - 60 1 pickup > cleanup unix n - - - 0 cleanup > qmgr fifo n - n 300 1 qmgr > #qmgr fifo n - - 300 1 oqmgr > tlsmgr unix - - - 1000? 1 tlsmgr > rewrite unix - - - - -
trivial-rewrite
> bounce unix - - - - 0 bounce > defer unix - - - - 0 bounce > trace unix - - - - 0 bounce > verify unix - - - - 1 verify > flush unix n - - 1000? 0 flush > proxymap unix - - n - - proxymap > smtp unix - - - - - smtp > relay unix - - - - - smtp > -o fallback_relay= > showq unix n - - - - showq > error unix - - - - - error > discard unix - - - - - discard > local unix - n n - - local > virtual unix - n n - - virtual > lmtp unix - - n - - lmtp > anvil unix - - - - 1 anvil > scache unix - - - - 1 scache > maildrop unix - n n - - pipe > flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient} > uucp unix - n n - - pipe > flags=Fqhu user=uucp argv=uux -r -n -z -a$sender -
$nexthop!rmail
> ($recipient) > ifmail unix - n n - - pipe > flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop
($recipient)
> bsmtp unix - n n - - pipe > flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop
-f$sender
> $recipient > scalemail-backend unix - n n - 2
pipe
> flags=R user=scalemail
argv=/usr/lib/scalemail/bin/scalemail-store
> ${nexthop} ${user} ${extension} > mailman unix - n n - - pipe > flags=FR user=list
argv=/usr/lib/mailman/bin/postfix-to-mailman.py
> ${nexthop} ${user} > > procmail unix - n n - 5
pipe
> flags=R user=nobody argv=/usr/bin/procmail -t -m > /opt/open-xchange/etc/admindaemon/procmailrc ${sender} ${user}
${recipient}
> smtp-amavis unix - - n - 2
smtp
> -o smtp_data_done_timeout=1200 > -o smtp_send_xforward_command=yes > -o disable_dns_lookups=yes > -o max_use=20 > 127.0.0.1:10025 inet n - n - -
smtpd
> -o content_filter=procmail:spamcheck > -o local_recipient_maps= > -o relay_recipient_maps= > -o smtpd_restriction_classes= > -o smtpd_delay_reject=no > -o smtpd_client_restrictions=permit_mynetworks,reject > -o smtpd_helo_restrictions= > -o smtpd_sender_restrictions= > -o smtpd_recipient_restrictions=permit_mynetworks,reject > -o mynetworks_style=host > -o mynetworks=127.0.0.0/8 > -o strict_rfc821_envelopes=yes > -o smtpd_error_sleep_time=0 > -o smtpd_soft_error_limit=1001 > -o smtpd_hard_error_limit=1000 > -o smtpd_client_connection_count_limit=0 > -o smtpd_client_connection_rate_limit=0 > -o >
receive_override_options=no_header_body_checks,no_unknown_recipient_checks
> smtps inet n - n - - smtpd > -o smtpd_tls_wrappermode=yes > -o content_filter=smtp-amavis:[127.0.0.1]:10024 > > _______________________________________________ > postfix-users mailing list > postfix-users@de.postfix.org > http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users > > _______________________________________________ postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
-- Best Regards
MfG Robert Schetterer
Germany/Munich/Bavaria _______________________________________________ postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users
postfix-users mailing list postfix-users@de.postfix.org http://de.postfix.org/cgi-bin/mailman/listinfo/postfix-users