[Postfixbuch-users] policyd-weight
Sascha Peters
postfix-list at novuage.de
So Nov 22 13:29:33 CET 2009
Hallo,
ich habe immer mal das Problem das ich gerne Clients von diversen Checks
ausschließen möchte. Ich habe aber verschiedene Checks in meiner
Konfiguration.
Ich habe mir mehrere Klassen gebaut.
smtpd_restriction_classes =
class_int
class_dnsbl
class_grey
class_fwd
class_dnsbl_grey
class_fwd_dnsbl
class_fwd_grey
class_fwd_dnsbl_grey
class_std_restriction
class_int = permit
# policyd-weight
class_dnsbl = check_policy_service inet:127.0.0.1:12525
# postgrey
class_grey = check_policy_service inet:127.0.0.1:60000
# postfwd
class_fwd = check_policy_service inet:127.0.0.1:10040
class_dnsbl_grey = class_dnsbl, class_grey
class_fwd_dnsbl = class_fwd, class_dnsbl
class_fwd_grey = class_fwd, class_grey
class_fwd_dnsbl_grey = class_fwd, class_dnsbl, class_grey
class_std_restriction = class_fwd_dnsbl_grey
Und diese dann über "check_recipient_access" in die
"smtpd_recipient_restrictions" eingebaut. So kann ich für jede Domain
einen Standard definieren, aber durch manuelles Eintragen einzelner
Adressen auch andere Checks ausnehmen.
check_recipient_access btree:/etc/postfix/recipient_restriction
domain.tld class_fwd_dnsbl_grey
ziel at domain.tld class_dnsbl
So wird für alle Adressen der postfwd, policyd-weight und postgrey
verwenden, aber für die Adresse "ziel at domain.tld" wird nur der
policyd-weight verwendet.
In anderen Anleitungen auch vor kurzem hier von Peer geschrieben kann
man einzelne Checks pro Client ausnehmen wenn man quasi obiges nicht mir
"check_recipient_access" sonder mit "check_client_access" macht.
Bisher war ich nie wirklich in der Lage eine Ausnahme setzen zu wollen,
und greylisting kann ich pro Empfänger abschalten oder eben die
Whitelisten verwenden die ja von postgrey selbst abgefragt werden. Nun
habe ich die Idee dies whitlist Dateien von postgrey auch in
policyd-weight einzubauen. Denn hier gibt es keine Möglichkeiten
whitelists einzustellen die dann direkt von policyd-weight selbst
befragt werden.
Mein Perl ist nun nicht das beste und bevor ich hier Hand anlege wollte
ich fragen ob jemand einen andere Idee hat. Ansonten würde ich gern eine
Datei bauen wollen:
policyd-weight_whitelist_clients
policyd-weight_whitelist_clients.local
policyd-weight_whitelist_recipients
policyd-weight_whitelist_recipients.local
Analog zu denen von postgrey und die Funktionen aus postgrey in
policyd-weigth einbauen. Das sollte ja theoretisch nicht so ein großen
Problem sein, die Whiteliststelle für recipients existiert ja quasi
schon für abuse/postmaster und müsste nur erweitert werden, für Clients
könnte man die Punkte "-20" setzen wenn der Eintrag in der Liste steht.
Aber auch hier sollte eine Ausstiegsbedingung und Logmeldung kein riesen
Problem sein.
Über Feedback wäre ich dankbar.
--
Gruß
Sascha
Mehr Informationen über die Mailingliste Postfixbuch-users