breuninger.bitwarden
Ansible Rolle: Bitwarden
Bitwarden mit Docker und Docker-Compose mithilfe von bitwarden.sh
bereitstellen.
Diese Rolle ist ein automatisierter Wrapper um die Bitwarden-Installationsskripte. Sie verwendet umfangreich Handler, um Neu-Konfigurations- und Aktualisierungsaufgaben auszulösen.
Wenn du eine Aufgabe benötigst, die von der Rolle nicht abgedeckt wird, ist es vollkommen in Ordnung, das Installationsskript direkt auf dem Computer zu verwenden. Verwende die offiziellen Dokumente als Referenz: https://bitwarden.com/help/article/install-on-premise/
Verwendung
Füge die Rolle deinem Playbook hinzu:
- hosts: server
roles:
- { role: breuninger.bitwarden }
Bekannte Probleme
Certbot
Wir unterstützen derzeit nur statische TLS-Zertifikate für Nginx. Die Certbot-Integration ist nicht konfiguriert. Fühle dich frei, diese Funktion als PR hinzuzufügen, falls erforderlich.
Bitwarden-Version
Die Bitwarden-Setup-Dateien haben eine andere Version als die im getaggten Repo angegebene. Dies liegt an ihrer Veröffentlichungsstrategie, die die tatsächliche Version nur im Master erhöht. Wir stehen bereits in Kontakt mit Bitwarden und hoffen auf eine andere Veröffentlichungsmethode.
SSL-Modi
Das Bitwarden-Installationsskript erlaubt vier verschiedene Möglichkeiten zur Einrichtung von SSL (oder dessen Fehlen): ein vom Benutzer bereitgestelltes SSL-Zertifikat, ein SSL-Zertifikat, das von Let's Encrypt erstellt wurde, ein selbstsigniertes Zertifikat, das vom Setup-Container generiert wurde, und kein SSL (nicht empfohlen für normalerweise verwendete Installationen).
Benutzerbereitgestellt
Um die Abwärtskompatibilität zu wahren, ist dies der Standardmodus für diese Rolle. Während das Bitwarden-Installationsskript untrusted Zertifikate vom Benutzer erlaubt, erfordert diese Rolle, dass sie vertrauenswürdig (von einer CA signiert, nicht selbstsigniert) sind.
- 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
Wenn ein untrusted-user-provided-cert benötigt wird, kann dies mit einem neuen ssl_mode und entsprechenden Eingaben in
defaults/main.yml
hinzugefügt werden.
Let's Encrypt
Verwende die Certbot-SSL-Integration, die mit dem Bitwarden-Installationsskript kommt.
- hosts: server
roles:
- role: breuninger.bitwarden
vars:
bitwarden_ssl_mode: lets_encrypt
bitwarden_lets_encrypt_email: [email protected]
Generiertes selbstsigniertes Zertifikat
Das Bitwarden-Installationsskript ermöglicht es, ein selbstsigniertes SSL-Zertifikat zu erzeugen, um SSL zu verwenden, aber aus einer nicht vertrauenswürdigen Quelle. Die beiden zuvor genannten Methoden sind besser für die Verwendung von Bitwarden in einer Produktionsumgebung. Bitte wähle eine von ihnen anstatt diese Option zu verwenden, es sei denn, es ist absolut notwendig.
- hosts: server
roles:
- role: breuninger.bitwarden
vars:
bitwarden_ssl_mode: generate
Kein SSL
Bitte überlege gut, bevor du diese Option verwendest. Ein legitimer Anwendungsfall ist die SSL-Terminierung an einem Reverse Proxy.
- hosts: server
roles:
- role: breuninger.bitwarden
vars:
bitwarden_ssl_mode: disable
Installiere und konfiguriere Bitwarden lokal im Docker-Compose-Stil.
Inhaltsverzeichnis
Standardvariablen
bitwarden_domain_name
Domainname, der für Bitwarden verwendet wird.
Standardwert
bitwarden_domain_name: localhost
bitwarden_global_env
Mappen globaler Bitwarden-Umgebungsvariablen. Jede gesamte Variable ist auf die global.override.env gemappt. Siehe https://bitwarden.com/help/article/environment-variables/
Standardwert
bitwarden_global_env: {}
Beispielverwendung
bitwarden_global_env:
globalSettings__mail__smtp__host: localhost
globalSettings__mail__smtp__port: 25
bitwarden_lets_encrpyt_email
E-Mail-Konto von Lets Encrypt, wenn bitwarden_ssl_mode auf "lets_encrypt" gesetzt ist.
bitwarden_lets_encrypt_email
Standardwert
bitwarden_lets_encrypt_email:
bitwarden_nginx_cert_path
Pfad der Zertifikatdatei, die für den Nginx-Container verwendet wird (erforderlich, wenn bitwarden_ssl_mode == "provided"
).
Der Benutzer der Rolle ist verantwortlich für die Bereitstellung einer gültigen Zertifikatdatei.
Die Datei wird von dem angegebenen Standort in das Benutzerverzeichnis von Bitwarden kopiert, um die korrekte Zuordnung innerhalb des Containers zu gewährleisten.
Standardwert
bitwarden_nginx_cert_path:
bitwarden_nginx_key_path
Pfad der Schlüsseldatei, die für den Nginx-Container verwendet wird (erforderlich, wenn bitwarden_ssl_mode == "provided"
). Der Benutzer der Rolle ist verantwortlich für die Bereitstellung einer gültigen Schlüsseldatei.
Die Datei wird von dem angegebenen Standort in das Benutzerverzeichnis von Bitwarden kopiert, um die korrekte Zuordnung innerhalb des Containers zu gewährleisten.
Standardwert
bitwarden_nginx_key_path:
bitwarden_region
Region, die für Bitwarden verwendet wird. Optionen: US, EU
Standardwert
bitwarden_region: US
bitwarden_script_version
Standardwert
bitwarden_script_version: v2023.12.0
bitwarden_setup_config
Map von Bitwarden-Setup-Konfigurationswerten zum Überschreiben. Verwende dies, um Werte in der generierten config.yml-Datei von Bitwarden zu ändern.
Standardwert
bitwarden_setup_config: {}
Beispielverwendung
bitwarden_setup_config:
database_docker_volume: true
bitwarden_ssl_mode
Standardwert
bitwarden_ssl_mode: provided
bitwarden_ssl_provider
Gibt den SSL-Modus an, der bei der Einrichtung der Installation verwendet wird. Optionen: provided, generate, lets_encrypt, disable.
bitwarden_test_install_script
Ein Flag, um den Download des bitwarden.sh
-Skripts zu deaktivieren. Wird in Fällen verwendet, in denen der Let's Encrypt ssl_mode getestet werden muss, ohne die Let's Encrypt Rate-Limit zu erreichen. Oder um Änderungen an den bitwarden.sh
- oder run.sh
-Skripten zu testen. Hoffentlich kann dieses Flag in Zukunft in das bitwarden.sh
-Skript aufgenommen werden, anstatt hier verwendet zu werden.
Standardwert
bitwarden_test_install_script: false
Abhängigkeiten
Keine.
Lizenz
MIT
Autor
Operations Core Tooling ops-core-tooling@breuninger.de
Install and configure bitwarden on premise in docker-compose fashion.
ansible-galaxy install breuninger.bitwarden