Vaultwarden(bitwarden) » Historique » Révision 17
« Précédent |
Révision 17/26
(diff)
| Suivant »
johan.le.baut, 13/10/2022 13:50
Vaultwarden (bitwarden)¶
- Contenu
- Vaultwarden (bitwarden)
Bitwarden est un gestionnaire de mot de passes.
Vaultwarden est la version Rust de Biwarden: https://github.com/dani-garcia/vaultwarden
Il est disponible sur: https://coffre.aquilenet.fr/
Pour l'admin: https://coffre.aquilenet.fr/admin
Server: harpocrates
Configuration¶
Accès utilisateurs¶
On autorise l'inscription à tous les utilisateurs ayant un mail en @aquilenet.fr
Pour valider son inscription un utilisateur doit comfirmer via l'email reçu de vaultwarden.
Il est possible d'inviter des gens extérieurs via la page d'admin uniquement.
Accès admin¶
On accède à la page d'admin via https://coffre.aquilenet.fr/admin
Un token est demandé, il est visible sur Harpocrates dans /var/www/bitwarden/docker-compose.yaml
On ajoute en sécurité supplémentaire une Basic Auth dans Nginx, le fichier de conf est: /var/www/bitwarden/.htpasswd
Il contient les admins de Harpocrates avec le même hash password du /etc/shadow
Installation¶
Sur le serveur Harpocrates, on installe le service vaultwarden, avec un reverse proxy nginx.
installation du service¶
On peut le lancer via docker ou builder manuellement le service.
En ce moment la méthode manuelle est utilisée.
via docker et docker compose¶
Créer le dossier pour la data du service:
mkdir -p /srv/vw-data chown -R bitwarden:bitwarden /srv/vw-data
On décrit le container docker à lancer via docker compose
cat /var/www/bitwarden/docker-compose.yaml
version: '3'
services:
vaultwarden:
image: vaultwarden/server:1.25.2
container_name: vaultwarden
restart: always
user: 1000:1000 # bitwarden user
ports:
- "127.0.0.1:8080:80" # port app
- "127.0.0.1:3012:3012" # port web socket
environment:
ADMIN_TOKEN: <Admin token> # token to connect to admin
WEBSOCKET_ENABLED: "true" # Enable WebSocket notifications.
SIGNUPS_DOMAINS_WHITELIST: aquilenet.fr # on autorise seulement le @aquilenet.fr
SIGNUPS_VERIFY: true
INVITATIONS_ALLOWED: false # Les utilisateurs ne peuvent pas inviter des non inscrits (seulement admin)
volumes:
- /srv/vw-data:/data
Il est possible de configurer d'autre choses via la page admin
- Une fois docker installé, pour démarrer en background:
cd /var/www/bitwarden/ && docker compose up -d
(4. Mise à jour)
Ouvrir /var/www/bitwarden/docker-compose.yaml
changer image: vaultwarden/server:<nouvelle version>
Restart:
cd /var/www/bitwarden/ docker compose down # Service sera étteint docker compose up -d --force-recreate
Sans docker (actuel):¶
Il faut compiler le service et le lancer dans un systemd:
Suivre: https://gist.github.com/heinoldenhuis/f8164f73e5bff048e76fb4fff2e824e1
Pour le build du 'web-vault', on peut utiliser dans bw_web_builds la cmd make docker-extract
, il créera le dossier docker_builds/web-vault
(pas besoin d'installer NodeJs de cette manière).
Install actuelle:
- systemd file:
/etc/systemd/system/vaultwarden.service
- vaultwarden:
- sources dir: /var/www/bitwarden/vaultwarden
- binaire: /var/www/bitwarden/vaultwarden/target/release/vaultwarden
- data dir: /var/www/bitwarden/vaultwarden/target/release/data
- env file (config): /var/www/bitwarden/vaultwarden/target/release/.env
- config:
WEB_VAULT_FOLDER=/var/www/bitwarden/bw_web_builds/docker_builds/web-vault WEBSOCKET_ENABLED=true SIGNUPS_VERIFY=true SIGNUPS_DOMAINS_WHITELIST=aquilenet.fr ADMIN_TOKEN=<admin token> INVITATIONS_ALLOWED=false ROCKET_ADDRESS=127.0.0.1
- web-vault
- sources dir: /var/www/bitwarden/bw_web_builds/
- build dir: /var/www/bitwarden/bw_web_builds/docker_builds/web-vault
Reverse proxy Nginx¶
Le site est configuré dans /etc/nginx/sites-available/coffre.aquilenet.fr.conf
Les certificats sont géré par certbot (cf sudo certbot certificates
)
Config SMTP¶
Il faut configurer une connexion SMTP pour que vaultwarden puisse envoyer des mails.
Sur une VM vierge:
- enlever exim4
- installer postfix
- enlever params d'authent pour envoyer sur localhost:25
Mis à jour par johan.le.baut il y a environ 2 ans · 17 révisions