X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fnamed%2Fmanifests%2Finit.pp;h=361ffaa40d9f5194c78d1c9c8ee334cbb689f774;hb=2835c1daf1a5f55ec56366fa5d534b6bfc7728cb;hp=2868a070ff4d59edb6a4fd8339517ea611d22b00;hpb=4c729553b909749951a012ad7d75309c1487a9c1;p=mirror%2Fdsa-puppet.git diff --git a/modules/named/manifests/init.pp b/modules/named/manifests/init.pp index 2868a070f..361ffaa40 100644 --- a/modules/named/manifests/init.pp +++ b/modules/named/manifests/init.pp @@ -1,12 +1,6 @@ class named { munin::check { 'bind': } - site::aptrepo { 'bind-ratelimit': - url => 'http://db.debian.org/debian-admin', - suite => 'bind-ratelimit', - components => 'main', - } - package { 'bind9': ensure => installed } @@ -15,32 +9,13 @@ class named { ensure => running, } - @ferm::rule { '00-dsa-bind-no-ddos-any': + ferm::rule { '00-dsa-bind-no-ddos-any': domain => '(ip ip6)', description => 'Allow nameserver access', rule => 'proto udp dport 53 mod string from 32 to 64 algo bm hex-string \'|0000ff0001|\' jump DROP' } - if getfromhash($site::nodeinfo, 'dns_primary') { - @ferm::rule { '01-dsa-bind-4': - domain => '(ip)', - description => 'Allow nameserver access', - rule => '&TCP_UDP_SERVICE_RANGE(53, $HOST_DEBIAN_V4)', - } - @ferm::rule { '01-dsa-bind-6': - domain => '(ip6)', - description => 'Allow nameserver access', - rule => '&TCP_UDP_SERVICE_RANGE(53, $HOST_DEBIAN_V6)', - } - } else { - @ferm::rule { '01-dsa-bind': - domain => '(ip ip6)', - description => 'Allow nameserver access', - rule => '&TCP_UDP_SERVICE(53)' - } - } - - @ferm::rule { 'dsa-bind-notrack': + ferm::rule { 'dsa-bind-notrack': domain => '(ip ip6)', description => 'NOTRACK for nameserver traffic', table => 'raw', @@ -48,7 +23,7 @@ class named { rule => 'proto (tcp udp) dport 53 jump NOTRACK' } - @ferm::rule { 'dsa-bind-notrack-out': + ferm::rule { 'dsa-bind-notrack-out': domain => '(ip ip6)', description => 'NOTRACK for nameserver traffic', table => 'raw', @@ -62,4 +37,28 @@ class named { group => bind, mode => '0775', } + + file { '/etc/bind/named.conf.options': + content => template('named/named.conf.options.erb'), + notify => Service['bind9'], + } + + file { '/etc/bind/named.conf.puppet-shared-keys': + mode => '0640', + content => template('named/named.conf.puppet-shared-keys.erb'), + owner => root, + group => bind, + notify => Service['bind9'], + } + + concat { '/etc/bind/named.conf.puppet-misc': + notify => Service['bind9'], + } + concat::fragment { 'dsa-named-conf-puppet-misc---header': + target => '/etc/bind/named.conf.puppet-misc', + order => '000', + content => @(EOF) + // THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. + | EOF + } }