Re: [exim] dnslists - how to reject only if sender is in two…

Top Page
Delete this message
Reply to this message
Author: lists
Date:  
To: exim-users
Subject: Re: [exim] dnslists - how to reject only if sender is in two or more ?
Hi Gregory,

> I want to reject the message completely if sender is in two or more RBLs
> and accept if
> it hits only one.


I check quite some RBLs and also want to have this fine granulated to
circumvent false positives. I have a counter, and some RBL have a higher
weight (adding 2 points). A certain number of points (3+ in this my
case) leads to rejection. So cbl.abuseat.org suffices to reject, all
others need a second. "The add_header" is for error hunting, but I
actually don't had to look since very long. Of course you can do this
more compact, but her is my example:

# Set counter to zero
warn set acl_m0 = 0

warn    log_message = Listed by $dnslist_domain
         dnslists = 0spam.fusionzero.com
         add_header = X-blacklisted-at: $dnslist_domain 1
         set acl_m0 = ${eval:$acl_m0+1}


warn    log_message = Listed by $dnslist_domain
         dnslists = zen.spamhaus.org
         add_header = X-blacklisted-at: $dnslist_domain 2
         set acl_m0 = ${eval:$acl_m0+2}


warn    log_message = Listed by manitu.net
         dnslists = ix.dnsbl.manitu.net
         add_header = X-blacklisted-at: $dnslist_domain 1
         set acl_m0 = ${eval:$acl_m0+1}


# http://www.sorbs.net/using.shtml
# Very sensitive, false positives prone!
warn    log_message = Listed by $dnslist_domain
         dnslists = dnsbl.sorbs.net
         add_header = X-blacklisted-at: $dnslist_domain 1
         set acl_m0 = ${eval:$acl_m0+1}


warn    log_message = Listed by $dnslist_domain
         dnslists = bl.spamcop.net
         add_header = X-blacklisted-at: $dnslist_domain 2
         set acl_m0 = ${eval:$acl_m0+2}


# raised to 3!
warn    log_message = Listed by $dnslist_domain
         dnslists = cbl.abuseat.org
         add_header = X-blacklisted-at: $dnslist_domain 3
         set acl_m0 = ${eval:$acl_m0+3}


deny    log_message = Listed by spamlists, $acl_m0 points
         message = rejected because $sender_host_address is in public 
spamlists
         condition = ${if gt{$acl_m0}{2}}


regards
Hardy