Note that exim contains tracker-specific configuration
[mirror/dsa-puppet.git] / modules / named / manifests / primary.pp
1 # our primary nameserver
2 #
3 # it will not, by default, open the firewall for requests.
4 class named::primary inherits named::authoritative {
5   include dnsextras::entries
6
7   concat::fragment { 'dsa-named-conf-puppet-misc---local-shared-keys':
8     target  => '/etc/bind/named.conf.puppet-misc',
9     order   => '020',
10     content => @(EOF),
11       include "/etc/bind/named.conf.shared-keys";
12       | EOF
13   }
14   concat::fragment { 'dsa-named-conf-puppet-misc---named.conf.external-secondaries-ACLs':
15     target  => '/etc/bind/named.conf.puppet-misc',
16     order   => '025',
17     content => template('named/named.conf.external-secondaries-ACLs.erb'),
18   }
19
20   concat::fragment { 'dsa-named-conf-puppet-misc---openpgpkey-zone':
21     target  => '/etc/bind/named.conf.puppet-misc',
22     order   => '020',
23     content => @("EOF"/$)
24       // MAINTAIN-KEY: _openpgpkey.debian.org
25
26       zone "_openpgpkey.debian.org" {
27         type slave;
28         file "db._openpgpkey.debian.org";
29         allow-query { any; };
30         masters {
31           ${ join(getfromhash($deprecated::allnodeinfo, 'kaufmann.debian.org', 'ipHostNumber'), ";") } ;
32         };
33         allow-transfer {
34           127.0.0.1;
35           rcode0-ACL;
36           dnsnode-ACL;
37           dnsnodeapi-ACL;
38         };
39         also-notify {
40           rcode0-masters;
41           dnsnode-masters;
42           dnsnodeapi-masters;
43         };
44
45         key-directory "/srv/dns.debian.org/var/keys/_openpgpkey.debian.org";
46         sig-validity-interval 40 25;
47         auto-dnssec maintain;
48         inline-signing yes;
49       };
50       | EOF
51   }
52   @@ferm::rule::simple { "dsa-bind-from-${::fqdn}":
53     tag         => 'named::keyring::ferm',
54     description => 'Allow primary access to the keyring master',
55     proto       => ['udp', 'tcp'],
56     port        => 'domain',
57     saddr       => $base::public_addresses,
58   }
59
60   concat::fragment { 'puppet-crontab--nsec3':
61     target  => '/etc/cron.d/puppet-crontab',
62     content => @(EOF)
63       13 19 4 * * root chronic /usr/sbin/rndc signing -nsec3param 1 0 16 $(head -c 20 /dev/urandom | sha512sum | cut -b 1-10) debian.net
64       29 12 7 * * root chronic /usr/sbin/rndc signing -nsec3param 1 0 16 $(head -c 20 /dev/urandom | sha512sum | cut -b 1-10) debian.org
65       32 12 7 * * root chronic /usr/sbin/rndc signing -nsec3param 1 0 16 $(head -c 20 /dev/urandom | sha512sum | cut -b 1-10) debconf.org
66       36 12 7 * * root chronic /usr/sbin/rndc signing -nsec3param 1 0 16 $(head -c 20 /dev/urandom | sha512sum | cut -b 1-10) _openpgpkey.debian.org
67
68       | EOF
69   }
70 }