26 avril 2024

Bitwarden – Un coffre fort pour vos mots de passe

Voici comment créer facilement votre propre serveur Bitwarden sur une distribution Debian 11

Source : https://bitwarden.com/

Installation de docker Engine

Source : https://docs.docker.com/engine/install/debian/

sudo apt-get remove docker docker-engine docker.io containerd runc
sudo apt-get update

 sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo docker run hello-world

Post-installation pour Bitwarden

Bitwarden recommande de configurer votre serveur Linux avec un compte de service « bitwarden » dédié, à partir duquel installer et exécuter Bitwarden. Cela isolera votre instance bitwarden des autres applications s’exécutant sur votre serveur.

sudo adduser bitwarden
sudo usermod -aG docker bitwarden
sudo mkdir /opt/bitwarden
sudo chmod -R 700 /opt/bitwarden
sudo chown -R bitwarden:bitwarden /opt/bitwarden

Configurer Docker pour démarrer automatiquement au démarrage du système

sudo systemctl enable docker.service
sudo systemctl enable containerd.service

Installation compose

Source : https://docs.docker.com/compose/install/

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

docker-compose --version

Installation de bitwarden

A partir de maintenant, il faut utiliser le compte « bitwarden » depuis le dossier /opt/bitwarden

curl -Lso bitwarden.sh https://go.btwrdn.co/bw-sh \
    && chmod 700 bitwarden.sh
./bitwarden.sh install

Récupérer la clé d’installation qui sera nécessaire pour l’installation : https://bitwarden.com/host/

Configurer l’environnement

Configurer votre environnement en ajustant les paramètres dans ./bwdata/env/global.override.env

Au minimum, configurez les variables globalSettings__mail__smtp… pour configurer un serveur de messagerie pour inviter et vérifier les utilisateurs.

./bitwarden.sh restart

Commandes de référence

Exemple :

.\bitwarden start

CommandDescription
installStart the installer.
startStart all containers.
restartRestart all containers (same as start).
stopStop all containers.
updateUpdate all containers and the database.
updatedbUpdate/initialize the database.
updateselfUpdate this main script.
updateconfUpdate all containers without restarting the running instance.
renewcertRenew certificates.
rebuildRebuild generated installation assets from config.yml.
helpList all commands.

Mise à jour de bitwarden

./bitwarden.sh updateself
./bitwarden.sh update

Ajouter bitwarden au démarrage du système

Créer un fichier de service

cd /opt/bitwarden
nano ./bitwarden.service
[Unit]
Description=Bitwarden
Requires=docker.service
After=docker.service

[Service]
Type=oneshot
User=bitwarden
Group=bitwarden
ExecStart=<your-install-directory>/bitwarden.sh start
ExecStop=<your-install-directory>/bitwarden.sh stop
RemainAfterExit=true

[Install]
WantedBy=multi-user.target
sudo cp bitwarden.service /etc/systemd/system/bitwarden.service
sudo chmod 644 /etc/systemd/system/bitwarden.service
systemctl daemon-reload
sudo systemctl enable bitwarden.service