Viktor
On Mon, Mar 28, 2016, at 08:03 PM, Viktor Dukhovni wrote:
> Sorry, that's:
>
> http://www.postfix.org/postconf.5.html#check_client_ns_access
Ugh. I should have just searched for 'ns_access'. Thanks.
I'm not 100% sure why it's a "client" rule instead of a "sender" rule. Looking
at examples, theses sets of checks end up in different mumble restriction. Is
it because client is earliest in order?
> And yes, the restriction class needs to be exactly the same when
> defined as when it is used. Go with "_" throughout.
Ok, I've got it sorted and seems to be working!
As a last step, I'd like to understand how to eventually grow this correctly.
If I wanted to add ns-related blocks that
(1) block all messages from any/all domains NS-hosted on "example1.com" or
".example1.com"
and
(2) block all messages from domains NS-hosted on "example2.com" and MTA
RDNS matching, '^this-mta' (similar to what's already in there for synapp.io),
would this be the best approach?
main.cf
...
smtpd_restriction_classes = no_ns_match
no_ns_match =
reject_unknown_client,
check_client_access pcre:${config_directory}/ns_reject.pcre
smtpd_client_restrictions =
permit_mynetworks
reject_unauth_pipelining
check_client_ns_access pcre:${config_directory}/ns_access.pcre
...
cat ns_reject.pcre
/^mta-wk-\d/ REJECT 554
/^this-mta/ REJECT 554
cat ns_access.pcre
/\.synapp\.io$/ no_ns_match
/\.example1\.com$/ REJECT 554
/\.example2\.com$/ no_ns_match
My specific concerns with that^ are
(1) it could incorrectly match/reject on 'this-mta.somedomain.com' hosted
on example1.com, not just example2.com, as intended
(2) I'm not 100% sure I can mix "no_ns_match" & "REJECT 554" actions in the
same file, 'ns_access.pcre'.
Again this example was really helpful -- not just in solving this specific
problem but giving an idea of how to add & layer restrictions, and how they
'flow'.
Thanks.
Jason