Header Check funktioniert nicht

Martin Steigerwald martin at lichtvoll.de
Fr Dez 9 11:44:06 CET 2016


Hallo Daniel, hallo allerseits,

Am Donnerstag, 8. Dezember 2016, 23:57:54 CET schrieb Daniel:
> Wieso brauchst überhaupt noch weitere Regeln?
> 
> Bei mir scheitert der yandex Sapm schon an ersten Prüfungen.
> 
> NOQUEUE: reject: RCPT from unknown[23.95.110.158]: 450 4.7.25 Client host
> rejected: cannot find your hostname, [23.95.110.158];
> from=<caniaday at yandex.com> to=<X> proto=ESMTP helo=<shoyy188w.com>

Du lässt also Mails von Mailservern, für die der Reverse Lookup nicht 
funktioniert, ablehnen. Im Postfix-Buch von Peer lese ich dazu, dass dies eine 
hohe Gefahr von falschen Positiven hat, da es eben doch viele Leute gibt, die 
ihr DNS nicht gescheit konfigurieren.

Peer empfiehlt, wenn überhaupt dann eher den entsprechenden Check dazu in 
policyd-weight zu verwenden, der zumindest gewisse weitere Prüfungen habe, um 
gegen falsche Positive abzusichern.

Allerdings habe ich das wohl auch vor Jahren schon abgeschaltet:

# Siehe Mail von Florian und RFC 5321
#
# Re: [ltp] broken mail server setup for linux-thinkpad mailing list
# Florian Reitmeir […]
#
# http://tools.ietf.org/html/rfc5321

   @client_ip_eq_helo_score         = (0,	0 );
   @helo_from_mx_eq_ip_score   = (0,	0 );
   @helo_numeric_score               = (0,	0 );

Bei mir kommt also zumindest ein Teil von dem Yandex-Spam eben durch, da weder 
policyd-weight noch SpamAssassin, auch mit sa_zmi_at,  sought_rules_yerp_org 
und Heinlein-Regeln, das Teil einkassiert.

> Sollte die IP doch mal nen PTR haben und nen Hostnamen geben, scheitert es
> am HELO der nicht existiert.
> 
> Und sonst würde ich einfach im sender_access nen
> @yandex.com REJECT
> Schreiben und gut ist.

Und auch das hat die Gefahr von falschen Positiven. So wie ich sehe ist Yandex 
so ein Suchmaschinen- und Mail-Provider, so ne Art Yahoo oder Google. Aber die 
Spam-Mails, die bei mir mit From *@yandex.com durchkommen werden von 
irgendwelchen Hosts verschickt, ganz ähnlich wie der Spam von OVH-VMs von vor 
einiger Zeit:

From: Irgendein Name <irgend ein toller name @ yandex.com>
[…]
Received: from 88859282.com (unknown [5.1.88.151])
	by mail.lichtvoll.de (Postfix) with ESMTP id A542E3E5
	for <[…]>; Fri,  9 Dec 2016 06:52:08 +0100 (CET)

Natürlich kann ich die jetzt wieder IP-Adresse für IP-Adresse blocken, aber 
das ist auch wieder wenig effektiv, es sei denn der Müll kommt immer von der 
gleichen IP-Adresse, was ich noch nicht geprüft habe.

Ich frage mich inwiefern ich zumindest für bestimmte Domains Postfix dazu 
bringen kann, die Mail abzulehnen, wenn wie oben offensichtlich Absender-
Adresse und der sendende Mail-Server nicht zusammenpassen, also Mails von 
yandex.com nur zu akzeptieren, wenn die laut Received-Header am Anfang ein 
Host von yandex.com/ru eingeliefert hat, also im Grunde eine Art selektive 
Kontrolle, inwiefern From- und Received-Header zusammen passen für Domains, 
die oft im From:-Header von Spam Mails auftauchen, und wo der Provider, hier 
yandex.com/yandex.ru in der Tat weiß, wie es geht, DNS zu konfigurieren.

Eine reine Kontrolle in Bezug auf den Sender greift natürlich wieder zu kurz, 
da ja auch ein Mailinglisten-Server für eine Open-Source-Mailingliste eine 
legitime Mail mit einem Absender mit yandex.com verschickt haben könnte. 
Natürlich ist das bis zu einem gewissen Grad theoretisch, weil ich das bislang 
noch nicht gesehen habe, dass jemand von yandex.com aus auf OSS-Mailinglisten 
postet.

Ich hab zwar im OVH-Spam-Fall und in diesem Hartz-Spam-Fall tatsächlich 
mehrere Domains mit neuen TLDs komplett geblockt, für komplett für yandex.com/
ru erscheint mir aber etwas zu gewagt.

mondschein:/etc/postfix> cat sender_checks
/klicken.*\.xyz/ REJECT S2016-06: Repeated source of spam. Blocked.
/klicken.*\.accountant/ REJECT S2016-06: Repeated source of spam. Blocked.

/mailing.*\.xyz/ REJECT S2016-06: Repeated source of spam. Blocked.
/mailing.*\.site/ REJECT S2016-06: Repeated source of spam. Blocked.

/server.*\.xyz/ REJECT S2016-06: Repeated source of spam. Blocked.

/weiter.*\.top/ REJECT S2016-06: Repeated source of spam. Blocked.

/aufmachen.*\.party/ REJECT S2016-06: Repeated source of spam. Blocked.

/versand.*\.faith/ REJECT S2016-07: Repeated source of spam. Blocked.

/webklick.*\.top/ REJECT S2016-07: Repeated source of spam. Blocked.

/rimunrearon\.com/ REJECT S2016.11: Repeated source of spam. Blocked.

/hartz4koenig\.com/ REJECT S2016.11: Repeated source of spam. Blocked.

Danke,
Martin

> 
> Gruß Daniel
> 
> -----Ursprüngliche Nachricht-----
> Von: Postfixbuch-users [mailto:postfixbuch-users-bounces at listen.jpberlin.de]
> Im Auftrag von Jens Adam Gesendet: Donnerstag, 8. Dezember 2016 17:23
> An: Diskussionen und Support rund um Postfix
> Betreff: Re: Header Check funktioniert nicht
> 
> > Am 08.12.2016 um 17:05 schrieb Kai Fürstenberg
> > <kai_postfix at fuerstenberg.ws>:
> > 
> > Hallo Christian,
> > 
> > Am 08.12.2016 um 16:51 schrieb Christian Schoepplein:
> >> folgendes hab ich in /etc/postfix/header_checks stehen:
> >> 
> >> -----
> >> if /^Return-Path:.*yandex.com/
> >> 
> >> /^X-Mailer-LID:.*/ REJECT rule 25
> >> /^X-Mailer-RecptId:.*/ REJECT rule26
> >> /^X-Mailer-SID:.*/ REJECT rule27
> >> 
> >> Endif
> >> -----
> > 
> > "Note:  message  headers are examined one logical header at a time, even
> > when a message header spans multiple lines. Body lines are always
> > examined one line at a time."
> > 
> > Postfix kann immer nur einen Header bearbeiten. Du kannst also nicht
> > nach dem Return-Path suchen und dabei gleichzeitig nach X-*-Headern
> > filtern.
> FWIW, ich blocke den schon eine ganze Weile, unabhängig woher das kommt:
> 
>  # Spam "Interspire Email Marketer"
>  /^X-Mailer-RecptId: [0-9]+$/  REJECT SPAM
> 
> Bisher hat sich noch niemand über fehlende Newsletter o.ä. beschwert.
> 
> --byte


-- 
Martin



Mehr Informationen über die Mailingliste Postfixbuch-users