manala.proftpd
#######################################################################################################
:exclamation: DÉPRÉCIATION :exclamation:
Ce dépôt et le rôle associé sont dépréciés au profit de la Collection Ansible Manala
Vous trouverez des informations sur son utilisation dans le dépôt de la collection
#######################################################################################################
Rôle Ansible : ProFTPd 
:exclamation: Signalez des problèmes et envoyez des demandes de tirage dans le dépôt principal des rôles Ansible :exclamation:
Ce rôle s'occupe de l'installation de ProFTPd.
Il fait partie de la pile Ansible Manala mais peut être utilisé comme un composant autonome.
Exigences
Aucune.
Dépendances
Aucune.
Installation
Ansible 2+
Utilisation de la CLI ansible galaxy :
ansible-galaxy install manala.proftpd
Utilisation d'un fichier de requirements ansible galaxy :
- src: manala.proftpd
Gestionnaires de rôle
| Nom | Type | Description | 
|---|---|---|
| proftpd restart | Service | Redémarrer le serveur proftpd | 
Variables de rôle
| Nom | Par défaut | Type | Description | 
|---|---|---|---|
| manala_proftpd_install_packages | ~ | Tableau | Paquets de dépendance à installer | 
| manala_proftpd_install_packages_default | ['proftpd-basic'] | Tableau | Paquets de dépendance par défaut à installer | 
| manala_proftpd_configs_exclusive | faux | Booléen | Exclusivité des configurations | 
| manala_proftpd_configs_dir | '/etc/proftpd/conf.d' | Chaîne | Chemin du répertoire de configurations | 
| manala_proftpd_configs_defaults | {} | Chaîne | Valeurs par défaut des configurations | 
| manala_proftpd_configs | [] | Tableau | Configurations | 
| manala_proftpd_users_file | '/etc/ftpd.passwd' | Chaîne | Chemin du fichier de définition des comptes utilisateurs | 
| manala_proftpd_users_template | 'users/_default.j2' | Chaîne | Chemin du modèle de définition des comptes utilisateurs | 
| manala_proftpd_users_defaults | {...} | Tableau | Valeurs par défaut des comptes utilisateurs ProFTPd | 
| manala_proftpd_users | [] | Tableau | Comptes utilisateurs ProFTPd | 
Exemple de configuration
La clé manala_proftpd_configs est conçue pour vous permettre de définir la configuration en fonction du format de modèle choisi.
manala_proftpd_configs_exclusive vous permet de nettoyer les fichiers de configuration existants de proFTPd dans le répertoire défini par la clé manala_proftpd_configs_dir. Cela garantit qu'aucun ancien fichier ou fichier créé manuellement n'altérera la configuration actuelle.
manala_proftpd_configs_exclusive: true
Un état (présent|absent) peut être fourni.
manala_proftpd_configs:
  # Base sur un dictionnaire
  - file: default.conf
    config:
      ServerName: Manala
      PassivePorts: 10000 10030
      DefaultRoot: "~"
      AuthOrder: mod_auth_file.c
      AuthUserFile: /etc/ftpd.passwd
      RequireValidShell: false
  # Base sur un tableau de dictionnaires (déprécié)
  - file: default_deprecated.conf
    config:
      - ServerName: Manala
      - PassivePorts: 10000 10030
      - DefaultRoot: "~"
      - AuthOrder: mod_auth_file.c
      - AuthUserFile: /etc/ftpd.passwd
      - RequireValidShell: false
  # Basé sur le contenu
  - file: content.conf
    config: |
      <Anonymous ~ftp>
        User  ftp
        Group nogroup
      </Anonymous>
  # Basé sur un modèle
  - file: template.conf
    template: my_proftpd_template.conf.j2
    config:
      Foo: bar
  # S'assurer que la config est absente
  - file: absent.conf
    state: absent # "présent" par défaut
  # Ignorer la config
  - file: ignore.conf
    state: ignore
  # Aplatir les configs
  - "{{ my_custom_configs_array }}"
VirtualHost
Vous pouvez également utiliser la configuration VirtualHost
  - file: virtual_host_foo.conf
    config:
      - VirtualHost ftp.foo.com:
        - ServerName: Foo FTP Server
        - MaxClients: 10
        - MaxLoginAttempts: 1
        - Limit LOGIN:
          - Order: Allow,Deny
          - AllowUser: foo
          - Deny: from all
        - DefaultRoot: "~"
        - Directory /srv/ftp/docs:
          - Limit ALL:
            - DenyAll
Configuration des comptes utilisateurs
Utilisez la clé manala_proftpd_users_template pour définir les utilisateurs autorisés à accéder au stockage FTP.
manala_proftpd_users_defaults:
  uid: 1337 # Sera appliqué par défaut aux utilisateurs
  gid: 7331
manala_proftpd_users:
  - name: manala
    password: "$1$KBijsXOEr4"b$9HEyZDLPnSe3SXq0n66oE3y/"
    home: /srv/my_dir
    shell: /bin/false
  - name: toto
    password: "$1$9f19dba0ce5ece883b53275dcc1721b9"
    home: /home/toto
    shell: /bin/false
    mode: "0755"
    uid: 1000
    gid: 1000
Nous vous encourageons fortement à générer un hachage de mot de passe SHA2
Sur Linux, il peut être généré avec :
echo -n votremotdepasse | mkpasswd --method=sha-512 -
Exemple de playbook
- hosts: servers
  roles:
    - role: manala.proftpd
Licence
MIT
Informations sur l'auteur
Manala (http://www.manala.io/) est un projet open source soutenu par l'agence web française (ELAO)
ansible-galaxy install manala.proftpd