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
Command | Description |
---|---|
install | Start the installer. |
start | Start all containers. |
restart | Restart all containers (same as start). |
stop | Stop all containers. |
update | Update all containers and the database. |
updatedb | Update/initialize the database. |
updateself | Update this main script. |
updateconf | Update all containers without restarting the running instance. |
renewcert | Renew certificates. |
rebuild | Rebuild generated installation assets from config.yml . |
help | List 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