breuninger.bitwarden

Ansible Role: Bitwarden

CI

DockerとDocker-Composeを使用してbitwarden.shでBitwardenをデプロイします。

このロールはBitwardenのセットアップスクリプトの自動化ラッパーです。 ハンドラを多く使用して、再設定や更新のタスクをトリガーします。

このロールでカバーされていないタスクが必要な場合は、直接マシンでセットアップスクリプトを使用しても問題ありません。 公式ドキュメントを参考にしてください: https://bitwarden.com/help/article/install-on-premise/

使用方法

プレイブックにロールを追加します:

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

知られている問題

Certbot

現在、Nginx用の静的TLS証明書のみをサポートしています。Certbotの統合は設定されていません。 必要であれば、この機能をPRとして追加してください。

Bitwardenのバージョン

セットアップファイルのBitwardenのバージョンは、リポジトリのタグ付けされたバージョンとは異なる場合があります。 これは、リリース戦略によるもので、実際のバージョンは常にメインブランチでのみ増加します。私たちはすでにBitwardenとの協議を行っており、異なるリリース方法を期待しています。

SSLモード

Bitwardenのセットアップスクリプトでは、SSLの設定方法が4つあります:ユーザー提供の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

信頼されていないユーザー提供の証明書が必要な場合は、新しいssl_modeとそれに対応する入力をdefaults/main.ymlに追加できます。

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証明書を生成することができます。 上記の2つの方法は、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にマッピングされます。 詳細は https://bitwarden.com/help/article/environment-variables/ を参照してください。

デフォルト値

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」に設定されている場合のLet's 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のセットアップ構成値のマップ。 これを使用して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

作成者

Operations Core Toolig 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.