munin::check { 'spamassassin': }
}
- if $::hostname in [chopin,franck,gluck,kassia,klecker,lobos,morricone,ravel,saens,schein,santoro,steffani,villa,wieck,bizet] {
+ if $::hostname in [chopin,franck,kassia,klecker,morricone,ravel,bizet] {
include vsftpd
}
}
--- /dev/null
+anonymous_enable=YES\r
+connect_from_port_20=NO\r
+connect_from_port_20=YES\r
+dirmessage_enable=NO\r
+dirmessage_enable=YES\r
+ftpd_banner=security.debian.org FTP server (vsftpd)\r
+listen=YES\r
+ls_recurse_enable=YES\r
+pam_service_name=vsftpd\r
+rsa_cert_file=/etc/ssl/certs/vsftpd.pem\r
+secure_chroot_dir=/var/run/vsftpd\r
+setproctitle_enable=YES\r
+xferlog_enable=YES\r
+xferlog_file=/var/log/vsftpd.log\r
config => 'puppet:///modules/roles/security_mirror/security.debian.org'
}
+ class { 'vsftpd::site':
+ source => 'puppet:///modules/roles/security_mirror/vsftpd.conf'
+ }
}
--- /dev/null
+class vsftpd::site (
+ $source='',
+ $content='',
+ $ensure=present,
+){
+
+ include vsftpd
+
+ if ($source and $content) {
+ fail ( "Can't have both source and content for $name" )
+ }
+
+ case $ensure {
+ present,absent: {}
+ default: { fail ( "Invald ensure `$ensure' for $name" ) }
+ }
+
+ if $source {
+ file { '/etc/vsftpd.conf':
+ ensure => $ensure,
+ source => $source,
+ notify => Service['vsftpd']
+ }
+ } elsif $content {
+ file { '/etc/vsftpd.conf':
+ ensure => $ensure,
+ content => $content,
+ notify => Service['vsftpd']
+ }
+ } else {
+ fail ( "Need one of source or content for $name" )
+ }
+
+}