Re: [Exim] Lists supported

Top Page
Delete this message
Reply to this message
Author: William Thompson
Date:  
To: Ron McKeating
CC: Exim-Users (E-mail), Alan J. Flavell
Subject: Re: [Exim] Lists supported
> > > warn message = X-Warning: $sender_host_address is in a
> > > blocklist at $dnslist_domain
> > >          log_message   = found in $dnslist_domain
> > >          dnslists      =
> > > rbl-plus.mail-abuse.ja.net:list.dsbl.org:sbl.spamhaus.org:relays.ordb.org

> >
> > Suppose the host is listed at relays.ordb.org, this is true, so we go to the
> > next condition.
> >
> > >         !dnslists       = rbl-plus.mail-abuse.ja.net=127.1.0.2

> >
> > This same host is also listed at rbl-plus.mail-abuse.ja.net as 127.1.0.2.
> > Well, this condition is false and thus the warn statement is false (all have
> > to be true before the verb takes place).
> >
> > If you wanted to warn if the host is listed elsewhere, you'd have to
> > seperate the statements.
>
> Not sure I fully understand, are you saying in order to do what I need I
> should have one statement for each of the sites??


What you'd probably need to do is check your other RBLs first unless there's
a reason that you'd want it earlier than some (like for me, I have spamhaus
first because that's a list of hardcore spammers and I immediately block
those at the firewall)

Have one ACL for all of your RBLs except for the one.  Then do 2 checks for
the 2nd.  You might want to do something like this:
    warn    message = X-Warning: $sender_host_address is in a blocklist \
            at $dnslist_domain
        log_message = found in $dnslist_domain
        dnslists = list.dsbl.org:sbl.spamhaus.org:relays.ordb.org
        set acl_c9 = yes


    warn    message = X-Warning: $sender_host_address is in a blocklist \
            at $dnslist_domain
        log_message = found in $dnslist_domain
        condition = ${if eq{$acl_c9}{yes}{no}{yes}}
        dnslists = rbl-plus.mail-abuse.ja.net
        !dnslists = rbl-plus.mail-abuse.ja.net=127.1.0.2


You can leave out the acl_c9 lines if you wish. The reason I put it there
is if the host is listed in one of the RBLs, the 2nd warn won't happen.

If it's listed in say list.dsbl.org, $acl_c9 is yes so the next acl won't do
further lookups. If it wasn't on the list (sbl.spamhaus.org nor
relays.ordb.org), acl_c9 is not 'yes' and will run.

Or just use the patch I wrote and do this:
    warn    message = X-Warning: $sender_host_address is in a blocklist \
            at $dnslist_domain
        log_message = found in $dnslist_domain
        dnslists = list.dsbl.org:sbl.spamhaus.org:relays.ordb.org:\
            rbl-plus.mail-abuse.ja.net!=127.1.0.2


If you want the patch and can't find it, I'll privately mail it to you.