Giter VIP home page Giter VIP logo

ansible-pureftpd's Introduction

Ansible Role: Pure-FTPd

Build Status

Installs Pure-FTPd on Debian/Ubuntu linux servers.

Requirements

None.

Role Variables

Available variables are listed below, along with other default values (see defaults/main.yml):

To create a ftp account define all account as follows:

pureftpd_users:
  - name: ftpuser
    password: '$2....40'
    home: '/var/www/site'
    uid: '1002'
    gid: '1002'

To allow virtual users, one single user will be created:

  • pureftpd_user: Name of the ftp user (default 'ftpuser')
  • pureftpd_user_uid: UID of the user (optional)
  • pureftpd_user_home: (optional, e.g. /home/ftp)
  • pureftpd_group: Name of the ftp user group (default 'ftp')
  • pureftpd_group_gid: GID for the group (optional)

Config Variables

Choose which flavour to install: pureftpd_apt_package: pure-ftpd, pure-ftpd-mysql, pure-ftpd-postgresql, pure-ftpd-ldap

Values should be surrounded by quotation marks as otherwise yes becomes True

pureftpd_config:
#  AllowAnonymousFXP:           'no'
#  AllowUserFXP:                'no'
  AltLog:                      'clf:/var/log/pure-ftpd/transfer.log'
#  AltLog:                      'stats:/var/log/pureftpd.log'
#  AltLog:                      'w3c:/var/log/pureftpd.log'
#  AnonymousBandwidth:          '8'
#  AnonymousCanCreateDirs:      'no'
#  AnonymousCantUpload:         'no'
#  AnonymousOnly:               'no'
#  AnonymousRatio:              '1 10'
#  AntiWarez:                   'yes'
#  AutoRename:                  'no'
#  Bind:                         '127.0.0.1,21'
#  BrokenClientsCompatibility:  'no'
#  CallUploadScript:            'yes'
#  ChrootEveryone:              'yes'
#  ClientCharset:               'UTF-8'
#  CreateHomeDir:               'yes'
#  CustomerProof:               'yes'
#  Daemonize:                   'yes'
#  DisplayDotFiles:             'yes'
#  DontResolve:                 'yes'
#  ExtAuth:                     /var/run/ftpd.sock
#  ForcePassiveIP:              '192.168.0.1'
#  FortunesFile:                '/etc/pure-ftpd/cookie'
  FSCharset:                   'UTF-8'
#  IPV4Only:                    'yes'
#  IPV6Only:                    'yes'
#  KeepAllFiles:                'yes'
#  LDAPConfigFile:              /etc/pureftpd-ldap.conf
#  LimitRecursion:              '10000 8'
#  LogPID:                      'yes'
#  MaxClientsNumber:            '50'
#  MaxClientsPerIP:             '{{ ansible_processor_cores }}'
#  MaxDiskUsage:                '99'
#  MaxIdleTime:                 '15'
#  MaxLoad:                     '4'
  MinUID:                      '1000'
#  MySQLConfigFile:             /etc/pure-ftpd/mysql.conf
  NoAnonymous:                 'yes'
#  NoChmod:                     'yes'
#  NoRename:                    'yes'
#  NoTruncate:                  'yes'
  PAMAuthentication:           'yes'
#  PassivePortRange:            '30000 50000'
#  PerUserLimits:               '3:20'
#  PGSQLConfigFile:             /etc/pureftpd-pgsql.conf
#  PIDFile:                     '/var/run/pure-ftpd.pid'
#  ProhibitDotFilesRead:        'no'
#  ProhibitDotFilesWrite:       'no'
  PureDB:                       /etc/pure-ftpd/pureftpd.pdb
#  Quota:                       '1000:10'
#  SyslogFacility:              'ftp'
#  TLS:                         '0'
  TLSCipherSuite:              'ALL:!aNULL:!SSLv3'
#  TrustedIP:                   '10.1.1.1'
#  Umask:                       '117 007'
  UnixAuthentication:          'no'
#  UserBandwidth:                '8'
#  UserRatio:                   '1 10'
#  VerboseLog:                  'yes'

When CallUploadScript is set to yes, pureftpd_upload_script has to be set to enable the script that should be called when an upload is completed. If the script should be executed by a certain user and group, also set pureftpd_upload_script_uid and pureftpd_upload_script_gid.

Dependencies

None.

Example Playbook

- hosts: server
  roles:
    - { role: ansible-pureftpd }

License

MIT / BSD

Author Information

  • Tobias Schifftner, @tschifftner
  • Michael Weinrich, @micxer

ansible-pureftpd's People

Contributors

tschifftner avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

lucaliz

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.