Vaultwarden est une implémentation serveur légère développée en Rust de l'API client Bitwarden.
Introduction : Qu'est-ce que Vaultwarden?
Cette alternative open source a été spécialement conçue pour les scénarios d'auto-hébergement où les serveurs officiels de Bitwarden seraient trop gourmands en ressources. Anciennement connu sous le nom de «bitwarden_rs», Vaultwarden offre une compatibilité presque complète avec tous les clients Bitwarden officiels.
La particularité de Vaultwarden est qu'il est entièrement gratuit, nécessite beaucoup moins de ressources système que le serveur Bitwarden officiel, tout en prenant en charge toutes les fonctionnalités importantes. C'est la solution parfaite pour les particuliers, les familles et les petites entreprises férus de technologie qui souhaitent garder leurs mots de passe entièrement sous leur propre contrôle.
Méthodes d'installation alternatives
En plus de l'installation de Docker décrite en détail dans cet article, il existe plusieurs autres options d'installation pour Vaultwarden:
- Binaires pré-construits: Fichiers binaires prédéfinis pour différents systèmes d'exploitation
- Systemd Service: Service système direct sans conteneur
- Packages de troisième partie: Paquets communautaires pour différentes distributions (AUR, Homebrew, etc.)
- Source Code Build: Compilation manuelle à partir du code source Rust
- Alternatives aux conteneurs: Podman comme alternative à Docker
- Déploiement dans le cloud: Kubernetes, Docker Swarm ou des solutions spécifiques au cloud
Dans cet article, nous nous concentrons sur l'installation basée sur Docker, car elle est la plus facile à mettre en œuvre et disponible sur toutes les plates-formes. Pour d'autres méthodes d'installation, vous trouverez Instructions détaillées sur le wiki officiel Vaultwarden.
Avantages de Vaultwarden
Avantages techniques
- Faible consommation de ressources: Beaucoup moins de RAM et de CPU que le serveur officiel de Bitwarden
- Compatibilité totale: Fonctionne avec tous les clients Bitwarden officiels (extensions de navigateur, applications mobiles, applications de bureau)
- Développement actif: Mises à jour régulières et soutien communautaire solide
- Basé sur Rust: Hautes performances et sécurité de stockage
- Docker-ready: Conteneurisation et déploiement faciles
Étendue des fonctions
- Personal Vault (Coffre-fort personnel)
- Send (Échange de fichiers sécurisé)
- Pièces jointes
- Icônes du site
- Clé API personnelle
- organisations
- Authentification à deux facteurs
- Accès d'urgence (Emergency Access)
- Backend d'administration
Protection des données et sécurité
- Contrôle total des données: Toutes les données restent sur vos propres serveurs
- Pas de dépendance vis-à-vis de tiers: Aucun risque de pannes de service ou de fuites de données chez des fournisseurs externes
- open source: Code transparent qui peut être vérifié par la communauté
- Conformité conviviale: Idéal pour les entreprises ayant des exigences strictes en matière de protection des données
Inconvénients de Vaultwarden
Défis techniques
- L'auto-hébergement est nécessaire: Nécessite un certain savoir-faire technique pour l'installation et la maintenance
- Responsabilité propre: Les sauvegardes, les mises à jour et la sécurité doivent être gérées par vous-même
- Pas de support officiel: Support uniquement par la communauté, pas par Bitwarden Inc.
- Exigence HTTPS: L'interface Web fonctionne uniquement via HTTPS ou localhost
Maintenance requise
- Mises à jour régulières: Doivent être effectuées manuellement
- Gestion des sauvegardes: Nécessite sa propre stratégie de sauvegarde
- monitoring: La surveillance du serveur est sous votre propre responsabilité
Instructions d'installation détaillées
1. Installation sur Linux (Ubuntu/Debian)
Conditions préalables
Ces étapes installent tous les composants Docker nécessaires pour Vaultwarden sur un système Ubuntu/Debian, sur les systèmes existants avec Docker déjà en cours d'exécution, cette étape peut être ignorée:
# Mettre à jour le système - S'assure que tous les paquets sont à jour sudo apt update && sudo apt upgrade -y # Installer Docker - La plate-forme de conteneurs qui exécute Vaultwarden sudo apt install -y docker.io docker-compose # Démarrer et activer le service Docker - Assurez-vous que Docker démarre automatiquement au démarrage du système sudo systemctl start docker sudo systemctl enable docker # Ajouter des utilisateurs au groupe Docker - Permet d'exécuter des commandes Docker sans sudo # IMPORTANT: Après cette commande, vous devez vous déconnecter et vous reconnecter! sudo usermod -aG docker $USER
Installation étape par étape
Étape 1: Créer une structure de répertoire Ici, nous créons la structure des dossiers pour Vaultwarden et ses données:
# Créer un répertoire de travail - Enregistre tous les fichiers de configuration mkdir -p /opt/vaultwarden # Créer un répertoire de données - C'est là que Vaultwarden stocke la base de données et les fichiers # IMPORTANT: Ce répertoire doit être sauvegardé régulièrement ! mkdir -p ./vw-data
Étape 2: Créer un fichier Docker Compose Le fichier Docker Compose définit comment Vaultwarden s'exécute:
nano docker-compose.yml
Insérez le contenu suivant et personnalisez-le avec #MODIFICATIONS EN COURS valeurs marquées à votre environnement:
version: '3.8' services: vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden restart: unless-stopped environment: # MODIFICATIONS IMPORTANTES: Remplacez DOMAIN par votre propre domaine ou adresse IP: "https://votre-domaine.fr" # MODIFICATIONS IMPORTANTES: Créer un jeton d'administration sécurisé (min. 32 caractères) # Générez-le par exemple avec: openssl rand -hex 32ls ADMIN_TOKEN: "VotreAdminToken sécurisé123" # Activer WebSocket pour la synchronisation en direct WEBSOCKET_ENABLED: « true » # SÉCURITÉ : Après la configuration initiale, misez sur "false"! SIGNUPS_ALLOWED: "true" volumes: # Stockage de données persistant - NE JAMAIS effacer! - ./vw-data/:/data/ ports: # Cartographie des ports: Port hôte:Port conteneur # 127.0.0.1 se lie uniquement à localhost (plus sûr) - "127.0.0.1:8080:80" - "127.0.0.1:3012:3012"
Étape 3: Démarrer Vaultwarden Cette commande télécharge l'image Vaultwarden et lance le conteneur en arrière-plan:
# Démarrer le conteneur en mode Détached (fonctionne en arrière-plan) docker-compose up -d # Vérifier l'état - devrait afficher "Up" docker-compose ps # Afficher les logs (en cas de problème) docker-compose logs vaultwarden
Étape 4: Configuration du proxy inverse Nginx (facultatif) Un proxy inverse est nécessaire pour HTTPS et les fonctionnalités avancées. Ici, nous installons Nginx avec des certificats SSL automatiques:
# Installer Nginx et Certbot pour les certificats SSL sudo apt install nginx certbot python3-certbot-nginx # Créer une configuration Nginx pour Vaultwarden sudo nano /etc/nginx/sites-available/vaultwarden
Configuration de Nginx (adaptez «votre-domaine.fr» à votre domaine):
# Serveur de redirection HTTP vers HTTPS { listen 80; server_name votre-domaine.fr; # MODIFICATIONS IMPORTANTES: Votre domaine return 301 https://$server_name$request_uri; } # Serveur de configuration HTTPS { listes 443 ssl http2; server_name votre-domaine.fr; # MODIFICATIONS IMPORTANTES: Votre domaine # Chemins de certificat SSL (définis automatiquement par Certbot) ssl_certificate /etc/letsencrypt/live/votre-domaine.de/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/votre-domaine.de/privkey.pem; # Application principale location / { proxy_pass http://127.0.0.1:8080; proxy_set_header hôte $hôte; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } # Connexions WebSocket pour Live-Sync location /notifications/hub { proxy_pass http://127.0.0.1:3012; Mise à jour de proxy_set_header $http_upgrade; proxy_set_header Connection "upgrade"; } }
Étape 5: Créer un certificat SSL et activer Nginx
# Activer la page Nginx sudo ln -s /etc/nginx/sites-available/vaultwarden /etc/nginx/sites-enabled/ # Tester la configuration de Nginx sudo nginx -t # Créer un certificat SSL (remplacer "votre-domaine.fr") sudo certbot --nginx -d votre-domaine.fr # Démarrer Nginx et activer le démarrage automatique sudo systemctl enable nginx sudo systemctl restart nginx
L'installation est déjà terminée sous Linux. aller plus loin dans la section Configuration.
2. Installation sur Windows
Conditions préalables
- Docker Desktop pour Windows Télécharger et installer à partir de: https://docs.docker.com/desktop/windows/install/
- Git pour Windows installer (facultatif, pour une gestion plus facile)
Installation étape par étape
Étape 1: Créer un répertoire de travail**
Le système de fichiers Windows nécessite des chemins d'accès légèrement différents de ceux de Linux, n'oubliez pas de les ajuster en conséquence:
:: Créer un répertoire de travail sur le lecteur D mkdir D:\vaultwarden cd D:\vaultwarden :: Créer un répertoire de données pour le stockage persistant :: IMPORTANT: Sauvegarder régulièrement ce répertoire ! mkdir vw-data
Étape 2: Créer un fichier Docker Compose Crée un fichier nommé docker-compose.yml (avec un éditeur comme Notepad++ ou VS Code):
Personnalisations importantes pour Windows:
version: '3.8' services: vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden restart: unless-stopped environment: # Pour l'installation locale de Windows - pour une utilisation externe, modifiez DOMAIN: "http://localhost:8080" # MODIFICATIONS IMPORTANTES: Générer un jeton d'administration sécurisé # PowerShell: -join ((1..32) | ForEach {'{0:X}' -f (Get-Random -Max 16)}) ADMIN_TOKEN: "VotreAdminTokenSécurisé123" WEBSOCKET_ENABLED: « true » # Après la configuration initiale, misez sur "false"! SIGNUPS_ALLOWED: "true" volumes: # Syntaxe de chemin Windows avec slash en avant - ./vw-data/:/data/ ports: # Connexion Localhost pour une utilisation locale - "127.0.0.1:8080:80" - "127.0.0.1:3012:3012"
Étape 3: Démarrer Vaultwarden Ouvre maintenant PowerShell ou Command Prompt en tant qu'administrateur dans le répertoire Vaultwarden:
:: Démarrer le conteneur (télécharge automatiquement l'image) docker-compose up -d :: Vérifier l'état - devrait afficher "Up" docker-compose ps :: En cas de problème: Voir les logs docker-compose logs vaultwarden
Étape 4: Configuration du pare-feu Windows (facultatif) Si vous souhaitez rendre votre nouveau Vaultward disponible sur le réseau:
:: Créer une règle de pare-feu pour le port 8080 netsh advfirewall firewall add rule name="Vaultwarden" dir=in action=allow protocol=TCP localport=8080
Étape 5: Créer un service Windows (facultatif) Par exemple, pour le démarrage automatique avec Windows, utilisez le NSSM (Non-Sucking Service Manager):
- Télécharger NSSM: https://nssm.cc/télécharger et décompresser
- Créer un service (PowerShell en tant qu'administrateur):
# Ajuster le chemin NSSM cd C:\nssm-2.24\win64 # Installation du service .\nssm.exe install VaultwardenService # Définir Executable (Docker Desktop doit être installé) .\nssm.exe set VaultwardenService Application "C:\Program Files\Docker\Docker\Docker Desktop.exe" # Définir le répertoire de travail .\nssm.exe set VaultwardenService AppDirectory "C:\vaultwarden" # Délai de démarrage (pour que Docker Desktop démarre en premier) .\nssm.exe set VaultwardenService AppExit Default Restart .\nssm.exe set VaultwardenService DependOnService Docker Desktop Service # Démarrer le service .\nssm.exe start VaultwardenService
L'installation est également terminée sous Windows. aller plus loin dans la section Configuration.
3. Installation sur macOS
Conditions préalables
# Installer Homebrew (si ce n'est pas déjà fait) /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" # Docker installer brew install --cask docker # Lancement de Docker Desktop open /Applications/Docker.app
Installation étape par étape
Étape 1: Créer un répertoire de travail macOS utilise des structures de chemin semblables à Unix, donc similaires à Linux:
# Créer un répertoire de travail dans le répertoire d'accueil mkdir -p ~/vaultwarden cd ~/vaultwarden # Créer un répertoire de données pour les données Vaultwarden # IMPORTANT: Sauvegarder régulièrement - tous les mots de passe sont enregistrés ici! mkdir vw-data
Étape 2: Créer un fichier Docker Compose Utilise un éditeur de texte tel que nano, vim ou TextEdit:
# Créer un fichier avec nano (recommandé pour l'utilisation du terminal) nano docker-compose.yml
Configuration spécifique à macOS:
version: '3.8' services: vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden restart: unless-stopped environment: # Pour une utilisation locale - en cas d'utilisation externe, modifier le domaine DOMAIN: "http://localhost:8080" # MODIFICATIONS IMPORTANTES: Générer des jetons sécurisés # Terminal : openssl rand -hex 32 ADMIN_TOKEN: "VotreAdminTokenSécurisé123" WEBSOCKET_ENABLED: « true » # Désactiver après l'installation pour des raisons de sécurité! SIGNUPS_ALLOWED: « true » # Spécifique à macOS: Timezone définir TZ: "Europe/Berlin" volumes: # Chemin macOS (Tilde n'est pas pris en charge par Docker, donc chemin relatif) - ./vw-data/:/data/ ports: # Lien localhost pour la sécurité - "127.0.0.1:8080:80" - "127.0.0.1:3012:3012"
Étape 3: Démarrer Vaultwarden
# Démarrer le conteneur en arrière-plan docker-compose up -d # Vérifier l'état (devrait montrer "Up" et "healthy") docker-compose ps # Vérifier les logs en cas de problème docker-compose logs -f vaultwarden
Étape 4: Configuration du pare-feu macOS (facultatif) Si le pare-feu macOS est activé:
# Vérifier l'état actuel du pare-feu sudo /usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate # Autoriser Docker pour les connexions entrantes sudo /usr/libexec/ApplicationFirewall/socketfilterfw --add /Applications/Docker.app/Contents/MacOS/Docker sudo /usr/libexec/ApplicationFirewall/socketfilterfw --unblockapp /Applications/Docker.app/Contents/MacOS/Docker
Étape 5: Démarrage automatique avec macOS (LaunchAgent) Pour le démarrage automatique de Vaultwarden au démarrage du système, un fichier LaunchAgent est créé:
# Créer un répertoire LaunchAgent (s'il n'existe pas) mkdir -p ~/Library/LaunchAgents # Créer un fichier LaunchAgent nano ~/Library/LaunchAgents/com.vaultwarden.plist
Configuration de LaunchAgent (ajustez le nom d'utilisateur):
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.vaultwarden</string> <key>ProgramArguments</key> <array> <!-- MODIFICATIONS: Chemin d'accès à docker-compose (which docker-compose) --> <string>/usr/local/bin/docker-compose</string> <string>up</string> <string>-d</string> </array> <key>WorkingDirectory</key> <! Saisissez votre nom d'utilisateur --> <string>/Users/Votrenom d'utilisateur/vaultwarden</string> <key>RunAtLoad</key> <true/> <key>KeepAlive</key> <false/> <key>StandardOutPath</key> <string>/tmp/vaultwarden.stdout</string> <key>StandardErrorPath</key> <string>/tmp/vaultwarden.stderr</string> </dict> </plist>
Activer LaunchAgent:
# LaunchAgent charger et activer launchctl load ~/Library/LaunchAgents/com.vaultwarden.plist # Vérifier le statut launchctl list | grep vaultwarden # En cas de modification: LaunchAgent recharger launchctl unload ~/Library/LaunchAgents/com.vaultwarden.plist launchctl load ~/Library/LaunchAgents/com.vaultwarden.plist
Étape 6: Intégration Homebrew (facultatif) Pour une intégration encore plus propre de macOS, vous pouvez utiliser les services Homebrew:
# Installer les services Homebrew (s'ils n'existent pas) brew tap homebrew/services # Créer un service d'emballage simple brew services start docker # Alternativement: Démarrer directement Vaultwarden via la commande Docker alias vaultwarden-start="cd ~/vaultwarden && docker-compose up -d" alias vaultwarden-stop="cd ~/vaultwarden && docker-compose down" alias vaultwarden-logs="cd ~/vaultwarden && docker-compose logs -f" # Les alias sont stockés en permanence dans .zshrc ou .bash_profile echo 'alias vaultwarden-start="cd ~/vaultwarden && docker-compose up -d"' >> ~/.zshrc echo 'alias vaultwarden-stop="cd ~/vaultwarden && docker-compose down"' >> ~/.zshrc echo 'alias vaultwarden-logs="cd ~/vaultwarden && docker-compose logs -f" >> ~/.zshrc
Et zack, ça peut aller aussi vite que possible. Installation terminée. Maintenant, dans la section suivante, examinons la configuration en détail.
Configuration et gestion avancées
Premiers pas: Le panneau d'administration
Le panneau d'administration est l'interface de gestion centrale de votre nouveau serveur Vaultwarden:
- Accès: Naviguer vers
https://domain.de/admin(ouhttp://localhost:8080/adminavec une configuration locale uniquement) - authentification: Entrez le jeton d'administration que vous avez défini dans le fichier Docker Compose
- Réglages initiaux importants:
- Configuration SMTP: Requis pour les notifications par e-mail et 2FA par e-mail
- Paramètres du domaine: Doit correspondre à votre URL réelle
- Enregistrement de l'utilisateur: Après la configuration initiale, veuillez désactiver pour des raisons de sécurité! (vous pouvez inviter quand même)
- Chemins de sauvegarde: Définir des répertoires pour les sauvegardes automatiques

Encore quelques phrases sur le message d'erreur en jaune ci-dessus concernant le jeton Admin_Token:
La sécurité est essentielle, surtout quand il s'agit de choses aussi sensibles que votre nouveau gestionnaire de mots de passe. Pendant longtemps, il a été ADMIN_TOKEN Vaultwarden n'est disponible qu'en clair, ce n'est pas la solution la plus sûre, comme nous le savons tous. Mais ne vous inquiétez pas, cela a une fin! Depuis la version 1.28.0+ vous pouvez haïr correctement le jeton et ainsi rendre votre instance encore plus sûre.
Pourquoi le feriez-vous?
Imaginez que quelqu'un ait accès à votre config.json ou vos variables d'environnement. Si le ADMIN_TOKEN En clair, cette personne dispose d'un accès administrateur immédiat à votre serveur Vaultwarden. Avec un jeton haché, c'est presque impossible, car le mot de passe d'origine ne peut pas être reconstruit à partir du hachage. Super, n'est-ce pas?
Pour cela, Vaultwarden utilise maintenant Argon2, un algorithme de hachage spécialement conçu pour le cryptage de mot de passe et considéré comme très sûr. Un jeton haché est appelé PHC String Compétition de hachage de mots de passe (Password Hashing Competition).
D'accord, et comment puis-je créer le hachage?
Le plus simple est d'utiliser directement la fonction intégrée de Vaultwarden lui-même. Vous avez deux options:
1. La voie simple: vaultwarden hash
Vaultwarden vous propose son propre petit outil qui vous PHC String généré. Le meilleur de tout ça? Il y a deux préréglages: les Défauts de Bitwarden et les Recommandations de l'OWASP. Les recommandations de l'OWASP sont les plus sûres des deux, mais les deux sont une amélioration significative par rapport au texte clair.
Pour créer le hachage, tapez simplement la commande appropriée. Je suppose que vous utilisez Vaultwarden comme décrit ci-dessus dans le Docker et appelez le conteneur vwcontainer, Remplacez-le par le nom de votre conteneur.
Avec Bitwarden Defaults (par défaut):
# Ou bien directement par le biais du binaire:docker exec -it vwcontainer /vaultwarden hash./vaultwarden hash
Avec les recommandations de l'OWASP (recommandé):
# Ou bien directement par le biais du binaire:docker exec -it vwcontainer /vaultwarden hash --preset owasp./vaultwarden hash --preset owasp
La commande vous demandera deux fois un mot de passe, puis crachera le mot de passe fini. PHC String à partir de. Il suffit de le copier dans votre configuration.
Important: Si vous avez déjà enregistré vos paramètres via l'interface d'administration, les variables d'environnement seront ignorées. Ensuite, vous devez également mettre à jour le mot de passe via l'interface d'administration!
2. La voie du DIY: argon2 CLI
Si vous préférez le prendre en main vous-même, vous pouvez aussi argon2-CLI Utilisez l'outil disponible sur la plupart des distributions Linux. Ici, vous devez spécifier manuellement les paramètres pour les paramètres Bitwarden ou OWASP.
Avec Bitwarden Defaults:
echo -n "VotreMegaMot de passe secret" | argon2 "$(openssl rand -base64 32)" -e -id -k 65540 -t 3 -p 4
Avec les recommandations de l'OWASP:
echo -n "VotreMegaMot de passe secret" | argon2 "$(openssl rand -base64 32)" -e -id -k 19456 -t 2 -p 1
Facile à utiliser VotreMegaMot de passe secret Remplacer par le mot de passe de votre choix. Le terminal vous donne le PHC String Retour en arrière.
Que dois-je faire avec le PHC String?
Si vous avez la chaîne, vous pouvez l'utiliser dans votre configuration Docker. Le plus simple est d'utiliser des variables d'environnement dans votre docker-compose.yml Fichier. Et très important: Après cela, vous ne vous connectez plus avec le jeton lui-même, mais avec votre Mot de passe, que vous avez tapé lors de la création du hachage.
Attention : Ne traitez en aucun cas manuellement les config.json. Cela peut rapidement causer des problèmes. Sinon, il est préférable d'utiliser l'interface d'administration pour mettre à jour les paramètres.
Et si vous voyez toujours l'avertissement ennuyeux que votre jeton n'est pas sécurisé, alors soit vous avez déjà enregistré les paramètres une fois via l'interface d'administration, soit la configuration n'est pas tout à fait correcte. Dans ce cas, vérifiez impérativement les Docu sur la substitution de variables dans Docker-Compose ou les conseils directement dans le Github Vaultwarden Repo.
Prêt? C'était déjà ça. C'est aussi simple que cela pour rendre votre serveur Vaultwarden un peu plus sûr.
Créer le premier utilisateur
La création initiale d'un compte administrateur:
- enregistrement: Naviguer vers
https://domain.de(Page principale) - Créer un compte: Cliquez sur «Créer un compte» – cela ne fonctionne que si:
SIGNUPS_ALLOWED: « true »est fixé - Identifiants de connexion sécurisés:
- Utilise une adresse e-mail valide (importante pour la 2FA et la récupération)
- Sélectionne un mot de passe maître fort et unique (minimum 12 caractères, caractères spéciaux, chiffres)
- Confirmation par e-mail: Si la vérification par e-mail est activée, cliquez sur le lien de confirmation
- Important: Après avoir créé votre premier compte d'administrateur, vous devez absolument
SIGNUPS_ALLOWEDsur« faux »Asseyez-vous!

Créer des organisations et des groupes
Vaultwarden prend en charge les organisations qui partagent des mots de passe au sein d'équipes ou de familles.
Créer une organisation:
- Connectez-vous à l'interface Web de Vaultwarden
- Cliquez sur «Créer une organisation» → «Créer une organisation»
- Attribuer des noms (par exemple «Famille Mustermann» ou «Entreprise XY»)
- Sélectionner le type d'organisation (famille ou entreprise)
Activer les groupes:
Les groupes doivent être explicitement activés dans Vaultwarden par une variable d'environnement dans le fichier Docker Compose:
environment: # Activer la fonctionnalité de groupe ORG_GROUPS_ENABLED: « true »
Après l'activation, vous pouvez également créer des groupes:
- Sélectionner une organisation → «Gérer» → «Groupes»
- «Nouveau groupe» → Noms attribués (par exemple, «Admins», «Utilisateurs»)
- Définir les droits d'accès et attribuer des membres
Collections et contrôles d'accès:
Les collections organisent les entrées de coffre-fort au sein d'une organisation:
- «Gérer» → «Collections» → «Nouvelle collection»
- Définir les droits d'accès par groupe/utilisateur:
- Lire seulement: Peut voir et utiliser les mots de passe
- Lecture/écriture: Peut modifier les entrées
- Gérer: Accès complet, y compris la suppression
Configurer l'authentification à deux facteurs (2FA/MFA)
Vaultwarden prend en charge différentes méthodes 2FA qui doivent être activées pour une sécurité maximale.
Méthodes 2FA prises en charge:
- Codes de messagerie: Méthode la plus simple, le code est envoyé par e-mail
- TOTP (Time-based OTP): Google Authenticator, Authy, Microsoft Authenticator
- duo: Service professionnel 2FA avec notifications push
- YubiKey: Authentification matérielle
- FIDO2 WebAuthn: Clés matérielles modernes (YubiKey 5, SoloKey, etc.)
Configurer TOTP (Google Authenticator):
- Paramètres du compte → «Sécurité» → «Connexion en deux étapes»
- Sélectionner «Application Authenticator»
- Scannez le code QR avec l'application Authenticator
- Entrez le code à 6 chiffres pour confirmer
- Enregistrer le code de récupération en toute sécurité!
Configuration de la clé matérielle (FIDO2):
Pour les clés matérielles, des variables d'environnement supplémentaires doivent être définies:
environment: # Activer FIDO2 WebAuthn FIDO2_ENABLED: « true » # Domaine pour FIDO2 (doit correspondre exactement à votre domaine) DOMAIN: "https://domain.de"
Forcer 2FA à l'échelle mondiale (fonctionnalité d'entreprise):
Vaultwarden offre des options pour forcer 2FA pour tous les utilisateurs:
environment: # Désactiver la fonction de rappel 2FA (force 2FA à chaque connexion) DISABLE_2FA_REMEMBER: « true » # Activer les stratégies d'organisation ORG_EVENTS_ENABLED: « true »
Meilleures pratiques en matière de sécurité
Sécuriser le panneau d'administration uniquement pour l'accès local:
environment: # Panneau d'administration accessible uniquement à partir de certaines adresses IP ADMIN_ALLOWED_IPS: "192.168.1.0/24,10.0.0.0/8" # Délai d'expiration de la session d'administration (secondes) ADMIN_SESSION_LIFETIME: "3600"
Contrôler l'enregistrement de l'utilisateur:
environment: # Désactiver après la configuration! SIGNUPS_ALLOWED: « faux » # Autoriser uniquement les invitations via les comptes existants INVITATIONS_ALLOWED: « true » # Liste blanche de domaines pour les enregistrements SIGNUPS_DOMAINS_WHITELIST: "monentreprise.de,fiancewuerdig.com"
Configuration de l'e-mail pour 2FA et invitations:
Les paramètres SMTP sont essentiels pour les e-mails 2FA et les invitations des utilisateurs:
environment: # Serveur SMTP (exemple: Gmail) SMTP_HOST: "smtp.gmail.com" SMTP_FROM: "vaultwarden@votre-domaine.fr" SMTP_PORT: "587" SMTP_SECURITY: "starttls" SMTP_USERNAME: "votre-email@gmail.com" # Mot de passe d'application requis sur Gmail! SMTP_PASSWORD: "votre mot de passe d'application"
Enregistrement des tentatives de connexion infructueuses:
environment: # Activer l'enregistrement étendu EXTENDED_LOGGING: « true » # Les connexions infructueuses enregistrent LOG_LEVEL: "Avertissement" # Fichier journal (facultatif) LOG_FILE: "/data/vaultwarden.log"
Fonctions de sécurité avancées
Configuration de l'accès d'urgence:
Emergency Access permet aux personnes de confiance d'accéder à votre coffre-fort en cas d'urgence:
- Paramètres du compte → «Accès d’urgence»
- Ajouter une personne de confiance à partir d'une adresse e-mail
- Définir le temps d'attente (par ex. 7 jours)
- Sélectionner le type d'accès: «Afficher uniquement» ou «Accès complet»
Vault Health Reports:
Vaultwarden propose des analyses de sécurité intégrées:
- Mots de passe faibles: Identifie les mots de passe non sécurisés
- Mots de passe réutilisés: Trouver des identifiants utilisés en double
- Mots de passe compromis: Vérifie contre la base de données HaveIBeenPwned
- Sites Web non sécurisés: Avertit des sites HTTP avec des données de connexion
Fail2Ban pour la protection de force brute:
Les systèmes Linux doivent configurer Fail2Ban:
# Fail2Ban installer sudo apt install fail2ban # Créer un filtre Vaultwarden sudo nano /etc/fail2ban/filter.d/vaultwarden.conf
Configuration de Fail2Ban:
[Définition] failregex = ^.*Username or password is incorrect\. Try Again. IP: <HOST>\. Nom d'utilisateur:.*$ ignoreregex =
# Configurer le jail sudo nano /etc/fail2ban/jail.d/vaultwarden.conf
[vaultwarden] enabled = true port = 80,443 filter = vaultwarden action = iptables-allports[name=vaultwarden] logpath = /opt/vaultwarden/vw-data/vaultwarden.log maxretry = 3 bantime = 14400 findtime = 14400
Surveillance et maintenance
Mise en œuvre de Health Check:
services: vaultwarden: # ... autres configurations healthcheck: test: ["CMD", "curl", "-f", "http://localhost:80/alive"] interval: 30s timeout: 10s retries: 3 start_period: 40s
Configurer la rotation du journal:
environment: # Limiter les logs LOG_LEVEL: "Avertissement" # Taille maximale du fichier journal LOG_FILE: "/data/vaultwarden.log"
Configuration de Logrotate:
sudo nano /etc/logrotate.d/vaultwarden
/opt/vaultwarden/vw-data/vaultwarden.log { weekly missingok rotate 52 compress notifempty create 644 root root postrotate docker-compose -f /opt/vaultwarden/docker-compose.yml restart vaultwarden endscript }
Clients Bitwarden et outils compatibles
Extensions de navigateur
Toutes les extensions officielles du navigateur Bitwarden fonctionnent parfaitement avec Vaultwarden:
Navigateurs basés sur Chrome/Chromium
- Nom: Bitwarden - Gestionnaire de mots de passe gratuit
- Disponible pour: Chrome, Edge, Brave, Vivaldi, Arc, Opera
- installation: Chrome Web Store → Rechercher et installer «Bitwarden»
- Lien de téléchargement: https://chrome.google.com/webstore/detail/bitwarden-free-password-m/nngceckbapebfimnlniiiahkandclblb
Firefox
- Nom: Bitwarden - Gestionnaire de mots de passe gratuit
- installation: Firefox Add-ons → Rechercher et installer «Bitwarden»
- Lien de téléchargement: https://addons.mozilla.org/firefox/addon/bitwarden-password-manager/
Safari
- Nom: Bitwarden pour Safari
- installation: Mac App Store → Télécharger «Bitwarden»
- particularité: Nécessite l'application de bureau comme base
Configuration de l'extension du navigateur:
Après l'installation, vous devez pointer l'extension vers votre serveur Vaultwarden:
- Installer et ouvrir l'extension
- Cliquez sur l'icône Paramètres (engrenage)
- Changer l'URL du serveur pour:
https://domain.de(ouhttp://localhost:8080dans le cas d'une configuration locale) - Connectez-vous avec vos identifiants Vaultwarden
Applications mobiles
Android
Plusieurs options sont disponibles ici:
Application officielle de Bitwarden:
- Nom: Bitwarden Password Manager
- Télécharger: Google Play Store
- lien: https://play.google.com/store/apps/details?id=com.x8bit.bitwarden
- Caractéristiques: Intégration complète, service de remplissage automatique, déverrouillage biométrique
Alternative F-Droid:
- Nom: Bitwarden (Open Source)
- Télécharger: Référentiel F-Droid
- avantage: Entièrement open source, aucun service Google requis
iOS/iPadOS
- Nom: Bitwarden Password Manager
- Télécharger: Apple App Store
- lien: https://apps.apple.com/app/bitwarden-password-manager/id1137397744
- Caractéristiques: Intégration iOS, Face ID/Touch ID, fournisseur de remplissage automatique, prise en charge d'Apple Watch
Configuration des applications mobiles:
- Installer et ouvrir l'application
- Appuyez sur «Self-hosted» ou «Enterprise» lors de l’inscription
- Entrez l'URL du serveur:
https://domain.de - Se connecter avec un compte Vaultwarden
- Activer le déverrouillage biométrique dans les paramètres de l'application (recommandé)
Applications de bureau
Windows
- Télécharger: https://bitwarden.com/download/
- Formats disponibles: Installateur .exe, Microsoft Store, Chocolatey, Winget
- Installation via Winget:
winget install Bitwarden.Bitwarden
macOS
- Télécharger: Mac App Store ou directement de bitwarden.com
- Installation via Homebrew:
brew install --cask bitwarden - Caractéristiques: Intégration Touch ID, intégration Safari Extension
Linux
Plusieurs options d'installation disponibles:
- AppImage: Fonctionnement universel sur toutes les distributions
- Paquet .deb: Pour les systèmes basés sur Debian/Ubuntu
- Snap:
snap install bitwarden - Flatpak:
flatpak install flathub com.bitwarden.desktop - AUR (Arch Linux):
yay -S bitwarden
Interface de ligne de commande (CLI)
L'interface de ligne de commande Bitwarden est également un outil puissant pour l'automatisation et les scripts:
Installation :
# Via npm (Node.js requis) npm install -g @bitwarden/cli # Via Snap snap install bw # Via Chocolatey (Windows) choco install bitwarden-cli
Configuration et utilisation:
# Configuration du serveur bw config server https://votre-domaine.fr # Connectez-vous bw login votre-email@domaine.fr # Déverrouiller le coffre-fort (renvoie les jetons de session) export BW_SESSION=$(bw unlock --raw) # Lister les articles bw list items # Récupérer le mot de passe pour un site Web spécifique bw get password github.com # Créer une nouvelle entrée bw create item '{"type":1,"name":"exemple","login":{"username":"test@example.com","password":"mot de passe secret"}}'
Stratégies de sauvegarde
Script de sauvegarde automatique (Linux/macOS)
#!/bin/bash BACKUP_DIR="/backup/vaultwarden" DATE=$(date +%Y%m%d_%H%M%S) # Créer un répertoire de sauvegarde mkdir -p $BACKUP_DIR # Arrêter les conteneurs docker-compose stop vaultwarden # Sauvegarder les données tar -czf $BACKUP_DIR/vaultwarden_backup_$DATE.tar.gz ./vw-data/ # Démarrer un conteneur docker-compose start vaultwarden # Supprimer les anciennes sauvegardes (plus de 30 jours) find $BACKUP_DIR -name "vaultwarden_backup_*.tar.gz" -mtime +30 -delete
Configurer ce script en tant que cronjob:
# Modifier le crontab crontab -e # Sauvegarde quotidienne à 2h00 0 2 * * * /path/to/backup-script.sh
Recommandations de sécurité
1. Authentification forte
- Utilise toujours des jetons d'administration complexes
- Il est également préférable d'activer l'authentification à deux facteurs pour tous les comptes
- Désactive l'enregistrement après la configuration et invite les utilisateurs à la place
2. Sécurité du réseau
- Toujours utiliser HTTPS en production
- Limite l'accès via les règles de pare-feu
- Implémenté dans tous les cas également fail2ban pour la protection de force brute
3. Mises à jour du système
# Mises à jour régulières du conteneur docker-compose pull docker-compose up -d # Mises à jour du système sudo apt update & & sudo apt upgrade
Dépannage
Problèmes et solutions courants
Problème: L'interface web ne se charge pas
# Vérifier les logs des conteneurs docker-compose logs vaultwarden # Vérifier les conflits de ports netstat -tulpn | grep :8080
Problème: L'extension du navigateur ne se connecte pas
- Vérifie l'URL du serveur dans les paramètres d'extension
- S'assure que HTTPS est activé (sauf pour localhost)
- Vérifie les paramètres du pare-feu
Problème: L'envoi d'e-mails ne fonctionne pas
- Vérifier les paramètres SMTP dans le panneau d'administration
- Vérifier les journaux pour les erreurs d'authentification SMTP
- Utiliser des mots de passe d'application spécifiques au fournisseur de messagerie
Conclusion
Vaultwarden est une excellente alternative pour ceux qui souhaitent contrôler eux-mêmes la gestion de leurs mots de passe. Avec une faible consommation de ressources et une compatibilité totale avec tous les clients Bitwarden, il offre une solution professionnelle pour les particuliers et les petites entreprises.
Bien que l'installation ponctuelle nécessite une compréhension technique, les avantages à long terme en termes de protection des données, de contrôle et de réduction des coûts compensent largement l'effort. Avec les instructions d'installation et les recommandations de sécurité fournies, rien ne s'oppose à une configuration d'auto-hébergement réussie.
Remarque importante: N'oubliez jamais de faire des sauvegardes régulières et de garder votre installation à jour. La sécurité de vos mots de passe est entièrement sous votre responsabilité avec une telle configuration!
Ressources supplémentaires
- Wiki officiel de Vaultwarden: https://github.com/dani-garcia/vaultwarden/wiki
- Bitwarden Client / Addons / Télécharger: https://bitwarden.com/download/
- Soutien communautaire: https://matrix.to/#/#vaultwarden:matrix.org
- Problèmes de GitHub: https://github.com/dani-garcia/vaultwarden/issues
- Docker Hub: https://hub.docker.com/r/vaultwarden/server
Cet article a été compilé avec des informations tirées de la documentation officielle de Vaultwarden et de l'expérience de la communauté. État d’avancement: 1er août 2025