[rbldnsd] Announce: experimental rbldnsd-0.994.92: EDNS0 and
ACL support
Amos Jeffries
amos at treenetnz.com
Sun Apr 17 09:32:47 MSD 2005
Michael Tokarev wrote:
> Together with a bugfix 0.994b release, I also uploaded
> experimental (aka "pre") release 0.994.92, the code which
> eventually become 0.995 version. This is a development
> snapshot intended to show what's going on, for comments
> and testing, NOT for production usage.
>
<snip>
>
> Several words about ACLs. The thing looks like:
>
> rbldnsd ... bl.ex.com:ip4set:bldata bl.ex.com:acl:acldata ...
>
> Ie, there's a new dataset type named "acl", which is NOT included into
> the zone, but instead controls which clients receives which treatment.
> Only one acl-type dataset can be specified for a given zone (rbldnsd
> will complain if more are specified). It is possible to specify
> global acl too, by omitting the zone name, like:
>
> rbldnsd ... bl.ex.com:ip4set:bldata :acl:acldata ...
>
> (note the leading colon before "acl...").
>
> Content of `acldata' file is pretty like the one of ip4trie, ie,
> CIDRs and "values", where "value" can be one of:
>
> :ignore -- to mean ignore all queries made from the given CIDR
> :refuse -- to mean refuse all queries from the given range
> :empty -- for queries from the range, pretend no entries are
> listed in a dnsbl at all
> usual_A+TXT_template -- always return this template to valid
> dnsbl queries made from the given range.
>
Two questions:
1) If we supply an ACL file that is essentially a zone file with a
default ACL response at the top will it be accepted as a valid ACL?
(without a response type on each line).
ie:
#deny ACL
:refuse
127.0.0.0/8
10.0.0.0/8
252.0.0.0/8
# end ACL
2) One of the best uses of ACL is to deny DDoS from zombies.
In that case might it be simpler be to have an entry like
" $ACL <zone> <action> " as a single dataset ACL?
meaning, that any client listed in the dataset <zone> has <action> done
to its queries.
> First two are terminates processing immediately - rbldnsd either
> "forgots" about the packet or just returns REFUSED, without
> looking further.
>
> But the last two are more "intelligent": rbldnsd tries to determine
> whenever the query was for DNSBL data (all "real" dnsbl datasets --
> ip4set, ip4tset, ip4trie, dnset) or for metadata, including generic
> dataset and all the normal NS+SOA records. In the later case,
> rbldnsd still constructs the reply as if there was no ACL. But
> if it was a valid DNSBL query, result will contain no A+TXT data
> at all (even if the object/entry being queried is in fact listed)
> or will contain A+TXT specified by the ACL (even if the entry is
> not listed, or listed with different data).
>
> In the later case ("pretend-all-listed"), $-substitutes are made
> using the IP address of the client, not the one contained in the
> query.
>
> For now, the ACL system only supports IPv4 addresses. IPv6 addresses
> will be supported together with the first ip6something dataset,
> in some probably distant future.
>
> This whole ACL stuff is new, and is subject to changes/refiniments.
> I don't yet know whenever current functionality fits current (and
> especially future ;) demands. Comments are welcome.
>
> As usual, rbldnsd homepage is at
> http://www.corpit.ru/mjt/rbldnsd.html
> All prereleases are at
> http://www.corpit.ru/mjt/pre/
>
> /mjt
>
> /mjt
> _______________________________________________
> rbldnsd mailing list
> rbldnsd at corpit.ru
> http://www.corpit.ru/mailman/listinfo/rbldnsd
>
Amos Jeffries
amos at treenetnz.com
021 293 4049
Treehouse Networks Ltd
www.treenetnz.com
--
We are fast approaching the time when "packets from a M$ operating
system" is synonymous with "hostile behavior".
More information about the rbldnsd
mailing list