noplanman.lufi
Rol de Ansible para Lufi (Subamos ese archivo)
:cohete: El desarrollo se ha trasladado a git.feneas.org.
(El repositorio en GitHub es solo un espejo, así que haz un fork en Feneas para contribuir. No se necesita registro, solo inicia sesión con tu cuenta de GitHub.)
Este rol instala y configura Lufi en servidores Debian/Ubuntu. Descubre más sobre Lufi, creado por Luc Didry.
Este rol instalará automáticamente un servicio que se iniciará cuando el servidor arranque. También detectará automáticamente qué gestor de servicios se está utilizando.
Requisitos
Usar este rol no instala Nginx o Apache como proxy inverso, ¡tienes que hacerlo tú mismo! Echa un vistazo a las [configuraciones de ejemplo].
Variables del rol
Configura el usuario/grupo que se utilizará para ejecutar Lufi. Tiene sentido usar el usuario/grupo del servidor web.
lufi_user: www-data
lufi_group: www-data
Configura si Lufi debe mantenerse actualizado. (por defecto: no)
lufi_keep_updated: no
Hay algunos valores obligatorios y muchos opcionales. Revisa todas las posibles variables en defaults/main.yml
.
# ¡Requerido!
lufi_working_dir: "/var/www/example.com"
lufi_listen: "http://127.0.0.1:8080" # O un array, si hay múltiples direcciones.
lufi_contact: "[email protected]"
lufi_secrets: ["array", "de", "secretos", "aleatorios"]
# Opcionales
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 # entre 10MB y 50MB => máximo es 90 días, menos de 10MB => máximo es max_delay (ver arriba)
50000000: 60 # entre 50MB y 1GB => máximo es 60 días
1000000000: 2 # más de 1GB => máximo es 2 días
lufi_prefix: "/"
lufi_allowed_domains: []
lufi_fixed_domain: ""
lufi_mail:
how: "smtp"
howargs: ["smtp.example.org"]
lufi_mail_sender: "[email protected]"
lufi_db_type: "sqlite"
lufi_db_path: "lufi.db"
lufi_pgdb:
database: "lufi"
host: "localhost"
user: "DBUSER"
pwd: "DBPASSWORD"
lufi_upload_dir: "files"
lufi_ldap:
uri: "ldaps://ldap.example.org"
user_tree: "ou=users,dc=example,dc=org"
bind_dn: ",ou=users,dc=example,dc=org"
bind_user: "uid=ldap_user"
bind_pwd: "secr3t"
user_filter: "!(uid=ldap_user)"
lufi_htpasswd: "lufi.passwd"
lufi_session_duration: 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
Etiquetas del rol
Cada parte de la configuración tiene una etiqueta.
lufi:install
lufi:site
lufi:service
Dependencias
Ninguna.
Ejemplo de 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: "¡Bienvenido a Lufi. ¡Sube esos archivos!"
Pruebas
Se utiliza Docker para probar el rol con diferentes sistemas operativos.
Revisa la carpeta tests
.
Licencia
MIT
Install and run Lufi on a Debian-like system.
ansible-galaxy install noplanman.lufi