Installation pas à pas de Passbolt sur Linux (Debian)
Sommaire
I. Présentation
Ce tutoriel aborde l'installation du gestionnaire de mots de passe Passbolt sur une machine Linux, en l'occurrence sous Debian 13. Ce sera l'occasion d'auto-héberger Passbolt sur votre serveur, sans utiliser de conteneurs Docker.
À l'inverse, si vous préférez effectuer l'installation avec Docker, ou même sur un NAS Synology, consultez ces tutoriels :
II. Installer Passbolt sur Debian
Connectez-vous à votre serveur Linux en ligne de commande afin de procéder à l'installation. Vous pouvez utiliser le compte root ou un compte qui dispose de privilèges d'administration. Dans ce cas, pensez à ajouter le préfixe sudo aux commandes.
A. Prérequis
Nous aurons besoin de l'outil Curl pour récupérer deux fichiers sur le Web. Commencez par installer ce paquet qui n'est pas préinstallé sur Debian :
apt-get install curl
B. Installation du serveur Passbolt
Téléchargez le fichier passbolt-repo-setup.ce.sh, qui est un script Bash permettant d'ajouter le dépôt de Passbolt à votre machine. La seconde commande sert à télécharger un fichier texte contenant la valeur attendue pour le hash SHA512 du fichier (l'occasion de vérifier son intégrité).
curl -LO https://download.passbolt.com/ce/installer/passbolt-repo-setup.ce.sh
curl -LO https://github.com/passbolt/passbolt-dep-scripts/releases/latest/download/passbolt-ce-SHA512SUM.txt
Puis, lancez la commande ci-dessous pour vérifier l'intégrité du script téléchargé. Si c'est OK, le script se lancera et il va ajouter le dépôt de Passbolt à votre machine. Le cache des paquets sera mis à jour dans la foulée.
sha512sum -c passbolt-ce-SHA512SUM.txt && bash ./passbolt-repo-setup.ce.sh || echo "Bad checksum. Aborting" && rm -f passbolt-repo-setup.ce.sh

Quand c'est fait, lancez l'installation du serveur Passbolt grâce au paquet passbolt-ce-server.
apt install passbolt-ce-server
Validez l'installation des paquets via O puis Entrée.

Un assistant est là pour vous guider tout au long de l'installation de Passbolt. On vous invite à créer une base de données sur l'instance MySQL locale. Ici, c'est MariaDB Server qui a été déployé.

Indiquez le nom du compte d'administration, par défaut root avec MariaDB.

Comme par défaut il n'y a pas de mot de passe, appuyez directement sur Entrée.

Donnez un nom à l'utilisateur MariaDB qui sera utilisé exclusivement pour la base de données Passbolt. Ici, j'utilise la valeur pass_adm.

Spécifiez un mot de passe pour ce compte, une première fois, puis une seconde fois.

Donnez un nom à la base de données dédiée à Passbolt, ici je précise pass_db.

L'assistant nous invite à automatiser l'installation et la configuration de Nginx pour publier l'application. Choisissez "Oui" et validez.

Précisez le nom de domaine (ou l'adresse IP le cas échéant) que vous souhaitez utiliser pour accéder à votre instance. Pour ma part, je vais utiliser le nom passbolt.it-connect.local.

Une nouvelle étape se présente à l'écran. Cette fois-ci, il est question de la configuration du certificat TLS pour l'accès HTTPS à l'application. Vous avez trois choix :
nonepour effectuer la configuration plus tard, c'est ce que nous ferons pour l'instant.manuelpour spécifier le fichier de certificat et le fichier de clé privée dès maintenant.autopour effectuer une demande de certificat via Let's Encrypt (possible si le serveur est accessible depuis Internet).

Poursuivez jusqu'à la fin. Voilà, l'installation du serveur Passbolt est terminée !

Enfin, avant d'aller plus loin, prenons quelques instants pour effectuer la sécurisation de base de l'instance MariaDB. Exécutez la commande ci-dessous pour appeler le script livré avec MariaDB pour durcir la sécurité : définir un mot de passe root, supprimer les accès anonymes, etc.
mariadb-secure-installation

C. Ajouter un certificat TLS
Nous allons parler un peu plus en détail du certificat TLS. Compte tenu de la criticité de l'application Passbolt, je vous recommande fortement d'accéder en HTTPS à l'application. Néanmoins, le certificat peut être géré en amont via votre reverse proxy, si vous décidez d'en utiliser un pour publier l'application.
Dans cette démonstration, mon objectif est d'accéder à Passbolt via une URL interne (ce qui n'empêche pas les accès via VPN, par exemple) : https://passbolt.it-connect.local. Plutôt que d'utiliser un certificat auto-signé, je vais obtenir un certificat TLS depuis ma CA d'entreprise. La méthode utilisée est décrite dans cet article :
In fine, cela me permettra d'obtenir deux fichiers :
passbolt.it-connect.local.cer: fichier correspondant au certificat TLS.passbolt.it-connect.local.key: clé privée associée au certificat.
Ces fichiers doivent être stockés sur le serveur Passbolt. Vous pouvez effectuer la copie via scp ou WinSCP. En principe, la clé privée est déjà sur le serveur.
C:\temp> scp .\passbolt.it-connect.local.cer [email protected]:/home/flo
Les fichiers sont stockés dans le répertoire /home/flo du serveur Passbolt.
Lancez la commande suivante pour refaire la configuration de Nginx via la configuration du paquet Passbolt :
dpkg-reconfigure passbolt-ce-server
Passez la première étape, car vous ne souhaitez pas configurer une nouvelle base de données. Par contre, acceptez la configuration de Nginx, vous devriez alors obtenir cet écran que nous avons déjà eu précédemment. Indiquez le nom de domaine :

Pour la configuration du TLS, cette fois-ci, sélectionnez la méthode manual et validez.

Indiquez le chemin complet vers le fichier correspondant au certificat TLS.

Puis, indiquez le chemin complet vers le fichier correspondant à la clé privée.

Poursuivez jusqu'à la fin... Vous obtenez cet état :

Il ne reste plus qu'à recharger la configuration de Nginx :
systemctl reload nginx
La suite de la configuration s'effectuera directement depuis votre navigateur Web.
D. Configuration initiale du serveur
Ouvrez un navigateur Web et connectez-vous sur l'adresse de votre serveur Passbolt. Pour ma part, ce sera donc : https://passbolt.it-connect.local.

Un assistant de configuration est là pour nous permettre de finaliser l'installation de Passbolt. Cliquez sur "Start configuration".

Vous devez spécifier les informations de connexion à la base de données, à commencer par l'hôte (127.0.0.1 directement, ou localhost). Précisez aussi le nom du compte, le mot de passe et le nom de la base de données. Il s'agit des valeurs définies précédemment.

Une nouvelle paire de clés OpenPGP pour le serveur doit être créée. Donnez un nom pour le serveur et une adresse e-mail, puis validez.

Ensuite, précisez l'adresse complète pour accéder au serveur Passbolt. En principe, l'adresse est déjà renseignée. Vous pouvez aussi forcer le HTTPS en positionnant l'option "Force SSL?" sur "Yes".

À l'étape suivante, configurez les informations de connexion pour envoyer des e-mails : nom du serveur SMTP, adresse e-mail de l'expéditeur, nom du compte pour s'authentifier, etc. Ces informations sont spécifiques à votre environnement. Pensez à tester avec le bouton "Send test email" avant de poursuivre.

Puis, créez le compte administrateur de la plateforme, en précisant le prénom, le nom et l'adresse e-mail.

Cliquez sur "Next" et patientez pendant l'installation. C'est à ce moment-là que la base de données sera provisionnée et le serveur Passbolt réellement installé !
E. Créer le compte administrateur de Passbolt
Vous devez alors finaliser la création du compte administrateur, ce dernier sera le premier compte de votre instance (vérifiez vos e-mails). L'extension Passbolt devra être installée dans votre navigateur, car elle est obligatoire pour utiliser Passbolt et donc aller plus loin.

Vous devez spécifier le mot de passe maître de votre compte Passbolt. C'est la seule information que vous devez mémoriser et que vous ne devez surtout pas perdre !
- Ce mot de passe (passphrase) sera utilisé pour chiffrer la clé privée générée juste après.
Sinon, vous ne pourrez plus accéder aux données de votre compte, même si vous avez la main sur le serveur, cela ne changera rien. Indiquez un mot de passe robuste et poursuivez. Si vous utilisez un mot de passe vulnérable ayant déjà fait l'objet d'une fuite de données, ce sera précisé.

Un fichier nommé passbolt-recovery-kit.txt est téléchargé sur votre PC. Il correspond à votre clé privée PGP. Elle est personnelle, doit être conservée et sauvegardée, et surtout, elle ne doit pas être partagée.

Vous devez ensuite choisir une couleur et définir une valeur basée sur trois caractères. Ces informations sont spécifiques à cet appareil (je dirais même à ce navigateur) et elles seront visibles lors d'une reconnexion, sur ce même appareil, à votre compte Passbolt. En fait, si vous ne voyez pas cette couleur et ce texte lors de la connexion, c'est qu'il y a potentiellement un risque pour la sécurité (phishing, par exemple).

Voilà, vous avez désormais accès à votre compte Passbolt !
D'une part, vous pouvez ajouter de premières informations dans votre coffre-fort, et d'autre part, vous pouvez administrer votre organisation puisque c'est un compte d'administration.

Vous n'avez plus qu'à commencer à alimenter votre espace personnel ! Vous pouvez ajouter des informations manuellement ou les importer.
III. Conclusion
En suivant ce tutoriel, vous devriez être en mesure d'installer Passbolt sur une machine Linux, sans utiliser Docker. Pensez à la sécurité de l'application, en associant un WAF ou en déployant un outil comme Fail2ban ou CrowdSec.
Si vous souhaitez en savoir plus sur l'utilisation de Passbolt, consultez cet article :
Vous pouvez aussi consulter la documentation officielle :


Bonjour,
Merci pour ce tuto. Très bien fait comme à chaque fois. Si j’ai bien lu sur le site officiel, on ne peut pas le monter sur une machine virtuelle chez soi. C’est dommage de devoir dédié une machine physique pour ce service. J’ai peut être mal compris. Quand il parle d’autoriser en machine virtuelle pour les souscriptions c’est peut être en tant qu’appliance ?
Merci d’avance pour les précisions
Cordialement
Sauf erreur de ma part tu as mal compris en effet. Sur le site dans la rubrique « Hosting guide » dans le dossier « CE » tu vois justement toutes les distributions Linux supportés pour installer Passbolt, que ce soit Physique ou Virtuel et d’ailleurs il précise que Passbolt peut tourner sur 2 Core et 2Go de RAM, on ne fais plus des serveurs avec si peu de ressources (même les Raspberry pie en ont plus 🙂 ).
Ce que tu vois dans le Hosting Guide Pro Edition dans Virtual Appliance, c’est en fait un fichier OVA que Passbolt te fournis qui correspond à une VM préconfigurée de leur côté que tu as juste à lancer sur ton Hyperviseur (Hyper-V, ESXi, Proxmox, etc) comme ça tu n’as pas la procédure de déploiement à faire (en plus des fonctionnalités supplémentaires de l’édition PRO).
J’espère avoir répondu (et bien) à ta réponse.
Bonne jounée !
Bonjour Bastien,
Merci d’avoir pris le temps de parfaitement répondre à la question de Mugen. 🙂
Bonjour à la communauté,
Merci pour vos retours.
Bonne journée
Cordialement