GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer le gestionnaire de mots de passe auto-hébergé Passbolt sur CentOS 8

Passbolt est un gestionnaire de mots de passe open source qui vous permet de stocker et de partager votre mot de passe en toute sécurité. Il est conçu pour les petites et moyennes entreprises pour stocker et partager les identifiants de connexion entre les membres de l'équipe. Il est auto-hébergé et disponible dans les éditions communautaires et par abonnement.

Dans ce tutoriel, nous allons vous montrer comment installer le gestionnaire de mots de passe Passbolt avec Nginx et Let's Encrypt SSL sur CentOS 8.

Prérequis

  • Un serveur exécutant CentOS 8.
  • Un nom de domaine valide pointé vers l'adresse IP de votre serveur.
  • Un mot de passe root est configuré sur votre serveur.

Installer le serveur LEMP

Tout d'abord, installez le serveur de base de données Nginx et MariaDB à l'aide de la commande suivante :

dnf installer nginx mariadb-server -y

Ensuite, vous devrez installer la dernière version de PHP et les autres extensions PHP requises sur votre serveur. Par défaut, la dernière version de PHP n'est pas disponible dans le dépôt par défaut CentOS. Vous devrez donc ajouter EPEL et REMI repo à votre système.

Vous pouvez ajouter les deux dépôts avec la commande suivante :

installation dnf epel-release -y
installation dnf https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y

Ensuite, désactivez le référentiel PHP par défaut et activez le référentiel REMI avec la commande suivante :

module dnf réinitialiser php
module dnf activer php:remi-7.4

Ensuite, installez PHP avec les autres dépendances requises en exécutant la commande suivante :

dnf install php php-fpm php-intl php-gd php-mysqli php-json php-pear php-devel php-mbstring php-fpm git make unzip -y

Après avoir installé tous les packages, vous devrez modifier le fichier de configuration PHP-FPM et changer l'utilisateur et le groupe en Nginx.

nano /etc/php-fpm.d/www.conf

Modifiez les lignes suivantes :

utilisateur =nginxgroup =nginx

Enregistrez et fermez le fichier puis changez le propriétaire du répertoire de session :

chgrp nginx /var/lib/php/session

Ensuite, démarrez les services Nginx, MariaDB et PHP-FPM et autorisez-les à démarrer au redémarrage du système avec la commande suivante :

systemctl start mariadb nginx php-fpm
systemctl enable mariadb nginx php-fpm

Ensuite, vous devrez installer l'extension GNUPG sur votre système. Vous pouvez l'installer en exécutant les commandes suivantes :

dnf config-manager --set-enabled powertools
dnf install gpgme-devel
pecl install gnupg
echo "extension=gnupg.so"> /etc/php.d/gnupg .ini

Ensuite, redémarrez le service PHP-FPM pour appliquer les modifications :

systemctl redémarrer php-fpm

Installer Composer

Composer est un gestionnaire de dépendances pour PHP. Vous devrez l'installer sur votre système.

Tout d'abord, téléchargez le fichier d'installation de Composer avec la commande suivante :

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

Ensuite, installez le Composer avec la commande suivante :

php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Vous devriez obtenir le résultat suivant :

Tous les paramètres sont corrects pour l'utilisation de ComposerDownloading...Composer (version 2.0.11) installé avec succès sur :/usr/local/bin/composerUtilisez-le :php /usr/local/bin/composer

Ensuite, vérifiez la version de Composer avec la commande suivante :

compositeur -V

Vous devriez obtenir le résultat suivant :

Composer version 2.0.11 2021-02-24 14:57:23

Créer une base de données

Ensuite, vous devrez créer une base de données et un utilisateur pour Passbolt.

Tout d'abord, connectez-vous à MariaDB avec la commande suivante :

mysql

Une fois connecté, créez une base de données et un utilisateur avec la commande suivante :

MariaDB [(none)]> CREATE DATABASE passbolt DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MariaDB [(none)]> GRANT ALL ON passbolt.* TO 'passbolt'@'localhost' IDENTIFIED BY 'password';

Ensuite, videz les privilèges et quittez MariaDB avec la commande suivante :

MariaDB [(none)]> FLUSH PRIVILEGES ;
MariaDB [(none)]> EXIT ;

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Installer et configurer Passbolt

Tout d'abord, changez le répertoire en répertoire racine Web Nginx et téléchargez la dernière version de Passbolt avec la commande suivante :

cd /var/www
clone git https://github.com/passbolt/passbolt_api.git passbolt

Une fois le téléchargement terminé, changez le répertoire en passbolt et installez toutes les dépendances requises avec la commande suivante :

cd passbolt
composer install --no-dev

Ensuite, vous devrez installer haveged pour générer la clé GPG. Tout d'abord, installez le haveged avec la commande suivante :

dnf install haveged

Ensuite, démarrez le service haveged avec la commande suivante :
systemctl start haveged

Ensuite, générez la clé GPG avec la commande suivante :

gpg --full-generate-key

Répondez soigneusement à toutes les questions. Laissez le champ du mot de passe vide lorsque vous demandez de définir un mot de passe :

gpg (GnuPG) 2.2.9 ; Copyright (C) 2018 Free Software Foundation, Inc. Il s'agit d'un logiciel gratuit :vous êtes libre de le modifier et de le redistribuer. Il n'y a AUCUNE GARANTIE, dans la mesure permise par la loi. '/root/.gnupg/pubring.kbx' crééVeuillez sélectionner le type de clé que vous souhaitez :(1) RSA et RSA (par défaut) (2) DSA et Elgamal (3) DSA (signe uniquement) (4) RSA (signe uniquement )Votre sélection? Les clés RSA peuvent avoir une longueur comprise entre 1 024 et 4 096 bits. Quelle taille de clé souhaitez-vous ? (2048) La taille de clé demandée est de 2048 bitsVeuillez spécifier la durée de validité de la clé. 0 =la clé n'expire pas  =la clé expire dans n jours w =la clé expire dans n semaines m =la clé expire dans n mois y =la clé expire dans n ansLa clé est-elle valide pour ? (0) La clé n'expire pas du toutEst-ce correct ? (o/N) yGnuPG doit créer un ID utilisateur pour identifier votre clé.Nom réel :HiteshAdresse e-mail :[email protected]Commentaire : BienvenueVous avez sélectionné cet ID UTILISATEUR :"Hitesh (Bienvenue) <[email protected]>"Modifier ( N)ame, (C)omment, (E)mail ou (O)kay/(Q)uit ? ONous devons générer beaucoup d'octets aléatoires. C'est une bonne idée d'effectuer une autre action (taper au clavier, déplacer la souris, utiliser les disques) pendant la génération principale; cela donne au générateur de nombres aléatoires une meilleure chance de gagner suffisamment d'entropie. Nous devons générer beaucoup d'octets aléatoires. C'est une bonne idée d'effectuer une autre action (taper au clavier, déplacer la souris, utiliser les disques) pendant la génération principale; cela donne au générateur de nombres aléatoires une meilleure chance de gagner suffisamment d'entropie.gpg:/root/.gnupg/trustdb.gpg:trustdb createdgpg:key 1A0448FECA43E1F9 marqué comme finalement trustedgpg:directory '/root/.gnupg/openpgp-revocs.d' createdgpg :Certificat de révocation stocké comme '/root/.gnupg/openpgp-revocs.d/40733a5076d11e86ef2fe5b51a0448feca43e1f9.rev'public et Secret Key créé et signé.pub rsa2048 2021-03-12 [SC] 40733A5076D1E866D>sous rsa2048 2021-03-12 [E]    

Remarque :Mémorisez la clé secrète générée ci-dessus.

Ensuite, exportez la clé secrète vers le fichier serverkey_private.asc et serverkey.asc avec la commande suivante :

gpg --armor --export-secret-keys [protégé par e-mail]> /var/www/passbolt/config/gpg/serverkey_private.asc
gpg --armor --export [protégé par e-mail]> / var/www/passbolt/config/gpg/serverkey.asc

Ensuite, définissez la propriété appropriée sur le répertoire passbolt :

chown -R nginx:nginx /var/www/passbolt

Ensuite, initialisez le trousseau de clés Nginx avec la commande suivante :

sudo su -s /bin/bash -c "gpg --list-keys" nginx

Sortie :

gpg :répertoire '/var/lib/nginx/.gnupg' créégpg :boîte à clés '/var/lib/nginx/.gnupg/pubring.kbx' créégpg :/var/lib/nginx/.gnupg/trustdb.gpg :trustdb créé

Ensuite, renommez le fichier de configuration par défaut de Passbolt :

cp config/passbolt.default.php config/passbolt.php

Ensuite, modifiez le fichier passbolt.php et définissez les paramètres de votre base de données et l'URL de base :

nanoconfig/passbolt.php

Modifiez les lignes suivantes :

 'fullBaseUrl' => 'https://passbolt.linuxbuz.com', // Configuration de la base de données. 'Datasources' => [ 'default' => [ 'host' => 'localhost', //'port' => 'non_standard_port_number', 'username' => 'passbolt', 'password' => 'password', 'database' => 'passbolt', 'serverKey' => [ // Empreinte de la clé privée du serveur. 'empreinte' => '40733A5076D11E86EF2FE5B51A0448FECA43E1F9', 'public' => CONFIG . 'gpg' . DS. 'serverkey.asc', 'private' => CONFIG . 'gpg' . DS. 'serverkey_private.asc',

Enregistrez et fermez le fichier puis installez le Passbolt avec la commande suivante :

cd /var/www/passbolt
sudo su -s /bin/bash -c "./bin/cake passbolt install --no-admin" nginx

Vous devriez obtenir le résultat suivant :

Tout est terminé. A pris 0.9595sImporter la clé privée du serveur dans le trousseau de clés---------------------------------------- -----------------------Importation de /var/www/passbolt/config/gpg/serverkey_private.ascKeyring init OKPassbolt installation réussie ! Profitez! ?

Configurer Nginx pour Passbolt

Ensuite, vous devrez créer un fichier de configuration Nginx pour Passbolt. Vous pouvez le créer avec la commande suivante :

nano /etc/nginx/conf.d/passbolt.conf

Ajoutez les lignes suivantes :

serveur { écoute 80 ; nom_serveur passbolt.linuxbuz.com ; racine /var/www/passbolt ; location / { try_files $uri $uri/ /index.php?$args; index index.php; } emplacement ~ \.php$ { fastcgi_index index.php; fastcgi_pass unix:/var/run/php-fpm/www.sock; fastcgi_split_path_info ^(.+\.php)(.+)$; inclure fastcgi_params ; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; fastcgi_param SERVER_NAME $http_host ; } emplacement ~* \.(jpe?g|woff|woff2|ttf|gif|png|bmp|ico|css|js|json|pdf|zip|htm|html|docx?|xlsx?|pptx?|txt| wav|swf|svg|avi|mp\d)$ { access_log off; log_not_found désactivé ; try_files $uri /webroot/$uri /index.php?$args; }}

Enregistrez et fermez le fichier puis vérifiez le Nginx pour toute erreur de syntaxe :

nginx -t

Sortie :

nginx :la syntaxe du fichier de configuration /etc/nginx/nginx.conf est oknginx :le test du fichier de configuration /etc/nginx/nginx.conf est réussi

Ensuite, redémarrez le Nginx pour appliquer les modifications :

systemctl redémarrer nginx

Sécuriser Passbolt avec Let's Encrypt SSL

Ensuite, vous devrez installer le client Certbot pour installer Let's Encrypt SSL pour Passbolt. Vous pouvez l'installer avec la commande suivante :

installation dnf permet de chiffrer python3-certbot-nginx

Ensuite, obtenez et installez un certificat SSL pour votre domaine Lets avec la commande suivante :

certbot --nginx -d passbolt.linuxbuz.com

Il vous sera demandé de fournir votre adresse e-mail et d'accepter les conditions d'utilisation :

Enregistrement du journal de débogage dans /var/log/letsencrypt/letsencrypt.logPlugins sélectionnés :authentificateur nginx, installateur nginxEntrez l'adresse e-mail (utilisée pour les renouvellements urgents et les avis de sécurité) (Entrez 'c' pour annuler) :[email protected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Veuillez lire les conditions d'utilisation sur https://letsencrypt. org/documents/LE-SA-v1.2-15-novembre-2017.pdf. Vous devez accepter afin de vous inscrire auprès du serveur ACME. Êtes-vous d'accord ? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Oui)oui/( N)o:O- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Seriez-vous prêt, une fois votre premier certificat délivré avec succès, partager votre adresse e-mail avec l'Electronic Frontier Foundation, partenaire fondateur du projet Let's Encrypt et l'organisation à but non lucratif qui développe Certbot ? Nous aimerions vous envoyer un e-mail sur notre travail de cryptage du Web, les actualités de l'EFF, les campagnes et les moyens de soutenir la liberté numérique.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(O)es/(N)o :compte Y enregistré. linuxbuz.comEn attente de vérification...Résolution des problèmesDéploiement d'un certificat sur VirtualHost /etc/nginx/conf.d/passbolt.confRedirection de tout le trafic sur le port 80 vers SSL dans /etc/nginx/conf.d/passbolt.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Toutes nos félicitations! Vous avez activé avec succès https://passbolt.linuxbuz.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Abonnez-vous à la liste de diffusion EFF (email :[email protected]). REMARQUES IMPORTANTES :- Félicitations ! Votre certificat et votre chaîne ont été enregistrés sur :/etc/letsencrypt/live/passbolt.linuxbuz.com/fullchain.pem Votre fichier de clé a été enregistré sur :/etc/letsencrypt/live/passbolt.linuxbuz.com/privkey.pem Votre certificat expirera le 2021-06-09. Pour obtenir une nouvelle version ou une version modifiée de ce certificat à l'avenir, exécutez simplement certbot à nouveau avec l'option "certonly". Pour renouveler *tous* vos certificats de manière non interactive, exécutez "certbot renouveler" - Si vous aimez Certbot, veuillez envisager de soutenir notre travail en :faisant un don à ISRG / Let's Encrypt :https://letsencrypt.org/donate faisant un don à EFF :https://eff.org/donate-le

Enregistrer un utilisateur pour Passbolt

Ensuite, vous devrez enregistrer un utilisateur pour Passbolt. Vous pouvez le faire avec la commande suivante :

cd /var/www/passbolt
sudo su -s /bin/bash -c "./bin/cake passbolt register_user -u [email protected] -f howtoforge -l Demo -r admin" nginx

Vous devriez obtenir le résultat suivant :

 ____ __ ____ / __ \____ _____ ____/ /_ ____ / / /_ / /_/ / __ `/ ___/ ___/ __ \/ __ \/ / __/ / ____/ /_/ (__ | __ ) /_/ / /_/ / / / /_/ \__,_/____/____/_.___/\____/_/\__/ Gestionnaire de mots de passe open source pour les équipes-------- -------------------------------------------------- -----Utilisateur enregistré avec succès. Pour commencer l'enregistrement, suivez le lien fourni dans votre boîte aux lettres ou ici :https://passbolt.linuxbuz.com/setup/install/f81227bc-b0b6-44b5-99a7-6b490a4ba262/5a112de0-6ca4- 4e1b-97c8-26453ef3828b

Vous pouvez utiliser le lien ci-dessus pour accéder au Paabolt.

Configurer le pare-feu

Ensuite, vous devrez autoriser les ports 80 et 443 à travers le pare-feu. Vous pouvez le faire avec la commande suivante :

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp

Maintenant, rechargez le pare-feu pour appliquer les modifications :

firewall-cmd --reload

Accéder à l'interface utilisateur Web Passbolt

Maintenant, ouvrez votre navigateur Web et tapez l'URL https://passbolt.linuxbuz.com/setup/install/f81227bc-b0b6-44b5-99a7-6b490a4ba262/5a112de0-6ca4-4e1b-97c8-26453ef3828b . Vous serez redirigé vers la page suivante :

Ici, vous devrez télécharger les extensions de navigateur Passbolt et actualiser la page une fois installée. Vous devriez voir la page suivante :

Spécifiez le mot de passe sécurisé et cliquez sur Suivant bouton. Vous devriez voir la page suivante :

Choisissez une couleur, entrez un jeton de sécurité et cliquez sur Suivant bouton. Vous serez redirigé vers le tableau de bord Passbolt sur la page suivante :

Conclusion

Toutes nos félicitations! vous avez installé avec succès le gestionnaire de mots de passe Passbolt avec Nginx et Let's Encrypt SSL sur CentOS 8. Vous pouvez maintenant implémenter Passbolt dans votre organisation et commencer à stocker et partager les informations d'identification de connexion entre les membres de l'équipe en toute sécurité.


Cent OS
  1. Comment installer MongoDB sur CentOS 8

  2. Comment installer Apache Cassandra sur CentOS 7

  3. Comment installer le serveur Redis sur CentOS 8

  4. Comment installer XWiki sur CentOS 7

  5. Comment installer Open Classifieds sur CentOS 7

Comment installer le raccourcisseur d'URL auto-hébergé YOURLS sur CentOS 8

Comment installer WebERP sur CentOS 8

Comment installer le gestionnaire de mots de passe auto-hébergé Passbolt sur Debian 11

Comment installer XAMPP sur CentOS 8

Comment installer Graylog sur CentOS 7

Comment installer Passbolt Password Manager sur Ubuntu 18.04