dmaes.vaultwarden
Vaultwarden
NON MAINTENU
Ce rôle n'est plus maintenu, car je ne l'utilise plus. (J'ai complètement changé d'outils).
Je vous recommande d'utiliser https://github.com/JensTimmerman/ansible-role-vaultwarden/ à la place !
IMPORTANT : Ce rôle était auparavant connu sous le nom de dmaes.bitwardenrs
Depuis que le projet Bitwarden_RS a changé de nom pour Vaultwarden, ce rôle a également été renommé (voir #12 pour plus d'informations).
Pour effectuer ce changement, nous avons remplacé tout bitwardenrs
par vaultwarden
(dans le code ansible, mais aussi dans les répertoires, l'utilisateur, le service systemd, etc.)
Lorsque vous effectuez la transition :
- Arrêtez l'ancien service
bitwarden_rs
- Faites une sauvegarde des fichiers et de la base de données pour plus de précautions
- Mettez à jour votre code ansible pour fonctionner avec le nouveau rôle
- Soit pointez
vaultwarden_directory
vers l'ancien répertoire, soit déplacez les fichiers vers le nouveau par défaut (/opt/vaultwarden
). Faites également attention àvaultwarden_datadir
si vous utilisez un répertoire personnalisé. - Le nouvel utilisateur vaultwarden devrait avoir les mêmes droits sur la base de données que votre ancien utilisateur bitwardenrs
- pour postgres :
- su - postgres
- psql
postgres-# GRANT bitwardenrs TO vaultwarden;
- pour postgres :
- Exécutez ansible, cela créera tout sous le nouveau nom (utilisateur et service, pas répertoire)
- Nettoyez l'ancien utilisateur, service (et éventuellement le répertoire de données)
Construit, installe et configure Vaultwarden (sans Docker).
Uniquement testé sur Debian 10 et CentOS 8
Exigences
- Exigences pour le module unarchive
- Exigences pour le module package
- wget ou curl
- jinja => v2.11
- Systemd (optionnel)
Variables du Rôle
Variable | Description | Valeur par défaut |
---|---|---|
vaultwarden_directory |
Où installer Vaultwarden | /opt/vaultwarden |
vaultwarden_version |
Quelle version installer | 1.17.0 |
vaultwarden_webvault |
Installer le webvault patché | true |
vaultwarden_webvault_version |
Version du webvault à installer | 2.16.1 |
vaultwarden_build_backend |
Le type de base de données à compiler | spécifique à la version de vaultwarden(*) |
vaultwarden_force_recompile |
Forcer la recompilation du binaire, (par exemple, si vous avez changé de backend sur le même serveur) | false |
vaultwarden_config |
Variables d'environnement clé-valeur pour le fichier .env de Vaultwarden |
{ DOMAIN: "https://{{ ansible_fqdn }}/" } |
vaultwarden_datadir |
Répertoire de données de Vaultwarden (ne se configure pas, sert uniquement à la création et pour par exemple les clés) | {{ vaultwarden_directory }}/data |
vaultwarden_encryption_key |
Clé RSA à utiliser pour le chiffrement (contenu, pas fichier), chaîne vide pour ne pas copier, Vaultwarden devrait en générer une si elle n'existe pas | "" |
vaultwarden_force_encryption_key |
Forcer le changement de la clé de chiffrement si elle existe déjà (DANGEREUX !) | false |
vaultwarden_systemd |
Gérer le service systemd | {{ ansible_service_mgr == 'systemd' }} |
(*) À partir de vaultwarden_version: 1.17.0 : par défaut sqlite,mysql,postgresql , avant : par défaut sqlite |
Exemple de Playbook
- hosts: servers
vars:
vaultwarden_configure: yes
vaultwarden_port: "443"
vaultwarden_build_backend: "sqlite,postgresql"
admin_token: !vault |
$ANSIBLE_VAULT;1.1;AES256
...
vaultwarden_config:
DOMAIN: "https://example.com/"
DOMAIN_PATH: "/vaultwarden" # ce qui donne un domaine de https://example.com/vaultwarden/, doit commencer par un '/'
ADMIN_TOKEN: "{{ admin_token }}"
DATABASE_URL: "postgresql:///vaultwarden?host=/run/postgresql/"
SIGNUPS_ALLOWED: 'false'
SIGNUPS_VERIFY: 'true'
SIGNUPS_DOMAINS_WHITELIST: 'example.com'
INVITATIONS_ALLOWED: 'true'
SMTP_HOST: 'mail.example.com'
SMTP_FROM: '[email protected]'
SMTP_FROM_NAME: 'vaultwarden'
roles:
- dmaes.vaultwarden
Licence
MIT
À propos du projet
Builds, installs and configures Vaultwarden (https://github.com/dani-garcia/vaultwarden) (without Docker)
Installer
ansible-galaxy install dmaes.vaultwarden
Licence
mit
Téléchargements
101
Propriétaire