weareinteractive.vsftpd
Ansible weareinteractive.vsftpd Role
weareinteractive.vsftpdis an Ansible role that:
- Installs vsftpd (Very Secure FTP Daemon)
- Configures vsftpd
- Manages users
Note:
This role has moved from
franklinkim.vsftpdtoweareinteractive.vsftpdsince Ansible Galaxy now supports organizations!
Installation
To install using ansible-galaxy:
$ ansible-galaxy install weareinteractive.vsftpd
To install using requirements.yml:
- src: weareinteractive.vsftpd
To install using git:
$ git clone https://github.com/weareinteractive/ansible-vsftpd.git weareinteractive.vsftpd
Dependencies
- Ansible version should be 2.4 or higher
- Requires the weareinteractive.opensslrole if SSL is enabled
Variables
Here are the default variables for this role, available in defaults/main.yml.
---
# Define the package name and version
vsftpd_package: vsftpd
# List of users to create (empty by default)
vsftpd_users: []
# Should the service start on boot?
vsftpd_service_enabled: yes
# Current state of the service: started or stopped
vsftpd_service_state: started
# Enable SSL by default?
vsftpd_enable_ssl: true
# Default SSL key file
vsftpd_key_file: ssl-cert-snakeoil.key
# Default SSL certificate file
vsftpd_cert_file: ssl-cert-snakeoil.pem
# Configuration options
vsftpd_config: {}
# Path to the config template
vsftpd_config_template:
# SELinux booleans for RedHat systems (optional)
vsftpd_seboolean: {}
Handlers
Handlers are defined in handlers/main.yml.
---
- name: restart vsftpd
  service:
    name: vsftpd
    state: restarted
  when: vsftpd_service_state != 'stopped'
  ignore_errors: yes # Ignore specific errors
Usage
Here is an example playbook:
---
- hosts: all
  roles:
    - weareinteractive.vsftpd
  vars:
    vsftpd_users:
       - username: ftpuser
         name: FTP User
         password: "{{ 'ftpuser' | password_hash('sha256', 'mysecretsalt') }}"
    vsftpd_config:
      listen_port: 990
      local_enable: YES
      write_enable: YES
      chroot_local_user: YES
      xferlog_enable: YES
      log_ftp_protocol: YES
      allow_writeable_chroot: YES
Testing
To test the role, run the following commands:
$ git clone https://github.com/weareinteractive/ansible-vsftpd.git
$ cd ansible-vsftpd
$ make test
Contributing
If you want to contribute, please follow these steps:
- Fork the repository
- Create a new branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to your branch (git push origin my-new-feature)
- Create a Pull Request
Note: To update the README.md file, install and run ansible-role:
$ gem install ansible-role
$ ansible-role docgen
License
Copyright (c) We Are Interactive under the MIT license.
Informazioni sul progetto
 Installs, configures and adds user for vsftpd
Installa
 ansible-galaxy install weareinteractive.vsftpdLicenza
 
            mit
          
Download
 
            206.8k
          
Proprietario
 