X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Frtc.pp;h=2a6adcd03eb21adc27a561e6e681f57187db9497;hb=236efe8e28f32419ddc5b4445780bd17775adaf3;hp=11723441ed844ab0286b648733290628bbb8f91b;hpb=2dbe8167237546b39709a77eacbf3f74994ba664;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/rtc.pp b/modules/roles/manifests/rtc.pp index 11723441e..2a6adcd03 100644 --- a/modules/roles/manifests/rtc.pp +++ b/modules/roles/manifests/rtc.pp @@ -1,11 +1,14 @@ class roles::rtc { - ssl::service { 'www.debian.org': - tlsaport => 0, - notify => Exec['service repro reload'], + 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': @@ -91,9 +94,51 @@ class roles::rtc { ensure => absent, } - exec { 'service repro reload': - path => '/usr/bin:/usr/sbin:/bin:/sbin', - command => 'service repro reload', - refreshonly => true, + service { 'repro': + ensure => running, + } + dsa_systemd::override { 'repro': + content => @("EOF"), + [Unit] + After=network-online.target + | EOF + } + + 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, } }