Forge Home

proftpd

Puppet module for ProFTPd + proftpd mod MySQL

Jordi Duran i Batidor

joduba

10,250 downloads

8,826 latest version

3.0 quality score

Version information

  • 0.0.5 (latest)
  • 0.0.4
  • 0.0.3
  • 0.0.2
  • 0.0.1
released May 17th 2015
This version is compatible with:
  • Ubuntu

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'joduba-proftpd', '0.0.5'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add joduba-proftpd
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install joduba-proftpd --version 0.0.5

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

joduba/proftpd — version 0.0.5 May 17th 2015

puppet-proftpd

Overview

This module enables and configures a proftpd FTP server instance.

  • proftpd : Enable and configure the proftpd FTP server

Examples

With all of the module's default settings :

include proftpd

Tweaking a few settings (have a look at manifests/init.pp to know which directives are supported as parameters) :

class { 'proftpd':
    serverName => "My FTPServer",
    timeoutNoTransfer => 900,
    timeoutStalled => 3600,
    timeoutIdle => 600,
    user => 'www-data',
    group => 'www-data',
    passivePorts=> '60000 60199',
    displayConnectContent => 'WARNING!!!

This web services are running with UTF-8 encoding.
Please verify that any published text file is UTF-8 encoded
to avoid any displaying errors.

Thank you',

}

For any directives which aren't directly supported by the module, use the additional directives hash parameter :

class { 'proftpd':
  serverName => "My FTPServer",
  directives  => {
    'Include' => '/etc/proftpd/virtuals.conf',
  },
}

Mod_SQL requires connection information to be passed to the resource

class { 'proftpd':
    serverName => "My FTPServer",
    timeoutNoTransfer => 900,
    timeoutStalled => 3600,
    timeoutIdle => 600,
    user => 'www-data',
    group => 'www-data',
    passivePorts=> '60000 60199',
    displayConnectContent => 'WARNING!!!

This web services are running with UTF-8 encoding.
Please verify that any published text file is UTF-8 encoded
to avoid any displaying errors.

Thank you',
    load_modules          => {
        mod_sql => {
            sqldbhost => "localhost",
            sqldbname => "ftpusers",
            sqldbuser => "ftpusers",
            sqldbpass => "mypassword",
        }
    }

For any directives which aren't directly supported by the module, use the additional directives hash parameter :

class { 'proftpd':
    serverName => "My FTPServer",
    timeoutNoTransfer => 900,
    timeoutStalled => 3600,
    timeoutIdle => 600,
    user => 'www-data',
    group => 'www-data',
    passivePorts=> '60000 60199',
    displayConnectContent => 'WARNING!!!

This web services are running with UTF-8 encoding.
Please verify that any published text file is UTF-8 encoded
to avoid any displaying errors.

Thank you',
    load_modules          => {
        mod_sql => {
            sqldbhost => "localhost",
            sqldbname => "ftpusers",
            sqldbuser => "ftpusers",
            sqldbpass => "mypassword",
            directives  => {
              'SQLUserWhereClause' => '"LoginAllowed = \'true\'"',
            },
        }
    }