Mailing List Archive

RBL detection in Exim 4 router?
Hi, me again trying to bend Exim in silly ways :)

I'd like to customise the reject I send when recipients don't verify to be
more rude to clients listed in $my_preferred_rbl_lists. Basically I'd like
instead of saying "that address doesn't work" to say "I don't want any
mail from you". I guess it's cosmetic, but given that I've already done
the lookup it's not going to cost me anything extra. Valid recipients will
receive the mail tagged with an "X-RBL-Warning" header added by one of my
ACLs.

So I tried this as my last "real" router (I have one which should only be
run when explicitly called from a different one after this..).

spam_baduser_reject:
driver = redirect
retry_use_local_part
allow_fail
data = :fail: \
${if def:h_x-rbl-warning:{$h_x-rbl-warning: or mail abuse@REAL_DOMAIN} \
{unrouteable address}}

..but of course, def:h_x-rbl-warning: is never true at this stage :-/

So, is there a way of doing this using a router, or do I have to do dark
things with my already-fairly-complicated ACLs? If the latter, is it
something like

deny message = "sod off Mr ORDB-listed host"
hosts = +rbl_hosts
dnslists = relays.ordb.org
!verify = recipient

..?

Matt
Re: RBL detection in Exim 4 router? [ In reply to ]
On Tue, 11 Jun 2002, Matt Bernstein wrote:

> Hi, me again trying to bend Exim in silly ways :)
>
> I'd like to customise the reject I send when recipients don't verify to be
> more rude to clients listed in $my_preferred_rbl_lists. Basically I'd like
> instead of saying "that address doesn't work" to say "I don't want any
> mail from you". I guess it's cosmetic, but given that I've already done
> the lookup it's not going to cost me anything extra. Valid recipients will
> receive the mail tagged with an "X-RBL-Warning" header added by one of my
> ACLs.
>
> So I tried this as my last "real" router (I have one which should only be
> run when explicitly called from a different one after this..).
>
> spam_baduser_reject:
> driver = redirect
> retry_use_local_part
> allow_fail
> data = :fail: \
> ${if def:h_x-rbl-warning:{$h_x-rbl-warning: or mail abuse@REAL_DOMAIN} \
> {unrouteable address}}
>
> ..but of course, def:h_x-rbl-warning: is never true at this stage :-/
>
> So, is there a way of doing this using a router, or do I have to do dark
> things with my already-fairly-complicated ACLs? If the latter, is it
> something like
>
> deny message = "sod off Mr ORDB-listed host"
> hosts = +rbl_hosts
> dnslists = relays.ordb.org
> !verify = recipient


Actually, this would only deny if the hosts was in rbl_hosts, was listed
in relays.ordb.org, *and* the recipient was unverifiable.

If thats what you want, then thats exactly what this will do.
Re: RBL detection in Exim 4 router? [ In reply to ]
At 09:03 -0400 Dave C. wrote:

>> deny message = "sod off Mr ORDB-listed host"
>> hosts = +rbl_hosts
>> dnslists = relays.ordb.org
>> !verify = recipient
>
>
>Actually, this would only deny if the hosts was in rbl_hosts, was listed
>in relays.ordb.org, *and* the recipient was unverifiable.
>
>If thats what you want, then thats exactly what this will do.

That is exactly what I want. I just have to do it mn times where m is the
number of lists I'm checking on, and n is the number of separate tests I'm
doing.. (mn is now 15 for me!) ..so I was hoping to do it elsewhere :-/

(Not that I'm worried about this. 15 ACLs it is!)
Re: RBL detection in Exim 4 router? [ In reply to ]
On Tue, 11 Jun 2002, Matt Bernstein wrote:

> At 09:03 -0400 Dave C. wrote:
>
> >> deny message = "sod off Mr ORDB-listed host"
> >> hosts = +rbl_hosts
> >> dnslists = relays.ordb.org
> >> !verify = recipient
> >
> >
> >Actually, this would only deny if the hosts was in rbl_hosts, was listed
> >in relays.ordb.org, *and* the recipient was unverifiable.
> >
> >If thats what you want, then thats exactly what this will do.
>
> That is exactly what I want. I just have to do it mn times where m is the
> number of lists I'm checking on, and n is the number of separate tests I'm
> doing.. (mn is now 15 for me!) ..so I was hoping to do it elsewhere :-/
>
> (Not that I'm worried about this. 15 ACLs it is!)

(Er, or 15 entries in one ACL?)

You do realize you can do more than one in each: ?

deny message = "sod off Mr ORDB-listed host"
hosts = +rbl_hosts
dnslists = relays.ordb.org : foo.list.net : bar.list.com
!verify = recipient

By the way, no one is going to read your rude messages, except the
legitimate users of the hosts in question, when their legit mail
bounces. N one you'd really care to say that to is ever going to see it,
and if on some miracle one of them actually does, all they will do is
laugh...