noplanman.lstu

Lstu(缩短网址)Ansible角色

构建状态 Ansible角色


:rocket: 开发已经迁移到 **git.feneas.org**。

(GitHub上的代码库仅为镜像,请在Feneas上进行分叉以贡献。不需要注册,只需用您的GitHub帐户登录即可。)


该角色在Debian/Ubuntu服务器上安装和配置Lstu。 了解更多关于Lstu的信息,由Luc Didry创建。

该角色将自动安装一个服务,该服务将在服务器启动时启动。 它也会自动识别正在使用的服务管理器。

要求

使用此角色不安装Nginx或Apache作为反向代理,这个您需要自己来做! 查看示例配置

角色变量

设置将用于运行Lstu的用户/组。使用Web服务器的用户/组是合理的。

lstu_user: www-data
lstu_group: www-data

设置Lstu是否应该保持最新。(默认:否)

lstu_keep_updated: no

如果应该以散列格式保存管理员密码。lstu_adminpwd 必须始终是明文密码!)

lstu_hash_adminpwd: yes

有一些必需的和许多可选值。查看所有可能的变量在defaults/main.yml

# 必需的!
lstu_working_dir: "/var/www/example.com"
lstu_listen: "http://127.0.0.1:8080"    # 如果有多个地址,也可以是数组。
lstu_contact: "[email protected]"
lstu_secrets: ["array", "of", "random", "secrets"]

# 可选
lstu_proxy: no
lstu_adminpwd: "sup3r-secr3t"
lstu_theme: "default"
lstu_page_offset: 10
lstu_url_length: 8
lstu_provis_step: 5
lstu_provisioning: 100
lstu_prefix: "/"
lstu_allowed_domains: []
lstu_fixed_domain: "example.org"
lstu_db_type: "sqlite"
lstu_db_path: "lstu.db"
lstu_pgdb:
    database: "lstu"
    host: "localhost"
    port: 5432
    user: "DBUSER"
    pwd: "DBPASSWORD"
    max_connections: 1
lstu_mysqldb:
    database: "lstu"
    host: "localhost"
    port: 3306
    user: "DBUSER"
    pwd: "DBPASSWORD"
    max_connections: 5
lstu_ban_min_strike: 3
lstu_ban_blacklist: []
lstu_ban_whitelist: []
lstu_piwik:
    url: "http://piwik.example.com"
    idsite: "1"
minion:
    enabled: no,
    db_path: "minion.db"
    pgdb:
        database: "lstu_minion"
        host: "localhost"
        port: 5432
        user: "DBUSER"
        pwd: "DBPASSWORD"
    mysqldb:
        database: "lstu_minion"
        host: "localhost"
        port: 3306
        user: "DBUSER"
        pwd: "DBPASSWORD"
lstu_ldap:
    uri: "ldaps://ldap.example.org"
    user_tree: "ou=users,dc=example,dc=org"
    bind_dn: "uid=ldap_user,ou=users,dc=example,dc=org"
    bind_pwd: "secr3t"
    user_attr: "uid"
    user_filter: "(!(uid=ldap_user))"
lstu_htpasswd: "lstu.passwd"
lstu_session_duration: 3600
lstu_max_redir: 2
lstu_spam_blacklist_regex: "foo|bar"
lstu_spam_path_blacklist_regex: "foo|bar"
lstu_spam_whitelist_regex: "foo|bar"
lstu_skip_spamhaus: no
lstu_safebrowsing_api_key: ""
lstu_memcached_servers: []
lstu_csp: "default-src 'none'; script-src 'self'; style-src 'self'; img-src 'self' data:; font-src 'self'; form-action 'self'; base-uri 'self'"
lstu_x_frame_options: "DENY"
lstu_x_content_type_options: "nosniff"
lstu_x_xss_protection: "1; mode=block"
lstu_log_creator_ip: no

角色标签

每个设置部分都有一个标签。

lstu:install
lstu:site
lstu:service

依赖

无。

示例剧本

# playbook.yml
---
- hosts: servers
  become: yes
  vars_files:
    - vars/main.yml
  roles:
    - { role: noplanman.lstu }
# vars/main.yml
---
lstu_working_dir: "/var/www/lstu.example.com"
lstu_listen: "http://127.0.0.1:8080"
lstu_contact: "[email protected]"
lstu_secrets: ["Weiboe3a","Ahsahm0O","biPhah2u","Ki2teeph","Choihah4","ka7Oifia","aeT7eeb9","oYah4it7"]
lstu_adminpwd: "kohdah6DJieSh1CaTe1uWohKax9ahxeG"

测试

使用Docker对该角色进行不同操作系统的测试。

查看tests 文件夹。

许可证

MIT

关于项目

Install and run Lstu on a Debian-like system.

安装
ansible-galaxy install noplanman.lstu
许可证
mit
下载
80
拥有者
Passionate open sourcerer and sharer 😇 Find me coding at @php-telegram-bot and a plethora of other little projects that I care about.