Site icon JusteGeek

Asustor : activer l'interface admin de Bitwarden

Parmi mes nombreux tutoriels sur les NAS, je vous ai proposé récemment un tuto sur l'installation du gestionnaire de mot de passe open source Bitwarden sur NAS Asustor. Et suite à ce tutoriel, j'ai décidé d'adopter cette solution, que je n'utilisais pas jusqu'alors. Mais avec la pratique, je me suis aperçu d'une chose importante : l'interface admin de Bitwarden n'est pas disponible. Problématique ! Car cette interface permet, entre autres, de désactiver les nouvelles inscriptions. Comprenez ici que de base, toute personne qui accède à la page de connexion de votre Bitwarden peut se créer un compte... Et cela peut être gênant si vous ouvrez votre Bitwarden pour y accéder depuis l'extérieur...

Pourquoi une interface désactivée ?

La première chose à garder à l'esprit, c'est que le package Bitwarden disponible sur AppCentral n'est pas fourni officiellement par Bitwarden, ni par Asustor. Il s'agit d'un portage qui a été réalisé à l'aide de conteneur par un contributeur tiers (que je désignerai ci-après par son prénom : Patrick), comme cela se fait beaucoup dans l'univers des NAS. Ensuite, notons que l'accès à l'interface admin de Bitwarden nécessite la saisie d'un token personnalisé (sorte de mot de passe assez long), qui sera utilisé pour se connecter à ladite interface. Dès lors, lorsque Patrick a réalisé le portage, sans doute par souci de simplicité (ou peut être par simple oubli), il n'a pas intégré cette notion de création de token personnalisé à l'installation. Résultat pas d'interface d'admin... Et ça, c'est dommage.

J'ai donc contacté Patrick, pour échangé avec lui sur ce point et savoir s'il avait en tête une nouvelle version avec cette interface, ou bien s'il avait pas un petit contournement à me proposer. Moins de 24h plus tard, je recevais une réponse de sa part : il va réfléchir à l'idée d'intégrer la création de ce token, tout en s'assurant que celui-ci serait conservé en cas de mise à jour du conteneur.

Bref, c'est assez technique, mais vous l'aurez compris, c'est dans les tuyaux. Mais alors que faire en attendant ? Y a t-il une manip ? et bien oui, et je vais vous l'expliquer maintenant.

Réactiver l'interface admin de Bitwarden sur ADM

Je vous préviens tout de suite, la manip suivante est quelque peu avancée car il va falloir modifier le conteneur Bitwarden. Je vous la donne donc, à vous de la suivre ou non. Notez également que je vous donnerai juste après les inconvénients de ce contournement.

Commencez par vous connecter sur votre NAS avec un compte disposant des droits d'administration. Ouvrez ensuite AppCentral, recherchez l'application Portainer CE et installez-la.

Portainer est disponible dans AppCentral d'ADM

Laissez-vous guider par l'assistant d'installation et patientez calmement, en prenant un petit café par exemple ! 🙂

Une fois Portainer CE installé, vous pouvez accéder à son interface en cliquant sur la nouvelle icône apparue sur le bureau du NAS.

Portainer CE

On arrive alors sur une page d'accueil qui nous demande de définir le mot de passe de notre administrateur Portainer. Définissez donc ce mot de passe en choisissant, comme toujours un mot de passe fort, et cliquez sur Create User. Je vous rappelle au passage que Bitwarden vous permet de générer en un clic des mots de passe fort 😉

Création de l'administrateur Portainer

Sélectionnez ensuite l'environnement de conteneurs que vous souhaitez manager. Dans notre cas, ce sera Docker. Cliquez sur le bouton Connect.

Choisissez l'environnement à manager avec Portainer

Et voilà ! La première étape est passée : Portainer est installée. Maintenant nous avons deux possibilités : éditer notre conteneur actuel ou le dupliquer et modifier le conteneur cloné. L'opération n'étant pas d'une complexité extrême, je vais directement éditer le conteneur. Si vous n'êtes pas sûr de vous et que vous avez peur de faire une bêtise, alors dupliquez votre conteneur. Sur la page d'accueil de Portainer, cliquez sur votre environnement Docker.

L'accueil de Portainer

Cliquez ensuite dans le menu à gauche sur Containers puis sélectionnez Bitwarden et arrêtez-le.

Le conteneur Bitwarden est maintenant arrêté

Une fois le conteneur arrêté, cliquez sur le nom du conteneur Bitwarden puis cliquez sur le bouton Duplicate/Edit.

Les informations sur le conteneur dans Portainer

Scroller jusqu'en bas de la page, et cliquez sur Env puis sur le bouton gris +add environment variable. Une ligne vierge s'ajoute en dernière position. Dans le champ name, saisissez ADMIN_TOKEN et dans value, saisissez un token (un mot de passe long, qui vous servira à vous connecter à l'interface admin de Bitwarden).

Ajoutez la variable ADMIN_TOKEN dans le conteneur bitwarden

Cliquez ensuite sur le bouton Deploy Container situé juste au dessus du bloc que vous venez de modifier. Une confirmation vous sera demandé si vous avez décidé d'éditer et non de dupliquer le conteneur. Et voilà, vous pouvez maintenant vous connecter à l'adresse de votre bitwarden, en ajoutant /admin à la fin de l'URL pour accéder à l'interface d'administration. (ex : )

Saisissez le token créé précédemment

Saisissez le token défini dans l'interface Portainer et vous accéderez à l'interface admin de Bitwarden. Vous pourrez ainsi régler Bitwarden aux petits oignons, et notamment désactiver les créations de compte.

L'interface admin de Bitwarden

Une solution avec ses inconvénients

Comme je vous le disais au début, cette solution n'est pas l'idéale et constitue un palliatif temporaire. En effet, nous avons donc maintenant un conteneur modifié. Deux hypothèses sont envisageables ici :

  1. Vous avez édité le conteneur. Dans ce cas, lorsqu'une mise à jour sera proposée via AppCentral, son application supprimera votre conteneur modifié pour en déployer un nouveau... Et là, vous perdrez votre TOKEN. Je vous conseille donc de le noter soigneusement, et vous pourrez le redéfinir sur le conteneur à jour, si besoin.
  2. Vous avez dupliqué le conteneur Bitwarden. Dans ce cas, vous n'utilisez plus la source provenant d'AppCentral, vous n'aurez donc plus les mises à jour de l'application, à moins d'aller mettre à jour vous-même l'image utilisée par le conteneur.

Bon la solution n'est donc pas parfaite, mais elle remplit son office, au moins le temps que Patrick intègre la gestion du TOKEN_ADMIN dans son package. Voilà ! Allez, avant de partir, je voudrais remercier Patrick pour sa disponibilité et sa rapidité, ainsi que pour ce contournement assez facile à mettre en place.

Quitter la version mobile