manala.proftpd

#######################################################################################################

:exclamation: ABLEGERUNG :exclamation:

Dieses Repository und die damit verbundene Rolle sind zugunsten der Manala Ansible Collection eingestellt.

Informationen zur Nutzung finden Sie im Repository der Sammlung.

#######################################################################################################

Ansible Rolle: ProFTPd Build-Status

:exclamation: Probleme melden und Pull-Requests senden im Haupt-Repository der Ansible-Rollen :exclamation:

Diese Rolle kümmert sich um die Einrichtung von ProFTPd.

Sie ist Teil des Manala Ansible Stacks, kann aber auch als eigenständige Komponente verwendet werden.

Anforderungen

Keine.

Abhängigkeiten

Keine.

Installation

Ansible 2+

Verwendung des Ansible Galaxy CLI:

ansible-galaxy install manala.proftpd

Verwendung der Ansible Galaxy Anforderungsdatei:

- src: manala.proftpd

Rollenhandler

Name Typ Beschreibung
proftpd restart Dienst ProFTPD-Server neu starten

Rollenvariablen

Name Standard Typ Beschreibung
manala_proftpd_install_packages ~ Array Abhängigkeitspakete zur Installation
manala_proftpd_install_packages_default ['proftpd-basic'] Array Standardabhängigkeitspakete zur Installation
manala_proftpd_configs_exclusive false Boolean Exklusivität der Konfigurationen
manala_proftpd_configs_dir '/etc/proftpd/conf.d' String Pfad zum Konfigurationsverzeichnis
manala_proftpd_configs_defaults {} String Standardkonfigurationen
manala_proftpd_configs [] Array Konfigurationen
manala_proftpd_users_file '/etc/ftpd.passwd' String Pfad zur Datei mit Benutzerkonten
manala_proftpd_users_template 'users/_default.j2' String Pfad zur Vorlage für Benutzerkonten
manala_proftpd_users_defaults {...} Array Standardbenutzerkonten für ProFTPd
manala_proftpd_users [] Array ProFTPd-Benutzerkonten

Beispielkonfiguration

Der Schlüssel manala_proftpd_configs ermöglicht es Ihnen, Konfigurationen basierend auf dem gewählten Vorlagenformat zu definieren.

manala_proftpd_configs_exclusive sorgt dafür, dass vorhandene ProFTPd-Konfigurationsdateien in das durch den Schlüssel manala_proftpd_configs_dir definierte Verzeichnis verschoben werden. So wird sichergestellt, dass keine alten oder manuell erstellten Dateien die aktuelle Konfiguration beeinträchtigen.

manala_proftpd_configs_exclusive: true

Ein Zustand (present|absent) kann angegeben werden.

manala_proftpd_configs:
  # Dictionary-basiert
  - file: default.conf
    config:
      ServerName: Manala
      PassivePorts: 10000 10030
      DefaultRoot: "~"
      AuthOrder: mod_auth_file.c
      AuthUserFile: /etc/ftpd.passwd
      RequireValidShell: false
  # Array-basiert (veraltet)
  - file: default_deprecated.conf
    config:
      - ServerName: Manala
      - PassivePorts: 10000 10030
      - DefaultRoot: "~"
      - AuthOrder: mod_auth_file.c
      - AuthUserFile: /etc/ftpd.passwd
      - RequireValidShell: false
  # Inhaltbasiert
  - file: content.conf
    config: |
      <Anonymous ~ftp>
        User  ftp
        Group nogroup
      </Anonymous>
  # Vorlagenbasiert
  - file: template.conf
    template: my_proftpd_template.conf.j2
    config:
      Foo: bar
  # Sicherstellen, dass die Konfiguration abwesend ist
  - file: absent.conf
    state: absent # "present" ist Standard
  # Konfiguration ignorieren
  - file: ignore.conf
    state: ignore
  # Konfigurationen zusammenfassen
  - "{{ my_custom_configs_array }}"

Virtueller Host

Sie können auch die Konfiguration für virtuelle Hosts verwenden.

  - 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

Benutzerkonten-Konfiguration

Verwenden Sie den Schlüssel manala_proftpd_users_template, um festzulegen, welche Benutzer auf den FTP-Speicher zugreifen dürfen.

manala_proftpd_users_defaults:
  uid: 1337 # Wird standardmäßig auf Benutzer angewendet
  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

Wir empfehlen Ihnen nachdrücklich, einen SHA2-Passwort-Hash zu generieren. Auf Linux kann er mit folgendem Befehl generiert werden: echo -n yourpassword | mkpasswd --method=sha-512 -

Beispiel-Playbook

- hosts: servers
  roles:
    - role: manala.proftpd

Lizenz

MIT

Autoreninformationen

Manala (http://www.manala.io/) ist ein Open-Source-Projekt, unterstützt von der französischen Webagentur (ELAO)

Über das Projekt

Handle proftpd

Installieren
ansible-galaxy install manala.proftpd
GitHub Repository
Lizenz
Unknown
Downloads
8.1k
Besitzer
Manala is an open source project supported by the french web agency ELAO providing advanced ansible roles for website's infrastructures and far more.