Dean Bishop wrote:
Hey Bill,

A great question.  Sadly not one that I have an answer to.  Half of
this battle is trying to sift through cPanel's stock exim.conf which
is extraordinarily convoluted (at least to me).  I know that there
are a thousand config combinations and permutations available in
cPanel so I expect that something buried in there is the root reason
for it not rejecting traffic using the acl.

I wish I knew but I think that even if I did, it wouldn't help as I
have to thread changes into their rats nest.

My 2c in return; keep the change :)

Later, dean

I can't be bothered with CPanel or Sputniks when a text-editor gives me less backtalk.

'Conventionally' The acl code is a one-liner:

require_verify = recipient

CAVEAT: What this does is a 'router walk', asking each router in turn that does NOT have the 'no_verify' flag set if it COULD deliver that message IF asked. Sort of a show of hands - not a real delivery.

The caveat is that you must not have a promiscuous or 'leaky' router - one that is willing to drop trou and take anything and everything poked at it.

A 'blackhole' router (bad practice anyway) and SOME types of ALIAS routers can be just that sort of 'leak', and you may WANT it to participate in verification. Catch 22.

If/as/when that is problematic, I use an SQL call instead and don't look at the router chain at all.

But .. one THEN has to make sure that EVERYONE, even aliases and 'postmaster@' exist in the DB.

- Downside is the overhead of an SQL engine.

- Upside is editing of ALL users in one place, and with separate privs from Exim. IOW - can be compartmentalized with the DB's rights control toolset and handed-off to one or more outsiders who are restricted to managing only ther own sub-clan, and cannot touch Exim itself.

===

Otherwise...

Pragmatically, I tend to use negated tests, as I am more accustomed to 'stacking' the conditionals, so my code is of the form:

 deny
    !verify     = recipient


...or IF one has not ALREADY done an 'accept' to exempt your own user-group, who are not sending to ONLY local destinations, then:

===

deny
  !authenticated        = *
  !verify               = recipient

===

Functional flow is like this:

Deny

 but not if the caller is authenticated
 if you got this far, and the recipient cannot be verified

===

There's the change back for the 2cents change from the 2 ... nevermind..

;-)

Bill
--
韓家標

--
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/

Reply via email to