Reihenfolge check_policy_service

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Reihenfolge check_policy_service

Achim Lamerts
Guten Morgen Liste,

mir ist in den Logfiles aufgefallen, daß das Greylisting nicht so
funktioniert, wie erwartet. Normalerweise müsste doch bei einem neuen
Zugriff erst mal die E-Mail durch den postgreyd mit einem 450er
abgelehnt werden und erst bei einer wiederholten Anfrage die anderen
policy services anspringen.

Statt dessen passiert alles bei der ersten Anfrage:
Dec  9 07:45:36 host postgrey[31783]: action=greylist, reason=new, …
Dec  9 07:45:36 host policyd-spf[29125]: None; identity=helo; …
Dec  9 07:45:36 host policyd-spf[29125]: Pass; identity=mailfrom; …
Dec  9 07:45:38 host postfix/policyd-weight[19170]: weighted check:
IN_SBL_XBL_SPAMHAUS=3.95 IN_UCE1=3.25 BAD_MX=15.12 CL_IP_EQ_HELO_IP= …
Dec  9 07:45:38 xaver postfix/policyd-weight[19170]: decided action=550
Mail appeared to be SPAM or forged. Ask your Mail/DNS-Administrator to
correct HELO and DNS MX settings or to get removed from DN …

Der postgreyd ist eingerichtet, um die ganzen Fire&Forget-Anfragen
abzufangen und somit unnötige Checks gegen die RBLs zu vermeiden:

smtpd_recipient_restrictions =
     permit_mynetworks,
     permit_sasl_authenticated,
     reject_non_fqdn_recipient,
     reject_unauth_destination,
     reject_unlisted_recipient,
     check_recipient_access mysql:/etc/postfix/conf/whitelist_users.cf,
     # postgreyd
     check_policy_service inet:192.168.164.1:10023,
     check_policy_service unix:private/policyd-spf,
     # policyd-weight
     check_policy_service inet:192.168.164.1:12525,
     pcre:/etc/postfix/conf/postfix_prepend-clientIP.pcre,
     permit

Wie kann ich das einrichten, damit es so wie gewünscht funktioniert?

Vielen Dank für Eure Hilfe!
Achim

Reply | Threaded
Open this post in threaded view
|

Re: Reihenfolge check_policy_service

Achim Lamerts
Hallo Liste,

aktuell experimentiere ich auch mit dem cbpolicyd und hier tritt der
Fehler seltener und dann zeitversetzt auf. Der Sender hat nach dem 451
schon disconnected, als ca. 9 Sekunden später noch der policyd-weight
getriggert wurde:

Dec 10 17:23:19 xaver postfix/smtpd[8349]: connect from
mail.domain.tld[1.2.3.4]
Dec 10 17:23:19 host cbpolicyd[21309]: module=Greylisting, action=defer,
host= …
Dec 10 17:23:19 host postfix/smtpd[8349]: NOQUEUE: reject: RCPT from
mail.domain.tld[1.2.3.4]: 451 4.7.1 <[hidden email]>: Recipient address
rejected: Greylisting in effect, …
Dec 10 17:23:20 host postfix/smtpd[8349]: disconnect from
mail.domain.tld[1.2.3.4] ehlo=2 starttls=1 mail=1 rcpt=0/1 data=0/1
rset=1 quit=1 commands=6/8
Dec 10 17:23:29 host postfix/policyd-weight[10025]: weighted check:
CL_IP_EQ_HELO_IP=-2.5 (check from: .domain. - helo: .mail.domain. -
helo-domain: .domain.) FROM/MX_MATCHES_HELO(DOMAIN)=-2.5
Dec 10 17:23:29 host postfix/policyd-weight[10025]: decided
action=PREPEND X-policyd-weight: CL_IP_EQ_HELO_IP=-2.5 (check from:
.domain. - helo: .mail.domain. - helo-domain: .domain.) FROM/MX_

Wie passiert das? Wird gegen die Policies aus Gründen des Timings
parallel geprüft? Kann man das steuern, daß bestimmte Policies
sequentiell abgearbeitet werden? Ansonsten klappt das beim Greylisting
mit cbpolicyd in der Regel, daß beim ersten Request ein „defer“ mit
disconnect erfolgt, beim folgenden dann ein „pass“ und dann erst prüft
der policyd-weight.

Schöne Grüße
Achim


Am 09.12.19 um 08:16 schrieb Achim Lammerts:

> Guten Morgen Liste,
>
> mir ist in den Logfiles aufgefallen, daß das Greylisting nicht so
> funktioniert, wie erwartet. Normalerweise müsste doch bei einem neuen
> Zugriff erst mal die E-Mail durch den postgreyd mit einem 450er
> abgelehnt werden und erst bei einer wiederholten Anfrage die anderen
> policy services anspringen.
>
> Statt dessen passiert alles bei der ersten Anfrage:
> Dec  9 07:45:36 host postgrey[31783]: action=greylist, reason=new, …
> Dec  9 07:45:36 host policyd-spf[29125]: None; identity=helo; …
> Dec  9 07:45:36 host policyd-spf[29125]: Pass; identity=mailfrom; …
> Dec  9 07:45:38 host postfix/policyd-weight[19170]: weighted check:
> IN_SBL_XBL_SPAMHAUS=3.95 IN_UCE1=3.25 BAD_MX=15.12 CL_IP_EQ_HELO_IP= …
> Dec  9 07:45:38 xaver postfix/policyd-weight[19170]: decided action=550
> Mail appeared to be SPAM or forged. Ask your Mail/DNS-Administrator to
> correct HELO and DNS MX settings or to get removed from DN …
>
> Der postgreyd ist eingerichtet, um die ganzen Fire&Forget-Anfragen
> abzufangen und somit unnötige Checks gegen die RBLs zu vermeiden:
>
> smtpd_recipient_restrictions =
>      permit_mynetworks,
>      permit_sasl_authenticated,
>      reject_non_fqdn_recipient,
>      reject_unauth_destination,
>      reject_unlisted_recipient,
>      check_recipient_access mysql:/etc/postfix/conf/whitelist_users.cf,
>      # postgreyd
>      check_policy_service inet:192.168.164.1:10023,
>      check_policy_service unix:private/policyd-spf,
>      # policyd-weight
>      check_policy_service inet:192.168.164.1:12525,
>      pcre:/etc/postfix/conf/postfix_prepend-clientIP.pcre,
>      permit
>
> Wie kann ich das einrichten, damit es so wie gewünscht funktioniert?
>
> Vielen Dank für Eure Hilfe!
> Achim
>