breuninger.bitwarden

Ansible角色:Bitwarden

CI

使用bitwarden.sh通过Docker和Docker-Compose部署Bitwarden。

该角色是对Bitwarden设置脚本的自动包装。它大量使用处理程序来触发重新配置和更新任务。

如果你需要任何未被该角色覆盖的任务,直接在机器上使用设置脚本也是完全可以的。 使用官方文档作为参考:Bitwarden安装指南

使用方法

将角色添加到你的剧本中:

- hosts: server
  roles:
    - { role: breuninger.bitwarden }

已知问题

Certbot

我们目前仅支持Nginx的静态TLS证书。Certbot集成尚未配置。 如果需要,请随时添加该功能作为PR。

Bitwarden版本

Bitwarden的设置文件中的版本与仓库的标签版本可能不同。 这是由于他们的发布策略,在master分支中仅增加实际版本。我们已经与Bitwarden进行沟通,并希望未来能有不同的发布模式。

SSL模式

Bitwarden设置脚本允许四种不同的SSL设置方式(或无SSL):用户提供的SSL证书、Let's Encrypt生成的SSL证书、由设置容器生成的自签名证书,以及无SSL(通常不推荐使用)。

用户提供证书

为了保持向后兼容性,这是该角色的默认模式。虽然Bitwarden设置脚本允许用户提供不受信任的证书,但该角色要求提供的证书必须被信任(由CA签名,而非自签名)。

- hosts: server
  roles:
    - role: breuninger.bitwarden
      vars:
        bitwarden_ssl_mode: provided
        bitwarden_nginx_cert_path: /path/to/ssl/cert
        bitwarden_nginx_key_path: /path/to/ssl/key

如果需要使用不受信任的用户提供证书的用例,可以在defaults/main.yml中添加一个新的ssl_mode和相应的输入。

Let's Encrypt

使用Bitwarden设置脚本中提供的Certbot SSL集成。

- hosts: server
  roles:
    - role: breuninger.bitwarden
      vars:
          bitwarden_ssl_mode: lets_encrypt
          bitwarden_lets_encrypt_email: [email protected]

生成的自签名证书

Bitwarden设置脚本允许生成自签名SSL证书以使用SSL,但这是从不受信任的来源提供的。 上面提到的两种方法更适合在生产环境中运行Bitwarden。除非绝对必要,请选择上述两种方式之一,而不是使用该选项。

- hosts: server
  roles:
    - role: breuninger.bitwarden
      vars:
        bitwarden_ssl_mode: generate

无SSL

在使用此选项之前请仔细考虑你的用例。一个合理的用例是反向代理的SSL终止。

- hosts: server
  roles:
    - role: breuninger.bitwarden
      vars:
        bitwarden_ssl_mode: disable

在本地以docker-compose方式安装并配置Bitwarden。

内容目录


默认变量

bitwarden_domain_name

用于Bitwarden的域名

默认值

bitwarden_domain_name: localhost

bitwarden_global_env

全局Bitwarden环境变量的映射。每个值都映射到global.override.env。 请参阅环境变量说明

默认值

bitwarden_global_env: {}

示例用法

bitwarden_global_env:
  globalSettings__mail__smtp__host: localhost
  globalSettings__mail__smtp__port: 25

bitwarden_lets_encrpyt_email

如果bitwarden_ssl_mode设置为"lets_encrypt",则为Lets Encrypt邮箱账号。

bitwarden_lets_encrypt_email

默认值

bitwarden_lets_encrypt_email:

bitwarden_nginx_cert_path

用于Nginx容器的证书文件路径(如果bitwarden_ssl_mode == "provided",则为必填项)。 角色的用户有责任提供有效的证书文件。 文件将从提供的位置复制到Bitwarden用户的主目录,以确保在容器内的正确映射。

默认值

bitwarden_nginx_cert_path:

bitwarden_nginx_key_path

用于Nginx容器的密钥文件路径(如果bitwarden_ssl_mode == "provided",则为必填项)。角色的用户有责任提供有效的密钥文件。 文件将从提供的位置复制到Bitwarden用户的主目录,以确保在容器内的正确映射。

默认值

bitwarden_nginx_key_path:

bitwarden_region

用于Bitwarden的区域。 选项:US,EU

默认值

bitwarden_region: US

bitwarden_script_version

默认值

bitwarden_script_version: v2023.12.0

bitwarden_setup_config

用于覆盖Bitwarden设置配置值的映射。 使用此项可以更改生成的config.yml文件中的值。

默认值

bitwarden_setup_config: {}

示例用法

bitwarden_setup_config:
  database_docker_volume: true

bitwarden_ssl_mode

默认值

bitwarden_ssl_mode: provided

bitwarden_ssl_provider

在设置安装时提供使用的SSL模式。 选项:provided,generate,lets_encrypt,disable

bitwarden_test_install_script

一个标志,用于禁用下载bitwarden.sh脚本。在需要测试Let's Encrypt ssl_mode而又不想遭遇Let's Encrypt限制率的情况下使用。或者测试对bitwarden.shrun.sh脚本的更改。希望未来可以将此标志添加到bitwarden.sh脚本中,而不是在这里使用。

默认值

bitwarden_test_install_script: false

依赖项

无。

许可证

MIT

作者

运营核心工具团队 ops-core-tooling@breuninger.de

关于项目

Install and configure bitwarden on premise in docker-compose fashion.

安装
ansible-galaxy install breuninger.bitwarden
许可证
mit
下载
115
拥有者
Wir bei Breuninger erfinden uns immer wieder neu. Nur so können wir Menschen jeden Tag aufs Neue für Mode und Lifestyle begeistern.