weareinteractive.vsftpd
Rôle Ansible weareinteractive.vsftpd
weareinteractive.vsftpd
est un rôle Ansible qui :
- installe vsftpd
- configure vsftpd
- gère les utilisateurs
Remarque :
Comme Ansible Galaxy prend désormais en charge l'organisation, ce rôle est passé de
franklinkim.vsftpd
àweareinteractive.vsftpd
!
Installation
Utiliser ansible-galaxy
:
$ ansible-galaxy install weareinteractive.vsftpd
Utiliser requirements.yml
:
- src: weareinteractive.vsftpd
Utiliser git
:
$ git clone https://github.com/weareinteractive/ansible-vsftpd.git weareinteractive.vsftpd
Dépendances
- Ansible >= 2.4
- {"rôle"=>"weareinteractive.openssl", "quand"=>["vsftpd_enable_ssl|default(true)"], "tags"=>["openssl-dependency", "dépendances", "openssl"]}
Variables
Voici une liste de toutes les variables par défaut pour ce rôle, qui sont également disponibles dans defaults/main.yml
.
---
#
# vsftpd_users:
# - nom_utilisateur: ftpuser
# nom: Utilisateur FTP
# état: présent (par défaut) ou absent
# supprimer: oui ou non (par défaut)
# commentaire: Utilisateur FTP pour le transfert de fichiers
# uid: 13370
# domicile: /chemin/vers/domicile
# mot_de_passe: "{{ 'ftpuser' | password_hash('sha256', 'mysecretsalt') }}"
# vsftpd_config:
# local_umask: 022
# vsftpd_seboolean:
# ftp_home_dir: oui
# ftpd_full_access: non
#
# définir le paquet (version)
vsftpd_package: vsftpd
# utilisateurs à créer avec nologin
vsftpd_users: []
# démarrer au démarrage
vsftpd_service_enabled: oui
# état actuel : démarré, arrêté
vsftpd_service_state: démarré
# activer ssl par défaut
vsftpd_enable_ssl: vrai
# clé ssl par défaut
vsftpd_key_file: ssl-cert-snakeoil.key
# certif ssl par défaut
vsftpd_cert_file: ssl-cert-snakeoil.pem
# variables de configuration
vsftpd_config: {}
# modèle de configuration à installer, relatif à la racine du dépôt ansible
vsftpd_config_template:
# booléens SELinux facultatifs à définir, par exemple pour RedHat
vsftpd_seboolean: {}
Handlers
Voici les handlers définis dans handlers/main.yml
.
---
- name: redémarrer vsftpd
service:
name: vsftpd
state: restarted
when: vsftpd_service_state != 'arrêté'
# Ignorer les erreurs dues à : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=754762;msg=9
ignore_errors: oui
Utilisation
Voici un exemple de playbook :
---
- hosts: tous
rôles:
- weareinteractive.vsftpd
vars:
vsftpd_users:
- nom_utilisateur: ftpuser
nom: Utilisateur FTP
mot_de_passe: "{{ 'ftpuser' | password_hash('sha256', 'mysecretsalt') }}"
vsftpd_config:
listen_port: 990
local_enable: OUI
write_enable: OUI
chroot_local_user: OUI
xferlog_enable: OUI
log_ftp_protocol: OUI
allow_writeable_chroot: OUI
Tests
$ git clone https://github.com/weareinteractive/ansible-vsftpd.git
$ cd ansible-vsftpd
$ make test
Contribuer
En l'absence d'un guide de style formel, veillez à maintenir le style de codage existant. Ajoutez des tests unitaires et des exemples pour toute nouvelle fonctionnalité ou fonctionnalité modifiée.
- Forkez-le
- Créez votre branche de fonctionnalité (
git checkout -b ma-nouvelle-fonctionnalité
) - Commitez vos changements (
git commit -am 'Ajoutez une fonctionnalité'
) - Poussez vers la branche (
git push origin ma-nouvelle-fonctionnalité
) - Créez une nouvelle Pull Request
Remarque : Pour mettre à jour le fichier README.md
, veuillez installer et exécuter ansible-role
:
$ gem install ansible-role
$ ansible-role docgen
Licence
Copyright (c) We Are Interactive sous la licence MIT.
ansible-galaxy install weareinteractive.vsftpd