noplanman.lufi

Rol de Ansible para Lufi (Subamos ese archivo)

Estado de Construcción Rol de Ansible


: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

Acerca del proyecto

Install and run Lufi on a Debian-like system.

Instalar
ansible-galaxy install noplanman.lufi
Licencia
mit
Descargas
90
Propietario
Passionate open sourcerer and sharer 😇 Find me coding at @php-telegram-bot and a plethora of other little projects that I care about.