X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fnamed%2Fmanifests%2Fgeodns.pp;h=49a9663da1a2a5e1a8a4baac57454d4e13036b66;hb=584f12fb4c5f6ce47a187868570f439f543b635d;hp=a0c6d12025e3537e59c8b7310d7b094da94f2b77;hpb=f6e3a2e70e9571c48145865b1c5663ca150b9932;p=mirror%2Fdsa-puppet.git diff --git a/modules/named/manifests/geodns.pp b/modules/named/manifests/geodns.pp index a0c6d1202..49a9663da 100644 --- a/modules/named/manifests/geodns.pp +++ b/modules/named/manifests/geodns.pp @@ -1,62 +1,63 @@ class named::geodns inherits named { - munin::check { 'bind_views': - script => bind - } + munin::check { 'bind_views': + script => bind + } - package { 'geoip-database': - ensure => installed, - } + package { 'geoip-database': + ensure => installed, + } - #site::aptrepo { 'geoip': - # url => 'http://db.debian.org/debian-admin', - # suite => 'lenny-bind-geoip', - # components => 'main', - #} - site::aptrepo { 'geoip': ensure => absent } + file { '/etc/bind/': + ensure => directory, + group => bind, + mode => '2755', + require => Package['bind9'], + notify => Service['bind9'], + } + file { '/etc/bind/geodns': + ensure => directory, + mode => '0755', + } + file { '/etc/bind/named.conf.local': + source => 'puppet:///modules/named/common/named.conf.local', + notify => Service['bind9'], + } + if (versioncmp($::lsbmajdistrelease, '9') >= 0) { + file { '/etc/bind/named.conf.acl': + source => 'puppet:///modules/named/common/named.conf.acl', + notify => Service['bind9'], + } + } else { + file { '/etc/bind/named.conf.acl': + source => 'puppet:///modules/named/common/named.conf.acl.bind99', + notify => Service['bind9'], + } + } + file { '/etc/bind/geodns/zonefiles': + ensure => directory, + owner => geodnssync, + group => geodnssync, + mode => '2755', + } + file { '/etc/bind/geodns/named.conf.geo': + source => 'puppet:///modules/named/common/named.conf.geo', + notify => Service['bind9'], + } + file { '/etc/bind/geodns/trigger': + mode => '0555', + source => 'puppet:///modules/named/common/trigger', + } + file { '/etc/cron.d/dsa-boot-geodnssync': ensure => absent; } + concat::fragment { 'puppet-crontab--geodns-boot': + target => '/etc/cron.d/puppet-crontab', + content => @(EOF) + @reboot geodnssync sleep 1m && /etc/bind/geodns/trigger > /dev/null + | EOF + } - file { '/etc/bind/': - ensure => directory, - group => bind, - mode => '2755', - require => Package['bind9'], - notify => Service['bind9'], - } - file { '/etc/bind/geodns': - ensure => directory, - mode => '0755', - } - file { '/etc/bind/named.conf.options': - content => template('named/named.conf.options.erb'), - notify => Service['bind9'], - } - file { '/etc/bind/named.conf.local': - source => 'puppet:///modules/named/common/named.conf.local', - notify => Service['bind9'], - } - file { '/etc/bind/named.conf.acl': - source => 'puppet:///modules/named/common/named.conf.acl', - notify => Service['bind9'], - } - file { '/etc/bind/geodns/zonefiles': - ensure => directory, - owner => geodnssync, - group => geodnssync, - mode => '2755', - } - file { '/etc/bind/geodns/named.conf.geo': - source => 'puppet:///modules/named/common/named.conf.geo', - notify => Service['bind9'], - } - file { '/etc/bind/geodns/trigger': - mode => '0555', - source => 'puppet:///modules/named/common/trigger', - } - file { '/etc/ssh/userkeys/geodnssync': - source => 'puppet:///modules/named/common/authorized_keys', - group => geodnssync, - mode => '0440', - } - file { '/etc/cron.d/dsa-boot-geodnssync': - source => 'puppet:///modules/named/common/cron-geo' - } + ferm::rule::simple { '01-dsa-bind': + description => 'Allow nameserver access', + proto => ['udp', 'tcp'], + port => 'domain', + } }