Stan Hoeppner wrote:
Michael Orlitzky put forth on 12/5/2009 1:38 AM:
Stan Hoeppner wrote:
I can't figure out why my whitelist entry for 204.238.179.0/24 is being

You rejected the HELO hostname, not the IP address. What is
reject_unknown_helo_hostname going to do when your DNS is broken?

You missed the point entirely because you went after the low hanging
fruit, calling out "you read the rejection wrong!".

Re-read my email and tell me why there was a rejection at all; why the
email wasn't accepted as it should have been.  If you'd actually read my
entire email the first time, you wouldn't have answered as you did.

You'll likely have to go for the fruit at the top of the tree to get the
right answer.  I've been on the top branch all day and can't figure it
out, thus my email to the list.

--
Stan


Let's start from the beginning. Here's your access map:

/etc/postfix/access
...
66.135.197                              OK
168.100.1                               OK
204.238.179                             OK
spam-l-boun...@spam-l.com               OK
owner-postfix-us...@cloud9.net          OK
majordomo-ow...@cloud9.net              OK
owner-postfix-us...@postfix.org         OK
...

Now, a client connects. Your restrictions begin to be evaluated. The first class to get evaluated is smtpd_client_restrictions:

smtpd_client_restrictions =
        check_recipient_access hash:/etc/postfix/access
        check_client_access hash:/etc/postfix/access
        ...
        ...
        reject_unknown_client_hostname
        reject_unauth_pipelining

Here, check_recipient_access does nothing, because the recipient (you) is not listed in the access map. The next restriction, check_client_access, matches on the client, 204.238.179.8. A result of OK is returned for smtpd_client_restrictions, and we move on to smtpd_helo_restrictions.

smtpd_helo_restrictions =
        check_recipient_access hash:/etc/postfix/access
        reject_non_fqdn_helo_hostname
        reject_invalid_helo_hostname
        reject_unknown_helo_hostname

The first restriction, check_recipient_access, looks up the RECIPIENT'S ADDRESS in your access map. Since the recipient's address is not listed, this check does nothing, and we move on the next one. The non_fqdn/invalid checks pass, but then when we get to reject_unknown_helo_hostname, the message is rejected, because you can't look up the host name.

I think what you mean to do here is check_client_access (as opposed to check_recipient_access). You could also use check_helo_access, but then you'd have to add that machine's HELO hostname to the access map.

Reply via email to