X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fnamed%2Fmanifests%2Finit.pp;h=c09a272dc39e609b1df4cbe635b2a0b64ba796cc;hb=0002090d2632ed785daed7430afc318268dc3aba;hp=a2dde9d3c863e7c651e2a567d7140da9efea142f;hpb=1a2b96081cd2d9f1492630b1ebb60331e7db5a06;p=mirror%2Fdsa-puppet.git diff --git a/modules/named/manifests/init.pp b/modules/named/manifests/init.pp index a2dde9d3c..c09a272dc 100644 --- a/modules/named/manifests/init.pp +++ b/modules/named/manifests/init.pp @@ -1,11 +1,11 @@ class named { - munin::check { 'bind': } site::aptrepo { 'bind-ratelimit': - url => 'http://db.debian.org/debian-admin', - suite => 'bind-ratelimit', - components => 'main', + ensure => absent, + #url => 'http://db.debian.org/debian-admin', + #suite => 'bind-ratelimit', + #components => 'main', } package { 'bind9': @@ -16,16 +16,29 @@ class named { ensure => running, } - @ferm::rule { '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' } - @ferm::rule { 'dsa-bind': - domain => '(ip ip6)', - description => 'Allow nameserver access', - rule => '&TCP_UDP_SERVICE(53)' + if has_role('dns_primary') { + @ferm::rule { '01-dsa-bind-4': + domain => '(ip)', + description => 'Allow nameserver access', + rule => '&TCP_UDP_SERVICE_RANGE(53, ( $HOST_DNS_GEO_V4 $HOST_NAGIOS_V4 $HOST_RCODE0_V4 $HOST_EASYDNS_V4 5.153.231.21 ) )', + } + @ferm::rule { '01-dsa-bind-6': + domain => '(ip6)', + description => 'Allow nameserver access', + rule => '&TCP_UDP_SERVICE_RANGE(53, ( $HOST_DNS_GEO_V6 $HOST_NAGIOS_V6 $HOST_RCODE0_V6 2001:41c8:1000:21::21:21 ) )', + } + } else { + @ferm::rule { '01-dsa-bind': + domain => '(ip ip6)', + description => 'Allow nameserver access', + rule => '&TCP_UDP_SERVICE(53)' + } } @ferm::rule { 'dsa-bind-notrack': @@ -50,4 +63,12 @@ class named { group => bind, mode => '0775', } + + 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'], + } }