- $noop = $::hostname ? {
- villa => false,
- lobos => false,
- saens => false,
- schein => false,
- steffani => false,
- wieck => false,
- default => true
- }
-
- if $source {
- file { $fname:
- ensure => $ensure,
- noop => $noop,
- source => $source,
- }
- } elsif $content {
- file { $fname:
- ensure => $ensure,
- noop => $noop,
- content => $content,
- }
- } else {
- fail ( "Need one of source or content for $name" )
- }
-
- # We don't need a firewall rule because it's added in vsftp.pp
- xinetd::service { "vsftpd-${name}":
- bind => $bind,
- id => "${name}-ftp",
- server => '/usr/sbin/vsftpd',
- port => 'ftp',
- server_args => $fname,
- ferm => false,
- require => File[$fname]
+ file { $fname:
+ ensure => $ensure,
+ content => template('vsftpd/vsftpd.conf.erb'),
+ owner => 'root',
+ group => 'root',
+ mode => '0444',
+ }
+
+ file { "/etc/logrotate.d/vsftpd-${name}":
+ ensure => absent
+ }
+
+ file { "/etc/systemd/system/vsftpd-${name}@.service":
+ ensure => $ensure,
+ content => template('vsftpd/systemd-vsftpd.service.erb'),
+ owner => 'root',
+ group => 'root',
+ mode => '0444',
+ require => File[$fname],
+ notify => Exec['systemctl daemon-reload'],
+ }
+
+ file { "/etc/systemd/system/vsftpd-${name}.socket":
+ ensure => $ensure,
+ content => template('vsftpd/systemd-vsftpd.socket.erb'),
+ owner => 'root',
+ group => 'root',
+ mode => '0444',
+ notify => [
+ Exec['systemctl daemon-reload'],
+ Service["vsftpd-${name}.socket"],
+ ],