lufi
Ansible Роль для Lufi (Давайте загрузим этот файл)
:rocket: Разработка переместилась на git.feneas.org.
(Репозиторий на GitHub является только зеркалом, поэтому сделайте форк на Feneas, чтобы внести свой вклад. Регистрация не нужна, просто войдите с помощью своей учетной записи GitHub.)
Эта роль устанавливает и настраивает Lufi на серверах Debian/Ubuntu. Узнайте больше о Lufi, созданной Luc Didry.
Эта роль автоматически установит сервис, который будет запускаться при загрузке сервера. Она также автоматически определит, какой менеджер сервисов используется.
Требования
Использование данной роли не устанавливает Nginx или Apache в качестве обратного прокси, это необходимо сделать самостоятельно! Посмотрите на [пример конфигураций].
Переменные роли
Установите пользователя/группу, которые будут использоваться для запуска Lufi. Логично использовать пользователя/группу веб-сервера.
lufi_user: www-data
lufi_group: www-data
Установите, нужно ли поддерживать Lufi в актуальном состоянии. (по умолчанию: нет)
lufi_keep_updated: no
Есть несколько обязательных и много необязательных значений. Проверьте все возможные переменные в defaults/main.yml
.
# Обязательно!
lufi_working_dir: "/var/www/example.com"
lufi_listen: "http://127.0.0.1:8080" # Или массив, если несколько адресов.
lufi_contact: "[email protected]"
lufi_secrets: ["array", "of", "random", "secrets"]
# Необязательно
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 # между 10MB и 50MB => максимум 90 дней, меньше 10MB => максимум max_delay (см. выше)
50000000: 60 # между 50MB и 1GB => максимум 60 дней
1000000000: 2 # более 1GB => максимум 2 дня
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
Теги роли
Каждая часть настройки имеет свой тег.
lufi:install
lufi:site
lufi:service
Зависимости
Нет.
Пример плейбука
# 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: "Добро пожаловать в Lufi. Загружайте файлы!"
Тесты
Docker используется для тестирования роли на разных операционных системах.
Проверьте папку tests
.
Лицензия
MIT
ansible-galaxy install noplanman/ansible-role-lufi