Hi all!

I have a fairly standard set of smtpd restrictions implemented and generally I’m very happy with them (very low spam traffic and no headaches associated with SpamAssassin or DSPAM). However, once in a while a legitimate message is rejected because the other side has misconfigured HELO or DNS or the like. Of course, they really should know better, but I am not always in position to explain it to them, and their organization may be too complicated to react properly. As the things stand, it sometimes creates problems for us rather than for them =)

I have an idea that seems promising, but from reading the docs I feel that it is not currently possible. However, maybe it could be included in the next version or someone could suggest another approach. Basically the goal is to relax ‘hard’ reject restrictions and run the mails that fail ‘soft’ restrictions through greylisting or other filtering, without delaying good mail. I am not sure it is wise to try implementing such complex logic in Postfix configuration file. But I think it is easier and actually more powerful simply to expose the ‘fired’ restrictions to the policy daemon and let it decide how to handle stuff.

I imagine a syntax like this may be possible (just wild guess):
restrictions_mynetworks = false
restrictions_sasl_authenticated = false
restrictions_invalid_helo_hostname = false
restrictions_non_fqdn_helo_hostname = false
restrictions_unknown_helo_hostname = true
restrictions_rbl_client_zen_spamhaus_org = false
For performance reasons, probably only the restrictions that are already evaluated at the point where check_policy_service is called should be available. This would require something like "defer_rbl_client zen.spamhaus.org" in main.cf to check the restriction non-destructively.

Best wishes
Eugene

Reply via email to