[postfix-users] Dunno in restriction_classes
Thomas Schwenski
mailing-lists at thomasschwenski.de
Do Jun 26 12:51:01 CEST 2008
Hallo Stefan,
>>>> Ich finde da aber kein Wort dazu, was eine Access-Map liefern muss,
>>>> damit nur die restriction_class beendet wird aber die nächste
>>>> smtpd_recipient_restriction abgearbeitet wird.
>
> Diese Funktionalität existiert nicht.
Das ist mal eine eindeutige Aussage.
> Die korrekte Antwort lautet: Schreibe Dir einen Policy-Service. Du
> bist auf einem guten Weg, Dir in den Fuß zu schießen, wenn Du das so
> umsetzen willst.
Das war mein Option für den Fall, dass es eben nicht so funktioniert,
wie ich das mit restriction_classes vorgehabt hatte.
>> Ich will eine restriction_class für Greylisting haben, eine für DynIP,
>> eine für unknown_host, ...
>
> smtpd_restriction_classes = greylisting,dynip
> greylisting = check_policy_service foo:bar
> dynip = reject_rbl_client mumble
>
>> Allerdings soll das ganze _deselektiv_ stattfinden, also es sollen
>> _alle_ E-Mails den jeweiligen Prüfungen unterzogen werden, _außer_ der
>> Absender/Client (im Sinne von einlieferndem Mailserver) steht auf einer
>> Whitelist für diese Restriction.
>
> smtpd_recipiten_restrcitions =
> check_recipient_access pcre:/blubber/greylisitng.map
> check_recipient_access pcre:/blubber/dynip.map
> ...
>
> greylisting.map:
> /aus at nahme.1/ dunno
> /aus at nahme.2/ dunno
> /./ greylisting
Das funktioniert, aber ich würde mich für die Ausahmen auf PCRE festlegen.
Eine PCRE-MAP aus einer Hash oder MySQL-Tabelle zu erzeugen ist dabei
kein Problem, aber PCRE würde ab einer gewissen Länge zur
Performance-Verschwendung.
> Ich sag's nochmal: Du bist auf dem allerbesten Weg, Dir einen
> wartungs- und verwaltungstechnischen Albtraum an die Backe zu binden.
Finde ich nicht:
Eine MySQL-Datenbanktabelle als Backend in der der jeweilige Eintrag mit
Flags für die einzelnen Restriktionen, die übersprungen werden sollen,
versehen ist.
Die dann entweder per Script in Hash oder PCRE (wobei Letzteres aus
Performance-Gründen vermieden werden könnte) transformieren oder per
proxy:mysql: auslesen lassen.
Einmal konfiguriert ist das Ganze eigentlich unproblematisch meiner
Meinung nach.
Und die Konfiguration ist ein einmaliger Mehraufwand.
> Wenn Du das alles wirklich umsetzen musst, solltest Du dringend
> darüber nachdenken, einen Policy-Service zu schreiben.
Was ich, aufgrund der (mittlerweile durch Dich bestätigten)
Einschränkungen von restriction_classes auch schon überlegt habe und
letztendlich auch tun werde.
Thomas
More information about the postfix-users
mailing list