Serveurs

Comment installer Bitwarden pour autohéberger son gestionnaire de mot de passe

Par Tutos-Info , le 5 janvier 2023 , mis à jour le 12 janvier 2023 , 4 commentaires - 8 minutes de lecture
bitwarden gestionnaire de mot de passe
5/5 - (1 vote)

Vous recherchez une autre solution pour gérer vos mots de passe ? Découvrez Bitwarden et installer vous-même votre propre gestionnaire de mots passe. Bitwarden peut être installé sur un NAS, un VPS et même sur un RASPBERRY PI. Dans ce tutoriel je vais utiliser un serveur OVH avec le panel Plesk. Nous utiliserons un container Docker pour déployer notre serveur en quelques minutes. L'image utiliser sera celle de VaultWarden (anciennement bitwarden/rs) car elle est plus légère et fonctionne sur de nombreux systèmes.

Qu'est-ce que BITWARDEN ?

Bitwarden est un gestionnaire de mot de passe gratuit qui vous permet de stocker vos mots de passe, vos identifiants, mais aussi vos cartes bancaires et notes de façon sécurisées. L'outil est gratuit et il est Open Source. Son code est donc public et peut être audité par tout le monde. À ce jour aucun incident de sécurité n’est connu.

Il s'agit d'un concurrent direct à Lastpass qui ne bénéficie plus d'une belle image sur le marché après ses différents piratages.

Un client Desktop est disponible ainsi qu'une application mobile pour iPhone et Android, les fonctionnalités sont identiques à ce que propose LastPass.

Bitwarden est également disponible gratuitement simplement en créant un compte sur la plateforme. Mais vous pouvez tout à fait créer votre propre serveur pour que les données soient hébergées chez vous ou sur un serveur dont vous avez la maîtrise.

homepage bitwarden

Vous pouvez donc :

  • Créer un compte sur Bitwarden pour gérer vos mots de passe
  • Héberger vous-même un serveur pour gérer vos mots de passe

Dans le premier cas vous ne payez rien, mais les données sont hébergés sur  des datacenter de la plateforme. Évidemment vos données sont chiffrées et Bitwarden n'y a pas accès.

A découvrir  Le Gestionnaire de réponses automatiques Outlook est indisponible

La solution autohébergée permet de diminuer les risques de piratages, mais vous devez absolument gérer une sauvegarde de vos données. L'avantage ici c'est que les données sont hébergées par vous.

Découvrons maintenant comment installer et configurer un serveur BITWARDEN.

Les prérequis pour installer un serveur BITWARDEN

Avant de vous lancer dans l'installation, voici les prérequis :

  • Avoir un nom de domaine / sous-domaine , par exemple bitwarden.monnomdedomaine.com
  • Avoir un certificat HTTPS pour ce nom de domaine pour sécuriser les flux (Let's Encrypt fera le job)
  • Avoir installé Docker et Docker Compose sur le serveur / NAS
  • Autoriser les flux 80/443 vers votre serveur / NAS hébergeant Bitwarden

Dans mon cas j'utilise un serveur VPS chez OVH (Ubuntu 20.04) avec le panel d'admin PLESK (vous pouvez même installer Plesk gratuitement). C'est très pratique pour gérer les instances docker, les noms de domaine et les certificats. L'outil propose tout le package nécessaire.

Pour l'installation sur NAS, vous devrez installer des modules pour que votre NAS puisse utiliser Docker et Let's Encrypt.

Globalement si vous avez quelques connaissances en Docker et en hébergement Web ça devrait être très simple.

Installation de Bitwarden (Vaultwarden) avec PLESK

La première étape est de télécharger l'image docker de Vaultwarden , il s'agit d'un dérivé de Bitwarden qui a été codé en RUST , l'application est saine et permet de fonctionner sur de nombreux systèmes. Elle utilise aussi une petite base en Sqlite et beaucoup plus légère que l'image Bitwarden.

Téléchargement de l'image Docker

Sur mon panel Plesk j'ai installé l'extension Docker , puis je vais télécharger l'image de Bitwarden (VaultWarden/server) , vous trouverez toutes les informations de l'image docker ici : https://hub.docker.com/r/vaultwarden/server

Vous pouvez aussi saisir la commande suivant depuis une connexion SSH avec Putty :

docker pull vaultwarden/server

docker vaultwarden plesk

Télécharger la dernière image (latest) en cliquant sur Executer , puis modifier quelques paramètres

paramétrage image docker vaultwarden

Pensez à configurer un mappage du volume pour que les données soient persistantes, le dossier à mapper est le /data , le dossier cible est libre.

Il faut décocher le mappage de port automatique, nous le configurons plus tard. Valider en cliquant sur le bouton OK , votre container devrait démarrer. Arrêter le container puis modifier le mappage des ports en cliquant sur Paramètres.

A découvrir  Serva - Booter des Iso et DVD d'installation Windows sur le LAN

parametrage image docker

Paramétrage du mappage des ports

Puis nous devons configurer le mappage des ports.

mappage port docker

Il faut définir un port libre par exemple 40312 et 40080 , l'accès à l'interface de Bitwarden se fait sur le port 80 externe.

Nous allons ensuite ajouter une variable d'environnement pour déclarer notre domaine.

Modifier les variables d'environnement

docker variable environnement
saisir votre domaine par exemple : https://bitwarden.monsite.com

Valider la configuration puis démarrer le container.

Configurer le proxy Docker

Pour que les requêtes HTTPS vers le nom de domaine réservé pointent vers votre container docker, il faut configurer le proxy docker dans le paramétrage de votre domaine. Sur Plesk c'est super simple, il suffit de cliquer sur le bouton Docker Proxy.

proxy docker

Puis on configure le proxy pour le port 80 en cliquant sur ajouter une règle.

port proxy docker

Valider, logiquement vous devez accéder à votre serveur par l'URL suivant https://bitwarden.votresite.com

Bonus : Protection Cloudflare avec le reverse proxy

Si votre domaine est protégé par cloudflare, vous pouvez créer un enregistrement DNS vers votre serveur BITWARDEN. Activer la fonction proxy (qui est gratuite) pour profiter d'une protection simple avec le reverse proxy de cloudflare.

proxy cloudflare

Comment utiliser Bitwarden ?

Création d'un compte

Pour utiliser Bitwarden, vous devez dans un premier temps créer un compte sur la page de votre serveur (exemple : https://bitwarden.votresite.com)

creation compte vaultwarden

Cliquez sur créer un compte puis saisir vos infos.

informations comptes vaultwarden.

Le mot de passe maître doit être complexe (symboles, chiffres, majuscule et minuscule) , attention il ne peut pas être récupéré !.

Paramétrage du client

Il existe différents types de clients :

J'utilise l'extension + l'application mobile.

Une fois téléchargé, il faut modifier un paramétrage en cliquant sur la roue crantée.

parametrage client bitwarden.

Saisir ensuite l'URL de votre serveur.

url de paramétrage bitwarden

Valider en cliquant sur le bouton Enregistrer. Votre client est prêt, vous pouvez donc créer vos mots de passe.

Importer des mots de passe

Si vous utilisiez un autre système il est possible d'importer les données , il d'abord les exporter (si vous utilisez Lastpass, voici un guide pour exporter les mots de passe Lastpass)

A découvrir  Log4J : Un ransomware est déployé dans les attaques Log4Shell

Depuis le dashboard de votre serveur, cliquer sur le menu Outils puis importer les données.

import bitwarden mot de passe
L'import prend en charge de nombreux concurrents.

Quelques règles de sécurité

Bloquer les inscriptions

Une fois votre serveur en place, il est fortement recommandé de bloquer les inscriptions en ajoutant la variable d'environnement à votre container.

Il faut ajouter la variable SIGNUPS_ALLOWED False

bloquer inscription bitwarden

Activer une double authentification

Il est possible de mettre en place une double authentification avec un Google Authenticator par exemple. Une fois connecté vous pouvez l'activer en cliquant dans les Paramètres du compte puis Identification Deux Étapes

2fa bitwarden

Sauvegarder vos données

L'inconvénient de la solution autohébergé est que vous devez absolument sauvegarder vos données. Vous devez sauvegarder le dossier mappé lors de la configuration du container. Il contient tous les bases de données et fichiers nécessaires au bon fonctionnement.

Vous pouvez aussi télécharger l'image docker de votre serveur.

Lire le Wiki

Si vous avez besoin d'informations, je vous invite à lire le Wiki de Vaultwarden , la documentation est complète et vous permettra d'ajouter de nombreuses fonctionnalités.

Pour aller plus loin

À la fin de ce guide, vous devez normalement avoir réussi à installer votre serveur Bitwarden. Nous avons utilisé une version plus légère (Vaultwarden) et qui fonctionne très bien. Cependant pour les puristes vous pouvez installer la solution officielle, mais qui est beaucoup plus lourde en ressources.

La documentation est complète et elle est disponible ici : https://bitwarden.com/help/install-on-premise-linux/ .

Pour un usage personnel ou pour une petite entreprise, Vaultwarden est amplement suffisant. Le tutoriel s'appuie sur Plesk, mais c'est tout à fait possible de monter le serveur sur une petite machine chez soi à condition de bien connaître Docker.

Bitwarden est aussi disponible gratuitement sans avoir à installer et maintenir le serveur. Le compte premium qui vous offre toutes les fonctionnalités ne coûte que 10$ par an. Vous pouvez donc largement remplacer une solution comme Lastpass par Bitwarden.

Si vous avez des questions, n'hésitez pas à les poster en commentaires.

 

 

 

 

 

Tutos-Info

Fondateur de Tutos-Informatique, je suis Administrateur Systèmes et Réseaux. Je propose des tutoriels suite à mes interventions clients.

Commentaires

Le 11 janvier 2023 à 10 h 48 min, Cedric a dit :


Bonjour,

Le sujet avait l'air intéressant mais c'est plus de la configuration PLESK que l'installation docker/vaultwarden sans ce système.

Avez-vous la possibilité de détailler pour ceux qui n'utilisent pas Plesk ?

Je vous remercie


Votre réponse sera révisée par les administrateurs si besoin.

Le 12 janvier 2023 à 17 h 41 min, Tutos-Info a dit :


Vous souhaitez héberger la solution chez vous ? ou sur un serveur hébergé chez un fournisseur comme OVH ?


Votre réponse sera révisée par les administrateurs si besoin.

Le 12 janvier 2023 à 13 h 07 min, Tutos-Info a dit :


J'ai commencé à travailler sur le sujet , je rajouterais les étapes dans le tuto, dans l'esprit voici ce qui peut se faire :
On utilise NGINX MANAGER pour créer un reverse proxy (conteneur docker)
On utilise VAULTWARDEN pour héberger BITWARDEN (conteneur docker)
Voici le contenu d'un fichier docker compose :
version: '3'
services:
reverseproxy:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '81:81'
- '443:443'
volumes:
- ./data-reverseproxy:/data
- ./letsencrypt:/etc/letsencrypt

vaultwarden:
image: 'vaultwarden/server:latest'
restart: unless-stopped
ports:
- '8888:80' # Public HTTPS Port
volumes:
- ./data-vw:/data
Je détaillerais dans le tutoriel l'installation mais de mon coté ça fonctionne sans PLESK.


Votre réponse sera révisée par les administrateurs si besoin.

Le 11 janvier 2023 à 10 h 51 min, Tutos-Info a dit :


bonjour, oui c'est prévu , si vous maîtriser docker vous pouvez l'installer sur votre machine et télécharger l'image de Vaultwarden.
L'image seule n'est pas suffisante puisque vous devez avoir

  • Un certificat signé (Let's encrypt)
    Un serveur web



  • Cordialement,

    Votre réponse sera révisée par les administrateurs si besoin.

    Laisser un commentaire

    Votre commentaire sera révisé par les administrateurs si besoin.