40f80409675c700e62f418b14f5fe88ba3e636de
[mirror/dsa-puppet.git] / modules / roles / manifests / ftp_master.pp
1 # ftpmaster role
2 #
3 # @param db_port    port of the database cluster for ftp-master's dak
4 class roles::ftp_master (
5   Integer $db_port,
6 )
7 {
8   include roles::dakmaster
9   include roles::signing
10   include apache2
11
12   rsync::site { 'dakmaster':
13     source      => 'puppet:///modules/roles/dakmaster/rsyncd.conf',
14     # Needs to be at least number of direct mirrors plus some spare
15     max_clients => 50,
16     sslname     => 'ftp-master.debian.org',
17   }
18
19   ssl::service { 'ftp-master.debian.org':
20     notify   => Exec['service apache2 reload'],
21     key      => true,
22     tlsaport => [443, 1873],
23   }
24
25   # export ssh allow rules for hosts that we should be able to access
26   @@ferm::rule::simple { "dsa-ssh-from-ftp_master-${::fqdn}":
27     tag         => 'ssh::server::from::ftp_master',
28     description => 'Allow ssh access from ftp_master',
29     chain       => 'ssh',
30     saddr       => $base::public_addresses,
31   }
32
33   postgres::cluster::hba_entry { 'dak-guest':
34     pg_port  => $db_port,
35     database => 'projectb',
36     user     => 'guest',
37     address  => '127.0.0.1',
38     method   => 'trust',
39     order    => '20',
40     firewall => false,
41   }
42 }