X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Funbound%2Ftemplates%2Funbound.conf.erb;h=4206f81b2ae3a089c3b869547c29255b47c7ddc0;hb=3e02a9ee11e1206aa7d07c2cdf18080322b14d50;hp=9a2c837355076533b7b1e70ed0062dc72e6622bd;hpb=87df4a00d449682730d9f30ed89452564dd59a24;p=mirror%2Fdsa-puppet.git diff --git a/modules/unbound/templates/unbound.conf.erb b/modules/unbound/templates/unbound.conf.erb index 9a2c83735..4206f81b2 100644 --- a/modules/unbound/templates/unbound.conf.erb +++ b/modules/unbound/templates/unbound.conf.erb @@ -6,26 +6,22 @@ server: verbosity: 1 -<%= - out = [] - if nodeinfo['misc']['resolver-recursive'] and nodeinfo['hoster']['allow_dns_query'] - out << " interface: 0.0.0.0" - out << " interface: ::0" - out << "" - out << " interface-automatic: yes" +<% if (@is_recursor and (not @client_ranges.empty?)) -%> + interface: 0.0.0.0 + interface: ::0 - out << " access-control: 0.0.0.0/0 refuse" - out << " access-control: ::0/0 refuse" - out << " access-control: 127.0.0.0/8 allow" - out << " access-control: ::0/0 refuse" - out << " access-control: ::1 allow" - out << " access-control: ::ffff:127.0.0.1 allow" - nodeinfo['hoster']['allow_dns_query'].each do |net| - out << " access-control: #{net} allow" - end - end - out.join("\n") -%> + interface-automatic: yes + + access-control: 0.0.0.0/0 refuse + access-control: ::0/0 refuse + access-control: 127.0.0.0/8 allow + access-control: ::0/0 refuse + access-control: ::1 allow + access-control: ::ffff:127.0.0.1 allow +<% @client_ranges.to_a.flatten.each do |net| -%> + access-control: <%= net -%> allow +<% end -%> +<% end -%> #chroot: "" @@ -47,24 +43,29 @@ server: # auto-trust-anchor-file: "" auto-trust-anchor-file: "/var/lib/unbound/root.key" auto-trust-anchor-file: "/var/lib/unbound/debian.org.key" +<% if not @firewall_blocks_dns %> + auto-trust-anchor-file: "/var/lib/unbound/29.172.in-addr.arpa.key" +<% end -%> -<%= - out = [] - if not nodeinfo['misc']['resolver-recursive'] and not nodeinfo['hoster']['nameservers_break_dnssec'] - forwarders = nodeinfo['hoster']['nameservers'] - forwarders ||= [] - - out << 'forward-zone:' - out << ' name: "."' - forwarders.each do |ns| - out << " forward-addr: #{ns}" - end - end + prefetch: yes + prefetch-key: yes - if hostname == "zappa" - out << "edns-buffer-size: 512" - end +<% if not @firewall_blocks_dns %> +local-zone: "29.172.in-addr.arpa" nodefault +forward-zone: + name: "29.172.in-addr.arpa" + forward-host: geo1.debian.org + forward-host: geo2.debian.org + forward-host: geo3.debian.org +<% end -%> - out.join("\n") -%> +# recursive: <%= @is_recursor ? "y" : "n" %> +<% if not @is_recursor -%> +forward-zone: + name: "." +<% @ns.to_a.flatten.each do |nms| -%> + forward-addr: <%= nms %> +<% end -%> + forward-first: yes +<% end -%>