Un de mes derniers "gros" projets, c'était de mettre en place un serveur Bitwarden dit "on premise", c'est à dire chez moi. Bitwarden est un gestionnaire de mot de passe. L'idée c'est de stocker ses mots de passe à la maison et non pas sur des serveurs externes
Pour palier à certains problèmes que j'ai pu rencontrer notamment des coupures réseau de la part de mon opérateur, j'ai décidé de mettre en place un 2e serveur en redondance, qui se trouve dans un autre réseau local ce qui permet de palier aux potentielles coupures internet d'un côté ou de l'autre, où encore de palier aux risques physiques (incendie par exemple).
J'ai eu l'occasion de mettre en place cette solution grace à l'aide d'un ami dont vous trouverez ici son GitHub.
Au niveau du fonctionnement rapidement : la solution que j'utilise s'appelle Vaultwarden, car la version native de Bitwarden n'est pas compatible avec l'architecture ARM qui est utilisée par mes serveurs.
Chaque serveur est une copie conforme de l'autre, et un cluster est effectué sur la base de données préalablement transformée en base MySQL. A chaque modification effectuée dans la base sur un des 2 serveurs, elle est immédiatement répliquée sur l'autre serveur
Le tout communique via un Tunnel VPN pour éviter les attaques.
Par dessus tout ça, on a un 3e serveur que j'ai personnellement pris chez un hébergeur de VPS. Ce dernier va servir à choisir un des 2 serveurs en fonction de sa disponibilité, et tout ceci en étant totalement transparent pour l'utilisateur final.
Si vous souhaitez plus d'informations techniques sur le projet, toute la documentation de la mise en place est disponible sur mon GitHub.