Vaultwarden(bitwarden) » Historique » Version 5
johan.le.baut, 12/10/2022 13:27
1 | 1 | johan.le.baut | # Vaultwarden (bitwarden) |
---|---|---|---|
2 | 2 | johan.le.baut | |
3 | 5 | johan.le.baut | Bitwarden est un gestionnaire de mot de passes. |
4 | 2 | johan.le.baut | |
5 | 5 | johan.le.baut | Vaultwarden est la version Rust de Biwarden: https://github.com/dani-garcia/vaultwarden |
6 | 2 | johan.le.baut | |
7 | Il est disponible sur: https://coffre.aquilenet.fr/ |
||
8 | |||
9 | Pour l'admin: https://coffre.aquilenet.fr/admin |
||
10 | |||
11 | Server: harpocrates |
||
12 | |||
13 | |||
14 | ## Configuration |
||
15 | |||
16 | ### Accès utilisateurs |
||
17 | |||
18 | 5 | johan.le.baut | On autorise l'inscription à tous les utilisateurs ayant un mail en **@aquilenet.fr** |
19 | 2 | johan.le.baut | |
20 | Il est possible d'inviter des gens extérieurs via la page d'admin |
||
21 | |||
22 | ### Accès admin |
||
23 | |||
24 | On accède à la page d'admin via https://coffre.aquilenet.fr/admin |
||
25 | |||
26 | Un token est demandé, il est visible sur Harpocrates dans /var/www/bitwarden/docker-compose.yaml |
||
27 | |||
28 | On ajoute en sécurité supplémentaire une Basic Auth dans Nginx, le fichier de conf est: `/var/www/bitwarden/.htpasswd` |
||
29 | Il contient les admins de Harpocrates avec le même hash password du /etc/shadow |
||
30 | |||
31 | ## Installation |
||
32 | |||
33 | On utilise l'image docker de vaultwarden pour lancer le service, avec un reverse proxy nginx. |
||
34 | |||
35 | Sur le serveur Harpocrates: |
||
36 | |||
37 | |||
38 | ### docker compose |
||
39 | |||
40 | On décrit le container docker à lancer via docker compose |
||
41 | |||
42 | `cat /var/www/bitwarden/docker-compose.yaml` |
||
43 | ```yaml |
||
44 | version: '3' |
||
45 | |||
46 | services: |
||
47 | vaultwarden: |
||
48 | image: vaultwarden/server:latest |
||
49 | container_name: vaultwarden |
||
50 | restart: always |
||
51 | 4 | johan.le.baut | user: 1000:1000 # bitwarden user |
52 | 2 | johan.le.baut | ports: |
53 | 4 | johan.le.baut | - "127.0.0.1:8080:80" # port app |
54 | - "127.0.0.1:3012:3012" # port web socket |
||
55 | 2 | johan.le.baut | environment: |
56 | 4 | johan.le.baut | ADMIN_TOKEN: <Admin token> # token to connect to admin |
57 | 2 | johan.le.baut | WEBSOCKET_ENABLED: "true" # Enable WebSocket notifications. |
58 | SIGNUPS_DOMAINS_WHITELIST: aquilenet.fr # on autorise seulement le @aquilenet.fr |
||
59 | SIGNUPS_VERIFY: true |
||
60 | 4 | johan.le.baut | INVITATIONS_ALLOWED: false # Les utilisateurs ne peuvent pas inviter des non inscrits (seulement admin) |
61 | 2 | johan.le.baut | volumes: |
62 | - /srv/vw-data:/data |
||
63 | |||
64 | ``` |
||
65 | 3 | johan.le.baut | Il est possible de configurer d'autre choses via la page admin |
66 | 2 | johan.le.baut | |
67 | 5 | johan.le.baut | Une fois docker installé, pour démarrer en background: |
68 | 2 | johan.le.baut | `cd /var/www/bitwarden/ && docker compose up -d` |
69 | |||
70 | ### Reverse proxy Nginx |
||
71 | |||
72 | Le site est configuré dans `/etc/nginx/sites-available/coffre.aquilenet.fr.conf` |
||
73 | |||
74 | Les certificats sont géré par certbot (cf `sudo certbot certificates`) |