noplanman.lufi
Ansible-Rolle für Lufi (Lass uns diese Datei hochladen)
:rocket: Die Entwicklung hat sich zu git.feneas.org verlagert.
(Das Repository auf GitHub ist nur ein Spiegel, also fork auf Feneas, um beizutragen. Keine Registrierung erforderlich, einfach mit deinem GitHub-Konto anmelden.)
Diese Rolle installiert und konfiguriert Lufi auf Debian/Ubuntu-Servern. Erfahre mehr über Lufi, erstellt von Luc Didry.
Diese Rolle wird automatisch einen Dienst installieren, der startet, wenn der Server hochgefahren wird. Sie erkennt auch automatisch, welcher Dienst-Manager verwendet wird.
Anforderungen
Mit dieser Rolle werden Nginx oder Apache nicht als Reverse-Proxy installiert, das musst du selbst erledigen! Sieh dir die [Beispielkonfigurationen] an.
Rollenvariablen
Setze den Benutzer/die Gruppe, die verwendet werden soll, um Lufi auszuführen. Es macht Sinn, den Webserver-Benutzer/die Webserver-Gruppe zu verwenden.
lufi_user: www-data
lufi_group: www-data
Setze, ob Lufi aktuell gehalten werden soll. (Standard: nein)
lufi_keep_updated: no
Es gibt einige verpflichtende und viele optionale Werte. Überprüfe alle möglichen Variablen in defaults/main.yml
.
# Erforderlich!
lufi_working_dir: "/var/www/example.com"
lufi_listen: "http://127.0.0.1:8080" # Oder ein Array, falls mehrere Adressen.
lufi_contact: "[email protected]"
lufi_secrets: ["array", "of", "random", "secrets"]
# Optional
lufi_theme: "default"
lufi_proxy: no
lufi_workers: 30
lufi_clients: 1
lufi_url_length: 8
lufi_provis_step: 5
lufi_provisioning: 100
lufi_token_length: 32
lufi_max_file_size: 104857600
lufi_piwik_img: ""
lufi_broadcast_message: ""
lufi_default_delay: 0
lufi_max_delay: 0
lufi_delay_for_size:
10000000: 90 # zwischen 10MB und 50MB => max 90 Tage, weniger als 10MB => max ist max_delay (siehe oben)
50000000: 60 # zwischen 50MB und 1GB => max 60 Tage
1000000000: 2 # mehr als 1GB => max 2 Tage
lufi_prefix: "/"
lufi_allowed_domains: []
lufi_fixed_domain: ""
lufi_mail:
wie: "smtp"
wie_args: ["smtp.example.org"]
lufi_mail_sender: "[email protected]"
lufi_db_type: "sqlite"
lufi_db_path: "lufi.db"
lufi_pgdb:
datenbank: "lufi"
host: "localhost"
benutzer: "DBUSER"
passwort: "DBPASSWORD"
lufi_upload_dir: "files"
lufi_ldap:
uri: "ldaps://ldap.example.org"
benutzer_tree: "ou=users,dc=example,dc=org"
bind_dn: ",ou=users,dc=example,dc=org"
bind_benutzer: "uid=ldap_user"
bind_passwort: "secr3t"
benutzer_filter: "!(uid=ldap_user)"
lufi_htpasswd: "lufi.passwd"
lufi_session_dauer: 3600
lufi_allow_pwd_on_files: no
lufi_keep_ip_during: 365
lufi_max_total_size: 10*1024*1024*1024
lufi_policy_when_full: "warn"
lufi_delete_no_longer_viewed_files: 90
Rollentags
Jeder Teil der Einrichtung hat ein Tag.
lufi:install
lufi:site
lufi:service
Abhängigkeiten
Keine.
Beispiel-Playbook
# playbook.yml
---
- hosts: servers
become: yes
vars_files:
- vars/main.yml
roles:
- { role: noplanman.lufi }
# vars/main.yml
---
lufi_working_dir: "/var/www/lufi.example.com"
lufi_listen: "http://127.0.0.1:8080"
lufi_contact: "[email protected]"
lufi_secrets: ["xud7ooJu","aiNg7duG","ih7kom8Z","Ocaish3I","Ooja7chi","Eet4weil","Ethee4Go","xahJ0ohy"]
lufi_broadcast_message: "Willkommen bei Lufi. Lade diese Dateien hoch!"
Tests
Docker wird verwendet, um die Rolle mit verschiedenen Betriebssystemen zu testen.
Siehe den tests
Ordner.
Lizenz
MIT
ansible-galaxy install noplanman.lufi