vsftpd: A more Puppety way of installing and managing the vsftpd daemon.
feature. Additionally, this feature is awkward to handle, so it is disabled by default. Unfortunately, some FTP clients will hang when cancelling a transfer unless this feature is available, so you may wish to enable it.
Default: NO
Default: YES
class { 'vsftpd':
pam_service_name => 'ftp',
pasv_enable => true,
pasv_min_port => 1024,
pasv_max_port => 1048,
pasv_address => '127.0.0.1',
}The following parameters are available in the vsftpd class:
config_pathpackage_nameservice_namemanage_serviceservice_enableservice_ensuretemplateallow_anon_sslallow_root_squashed_chrootallow_writeable_chrootanon_mkdir_write_enableanon_other_write_enableanon_upload_enableanon_world_readable_onlyanonymous_enableascii_download_enableascii_upload_enableasync_abor_enablebackgroundcheck_shellchmod_enablechown_uploadschroot_list_enablechroot_local_userconnect_from_port_20debug_ssldelete_failed_uploadsdeny_email_enabledirlist_enabledirmessage_enabledownload_enabledual_log_enableforce_dot_filesforce_anon_data_sslforce_anon_logins_sslforce_local_data_sslforce_local_logins_sslguest_enablehide_idsimplicit_ssllistenlisten_ipv6local_enablelock_upload_fileslog_ftp_protocolls_recurse_enablemdtm_writeno_anon_passwordno_log_lockone_process_modelpasswd_chroot_enablepasv_addr_resolvepasv_enablepasv_promiscuousport_enableport_promiscuousrequire_certrequire_ssl_reuserun_as_launching_usersecure_email_list_enablesession_supportsetproctitle_enablessl_enablessl_request_certssl_sslv2ssl_sslv3ssl_tlsv1strict_ssl_read_eofstrict_ssl_write_shutdownsyslog_enabletcp_wrapperstext_userdb_namestilde_user_enableuse_localtimeuse_sendfileuserlist_denyuserlist_enablevalidate_certvirtual_use_local_privswrite_enablexferlog_enablexferlog_std_formataccept_timeoutaddress_space_limitanon_max_rateanon_umaskchown_upload_modeconnect_timeoutdata_connection_timeoutdelay_failed_logindelay_successful_loginfile_open_modeftp_data_portidle_session_timeoutlisten_portlocal_max_ratelocal_umaskmax_clientsmax_login_failsmax_per_ippasv_min_portpasv_max_porttrans_chunk_sizeanon_rootbanned_email_filebanner_fileca_certs_filechown_usernamechroot_list_filecmds_allowedcmds_denieddeny_filedsa_cert_filedsa_private_key_fileemail_password_fileftp_usernameftpd_bannerguest_usernamehide_filelisten_addresslisten_address6local_rootmessage_filenopriv_userpam_service_namepasv_addressrsa_cert_filersa_private_key_filesecure_chroot_dirssl_ciphersuser_config_diruser_sub_tokenuserlist_filevsftpd_log_filexferlog_file
Data type: String
The path to the main configuration file of vsftpd. Defaults to the os specific path.
Data type: String
The name of the package.
Default value: vsftpd
Data type: String
The name of systemd service
Default value: vsftpd
Data type: Boolean
Wether to manage the systemd service or not.
Default value: true
Data type: Variant[Boolean, Enum['manual', 'mask']]
Wether to enable the service when booting or not.
Default value: true
Data type: Variant[Boolean, Enum['running', 'stopped']]
Control if the service is running or not
Default value: 'running'
Data type: String
Path to the template the file resource is using.
Default value: 'vsftpd/configfile.erb'
Data type: Optional[Boolean]
Only applies if ssl_enable is active. If set to YES, anonymous users will be allowed to use secured SSL connections.
Default when Boolean is undef: NO
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
If set to YES, anonymous users will be permitted to create new directories under certain conditions. For this to work, the option write_enable must be activated, and the anonymous ftp user must have write permission on the parent directory.
Default when Boolean is undef: NO
Default value: undef
Data type: Optional[Boolean]
If set to YES, anonymous users will be permitted to perform write operations other than upload and create directory, such as deletion and renaming. This is generally not recommended but included for completeness.
Default when Boolean is undef: NO
Default value: undef
Data type: Optional[Boolean]
If set to YES, anonymous users will be permitted to upload files under certain conditions. For this to work, the option write_enable must be activated, and the anonymous ftp user must have write permission on desired upload locations. This setting is also required for virtual users to upload; by default, virtual users are treated with anonymous (i.e. maximally restricted) privilege.
Default when Boolean is undef: NO
Default value: undef
Data type: Optional[Boolean]
When enabled, anonymous users will only be allowed to download files which are world readable. This is recognising that the ftp user may own files, especially in the presence of uploads.
Default when Boolean is undef: YES
Default value: undef
Data type: Optional[Boolean]
Controls whether anonymous logins are permitted or not. If enabled, both the usernames ftp and anonymous are recognised as anonymous logins.
Default: YES
Default value: undef
Data type: Optional[Boolean]
When enabled, ASCII mode data transfers will be honoured on downloads.
Default: NO
Default value: undef
Data type: Optional[Boolean]
When enabled, ASCII mode data transfers will be honoured on uploads.
Default: NO
Default value: undef
Data type: Optional[Boolean]
When enabled, a special FTP command known as "async ABOR" will be enabled. Only ill advised FTP clients will use this
Default value: undef
Data type: Optional[Boolean]
When enabled, and vsftpd is started in "listen" mode, vsftpd will background the listener process. i.e. control will immediately be returned to the shell which launched vsftpd.
Default: YES
Default value: undef
Data type: Optional[Boolean]
Note! This option only has an effect for non-PAM builds of vsftpd. If disabled, vsftpd will not check /etc/shells for a valid user shell for local logins.
Default: YES
Default value: undef
Data type: Optional[Boolean]
When enabled, allows use of the SITE CHMOD command. NOTE! This only applies to local users. Anonymous users never get to use SITE CHMOD.
Default value: undef
Data type: Optional[Boolean]
If enabled, all anonymously uploaded files will have the ownership changed to the user specified in the setting chown_username. This is useful from an administrative, and perhaps security, standpoint.
Default: NO
Default value: undef
Data type: Optional[Boolean]
If activated, you may provide a list of local users who are placed in a chroot() jail in their home directory upon login. The meaning is slightly different if chroot_local_user is set to YES. In this case, the list becomes a list of users which are NOT to be placed in a chroot() jail. By default, the file containing this list is /etc/vsftpd/chroot_list, but you may override this with the chroot_list_file setting.
Default: NO
Default value: undef
Data type: Optional[Boolean]
If set to YES, local users will be (by default) placed in a chroot() jail in their home directory after login. Warning: This option has security implications, especially if the users have upload permission, or shell access. Only enable if you know what you are doing. Note that these security implications are not vsftpd specific. They apply to all FTP daemons which offer to put local users in chroot() jails.
Default: NO
Default value: undef
Data type: Optional[Boolean]
This controls whether PORT style data connections use port 20 (ftp-data) on the server machine. For security reasons, some clients may insist that this is the case. Conversely, disabling this option enables vsftpd to run with slightly less privilege.
Default: NO (but the sample config file enables it)
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Boolean]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[Integer]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[Array[Vsftpd::Cmd]]
Default value: undef
Data type: Optional[Array[Vsftpd::Cmd]]
Default value: undef
Data type: Optional[Array[String]]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[Array[String]]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef
Data type: Optional[String]
Default value: undef