set expires: headers on alioth-archive
[mirror/dsa-puppet.git] / modules / roles / manifests / rtc.pp
index 7543670..3dfa8b5 100644 (file)
@@ -1,9 +1,21 @@
 class roles::rtc {
 
-       ssl::service { 'www.debian.org':
+       ssl::service { 'debian.org':
+               tlsaport => [],
+               notify  => Service['repro'],
+               key => true,
        }
 
        ssl::service { 'sip-ws.debian.org':
+               notify  => Service['repro'],
+               key => true,
+       }
+
+       dnsextras::tlsa_record{ 'tlsa-xmpp':
+               zone     => 'debian.org',
+               certfile => "/etc/puppet/modules/ssl/files/servicecerts/www.debian.org.crt",
+               port     => [5061, 5222, 5269],
+               hostname => $::fqdn,
        }
 
        @ferm::rule { 'dsa-xmpp-client-ip4':
@@ -81,4 +93,46 @@ class roles::rtc {
        file { '/etc/monit/monit.d/50rtc':
                ensure  => absent,
        }
+
+       service { 'repro':
+               ensure  => running,
+       }
+
+       package { 'freeradius':
+               ensure  => installed,
+       }
+       service { 'freeradius':
+               ensure  => running,
+       }
+       $radius_password = hkdf('/etc/puppet/secret', "rtc-${::hostname}-radius-password")
+       file { '/etc/freeradius/3.0/sites-available/rtc.debian.org':
+               content => template('roles/rtc/freeradius-rtc.erb'),
+               mode    => '0440',
+               group   => freerad,
+       }
+       file { '/etc/freeradius/3.0/sites-enabled/rtc.debian.org':
+               ensure  => link,
+               target  => '../sites-available/rtc.debian.org',
+       }
+       file { '/etc/freeradius/3.0/mods-available/passwd_rtc':
+               source  => 'puppet:///modules/roles/rtc/freeradius-mod-passwd-rtc',
+               mode    => '0440',
+               group   => freerad,
+       }
+       file { '/etc/freeradius/3.0/mods-enabled/passwd_rtc':
+               ensure  => link,
+               target  => '../mods-available/passwd_rtc',
+       }
+       file { '/etc/repro/radius-servers':
+               content => inline_template('localhost/localhost <%= @radius_password %>'),
+               mode    => '0440',
+               group   => repro,
+               notify  => Service['repro'],
+       }
+       file { '/etc/freeradius/3.0/sites-enabled/default':
+               ensure  => absent,
+       }
+       file { '/etc/freeradius/3.0/sites-enabled/inner-tunnel':
+               ensure  => absent,
+       }
 }