security_master -> hiera role
[mirror/dsa-puppet.git] / modules / roles / manifests / security_master.pp
index 6992537..c627ac0 100644 (file)
@@ -1,26 +1,24 @@
 class roles::security_master {
+  include roles::dakmaster
 
-       $bind = $::hostname ? {
-               default => '',
-       }
+  ssl::service { 'security-master.debian.org':
+    notify   => Exec['service apache2 reload'],
+    key      => true,
+    tlsaport => [443, 1873],
+  }
 
-       $bind6 = $::hostname ? {
-               default => '',
-       }
+  rsync::site { 'security_master':
+    source      => 'puppet:///modules/roles/security_master/rsyncd.conf',
+    # Needs to be at least twice the number of direct mirrors (currently 15) plus some spare
+    max_clients => 50,
+    sslname     => 'security-master.debian.org',
+  }
 
-       $logfile = '/var/log/ftp/vsftpd-security-master.debian.org.log'
-
-       vsftpd::site { 'security':
-               content => template('roles/security_master/vsftpd.conf.erb'),
-               logfile => $logfile,
-               bind    => $bind,
-       }
-
-       if $bind6 {
-               vsftpd::site { 'security-v6':
-                       content => template('roles/security_master/vsftpd.conf.erb'),
-                       logfile => $logfile,
-                       bind    => $bind6,
-               }
-       }
+  # export ssh allow rules for hosts that we should be able to access
+  @@ferm::rule::simple { "dsa-ssh-from-security_master-${::fqdn}":
+    tag         => 'ssh::server::from::security_master',
+    description => 'Allow ssh access from security_master',
+    port        => '22',
+    saddr       => $base::public_addresses,
+  }
 }