breuninger.bitwarden

Rola Ansible: Bitwarden

CI

Zainstaluj Bitwarden za pomocą Docker i Docker-Compose, korzystając z bitwarden.sh.

Ta rola jest zautomatyzowanym opakowaniem wokół skryptów konfiguracyjnych Bitwarden. Wykorzystuje dużo ręcznie, aby uruchomić zadania rekonfiguracji i aktualizacji.

Jeśli potrzebujesz jakiegoś zadania, które nie jest objęte rolą, możesz użyć skryptu konfiguracyjnego bezpośrednio na maszynie. Użyj oficjalnej dokumentacji jako odniesienia: https://bitwarden.com/help/article/install-on-premise/

Użycie

Dodaj rolę do swojego playbooka:

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

Znane problemy

Certbot

Obecnie wspieramy tylko statyczne certyfikaty TLS dla Nginx. Integracja z Certbotem nie jest skonfigurowana. Śmiało dodaj tę funkcjonalność jako PR, jeśli to konieczne.

Wersja Bitwarden

Bitwarden ma inną wersję w plikach konfiguracyjnych niż w tagowanej wersji repozytorium. Jest to spowodowane strategią wydania, która zwiększa aktualną wersję tylko w masterze. Już rozmawiamy z Bitwarden i mamy nadzieję na inny sposób wydania.

Tryby SSL

Skrypt konfiguracyjny Bitwarden umożliwia cztery różne sposoby ustawiania SSL (lub brak SSL): certyfikat SSL dostarczony przez użytkownika, certyfikat SSL, który jest tworzony przez Let's Encrypt, własny certyfikat stworzony przez kontener konfiguracyjny oraz brak SSL (niezalecane dla instalacji używanych na co dzień).

Użytkownik dostarczony

Aby zachować zgodność wsteczną, jest to domyślny tryb dla tej roli. Chociaż skrypt konfiguracyjny Bitwarden pozwala na korzystanie z nieufanych certyfikatów dostarczonych przez użytkownika, ta rola wymaga, aby certyfikat był zaufany (podpisany przez CA, a nie samodzielnie podpisany).

- hosts: serwer
  roles:
    - role: breuninger.bitwarden
      vars:
        bitwarden_ssl_mode: provided
        bitwarden_nginx_cert_path: /ścieżka/do/certyfikatu/ssl
        bitwarden_nginx_key_path: /ścieżka/do/klucza/ssl

Jeśli potrzebna jest obsługa certyfikatu zaufanego użytkownika, może być ona dodana jako nowy tryb ssl i odpowiednie wejścia w defaults/main.yml.

Let's Encrypt

Korzystaj z integracji SSL Certbot, która jest dostarczana z skryptem konfiguracyjnym Bitwarden.

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

Generowany samodzielnie podpisany

Skrypt konfiguracyjny Bitwarden pozwala na wygenerowanie samodzielnie podpisanego certyfikatu SSL w celu wykorzystania SSL, ale z nieufnego źródła. Dwa powyższe metody są lepsze do uruchamiania Bitwarden w środowisku produkcyjnym. Wybierz jedną z nich, zamiast stosować tę opcję, chyba że jest to absolutnie konieczne.

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

Brak SSL

Proszę dokładnie rozważyć swój przypadek użycia przed korzystaniem z tej opcji. Jednym z uzasadnionych przypadków użycia jest kończenie SSL na odwrotnym proxy.

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

Zainstaluj i skonfiguruj Bitwarden lokalnie w stylu docker-compose.

Spis treści


Domyślne Zmienne

bitwarden_domain_name

Nazwa domeny używana dla Bitwarden.

Domyślna wartość

bitwarden_domain_name: localhost

bitwarden_global_env

Mapa globalnych zmiennych środowiskowych Bitwarden. Każda zmienna jest mapowana do global.override.env. Zobacz https://bitwarden.com/help/article/environment-variables/

Domyślna wartość

bitwarden_global_env: {}

Przykład użycia

bitwarden_global_env:
  globalSettings__mail__smtp__host: localhost
  globalSettings__mail__smtp__port: 25

bitwarden_lets_encrpyt_email

Adres e-mail do Let's Encrypt, jeśli bitwarden_ssl_mode jest ustawiony na "lets_encrypt".

bitwarden_lets_encrypt_email

Domyślna wartość

bitwarden_lets_encrypt_email:

bitwarden_nginx_cert_path

Ścieżka do pliku certyfikatu używanego dla kontenera Nginx (wymagana, jeśli bitwarden_ssl_mode == "provided"). Użytkownik roli jest odpowiedzialny za dostarczenie ważnego pliku certyfikatu. Plik jest kopiowany z podanej lokalizacji do katalogu domowego użytkownika Bitwarden, aby zapewnić poprawne mapowanie wewnątrz kontenera.

Domyślna wartość

bitwarden_nginx_cert_path:

bitwarden_nginx_key_path

Ścieżka do pliku klucza używanego dla kontenera Nginx (wymagana, jeśli bitwarden_ssl_mode == "provided"). Użytkownik roli jest odpowiedzialny za dostarczenie ważnego pliku klucza. Plik jest kopiowany z podanej lokalizacji do katalogu domowego użytkownika Bitwarden, aby zapewnić poprawne mapowanie wewnątrz kontenera.

Domyślna wartość

bitwarden_nginx_key_path:

bitwarden_region

Region używany dla Bitwarden. Opcje: US, EU

Domyślna wartość

bitwarden_region: US

bitwarden_script_version

Domyślna wartość

bitwarden_script_version: v2023.12.0

bitwarden_setup_config

Mapa wartości konfiguracyjnych Bitwarden do nadpisania. Użyj tego, aby zmienić wartości w wygenerowanym pliku config.yml od Bitwarden.

Domyślna wartość

bitwarden_setup_config: {}

Przykład użycia

bitwarden_setup_config:
  database_docker_volume: true

bitwarden_ssl_mode

Domyślna wartość

bitwarden_ssl_mode: provided

bitwarden_ssl_provider

Określa tryb SSL do użycia podczas konfigurowania instalacji. Opcje: provided, generate, lets_encrypt, disable.

bitwarden_test_install_script

Flaga do wyłączenia pobierania skryptu bitwarden.sh. Używana w przypadkach, gdy tryb ssl Let's Encrypt musi być testowany bez obawy o osiągnięcie limitu rate limitu Let's Encrypt. Lub do testowania zmian w skryptach bitwarden.sh lub run.sh. Mam nadzieję, że ta flaga może być dodana do skryptu bitwarden.sh w przyszłości zamiast być używana tutaj.

Domyślna wartość

bitwarden_test_install_script: false

Zależności

Brak.

Licencja

MIT

Autor

Operations Core Toolig ops-core-tooling@breuninger.de

O projekcie

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

Zainstaluj
ansible-galaxy install breuninger.bitwarden
Licencja
mit
Pobrania
115
Właściciel
Wir bei Breuninger erfinden uns immer wieder neu. Nur so können wir Menschen jeden Tag aufs Neue für Mode und Lifestyle begeistern.