URL: https://linuxfr.org/users/glandos/journaux/migration-complete-vers-bitwarden-a-l-aide-de-rbw Title: Migration complète vers Bitwarden à l’aide de rbw Authors: Glandos Date: 2020年08月16日T23:18:32+02:00 License: CC By-SA Tags: bitwarden, gestionnaire_de_mots_de_passe, pass et debian Score: 34 Avec un premier *commit* en avril 2014, on peut dire que je suis un utilisateur de longue date de [pass](https://www.passwordstore.org/). Enfin, j’étais. J’ai changé pour Bitwarden en auto-hébergé, et ça raconte un peu cette migration, ainsi que le pourquoi. `pass` avait tout pour me plaire : - En ligne de commande - Synchronisé à l’aide de `git` - Le chiffrement s’appuie sur une solution reconnue (`gpg`) - Libre - Stockage simple à l’aide de fichiers - Plusieurs extensions de navigateurs disponibles Bien sûr, le chiffrement avec `gpg`, ça demande un peu de technique initiale, mais une fois que c’est en place, ce n’est plus trop un problème. Tout ça, ça va bien quand on est tout seul. Et puis arrive la famille, et le besoin de **partager**. Partager ses outils (c’est quand même cool un gestionnaire de mots de passe), et partager ces mots de passe. La [CAF](http://www.caf.fr/) par exemple utilise un compte pour toute la famille. Il peut être également rassurant de partager certains comptes importants comme le compte Améli pour la CPAM. Ou encore les comptes des Espaces Numériques de Travail de ses enfants trop jeunes pour en gérer l’accès. `pass` ne permet pas vraiment de partager. Enfin si, mais c’est tout ou rien. J’ai bien vu [gopass](https://www.gopass.pw/) qui est une alternative sérieuse à `pass`, avec une API compatible, et des outils supplémentaires pour travailler en équipe. Mais voilà, il me fallait également un outil clicodrome, sympa, bref une belle IHM, parce que si pour moi, la ligne de commande est plutôt rassurante, ce n’est pas le cas de tout le monde. J’ai cherché des interfaces pour `pass` ou `gopass`, mais là, c’est un peu plus la dèche. Ça ne m’a pas vraiment étonné. Donc, je suis allé voir ailleurs. Je vous passe les différents choix, de toutes façons, je les ai oubliés, et je suis tombé sur [Bitwarden](https://bitwarden.com/). Vous le connaissez sûrement, c’est un gestionnaire de mots de passe [libre](https://github.com/bitwarden) et qui se rémunère à l’aide d’offre d’hébergements. Le prix n’est pas exorbitant d’ailleurs, puisque ça va du compte gratuit au compte à 1$ par mois pour 5 utilisateurs. Mais moi, je veux auto-héberger. C’est [possible avec l’outil officiel](https://github.com/bitwarden/server) mais il faut quand même .NET Core et SQL Server, c’est un peu trop. Je sais que Microsoft fait un grand effort pour le libre (allez, faut le reconnaître), mais je ne suis pas encore prêt à faire autant de pas à la fois. Et ça tombe bien, parce qu’il n’y a pas besoin, grâce à une réimplementation en Rust : [bitwarden_rs](https://github.com/dani-garcia/bitwarden_rs). Installer un outil en Rust, ça, ça me branche. Par contre, c’est à utiliser avec Docker. Ah, bon. Je vous passe le pourquoi du comment, mais je n’ai pas envie d’avoir un outil qui tourne dans un conteneur Docker en production. Et ça tombe bien (*bis*), parce qu’il n’y a pas besoin, grâce à une chaîne de fabrication de paquet Debian : [bitwarden_rs-debian](https://github.com/greizgh/bitwarden_rs-debian). Ça utilise Docker, mais juste pour faire un paquet Debian. Je dis banco. `bitwarden_rs` embarque [l’interface Web de Bitwarden](https://github.com/bitwarden/web), ce qui évite de réinventer la roue quand elle marche bien. Cette interface ne sert au final pas beaucoup, puisqu’on utilise principalement les extensions du navigateur ou l’outil en ligne de commande. Mais quand on se retrouve sur un autre ordinateur sans ligne de commande, on est bien content de l’avoir. Cet outil remplit presque toutes les cases : - Interface Web utilisable par n’importe qui - Extension de navigateur *idem* - Gestion des organisations avec collections partagées, tout en gardant certaines entrées privées - Une cryptographie correcte PBKDF2 SHA256. Une demande vers [Argon2](https://community.bitwarden.com/t/switch-to-argon2/350) est en cours, sans trop de retour pour l’instant. Par contre, il me faut un outil en ligne de commande. J’utilise mon gestionnaire pour stocker des mots de passe utiles à d’autres outils en ligne de commande, et c’est indispensable de pouvoir y accéder de cette manière. J’ai essayé [l’outil officiel](https://github.com/bitwarden/cli), et c’est une grosse blague : c’est en Javascript. Vous pouvez aller voir [mon problème](https://github.com/bitwarden/cli/issues/67) mais grosso modo, attendre 6 secondes pour avoir un mot de passe, c’est pas très 2020. Et ça tombe bien (*ter*), un autre gentil développeur s’est fendu d’un outil alternatif : [rbw](https://github.com/doy/rbw). Ça s’installe avec `cargo install rbw`, et ça fait à peu près la même chose que `gpg` utilisé par `pass`, en utilisant notamment `pinentry`. Et ça va vite. Depuis la conjonction de ces outils, j’ai tout migré sur ma propre instance de Bitwarden. `pass` m’a bien servi, je lui dois beaucoup, mais je ne le regrette pas.