Comment configurer le gestionnaire de mots de passe Teampass sur Debian 11

La plupart des utilisateurs ont beaucoup de comptes de médias sociaux, d’emails et d’autres comptes sur Internet. Il est très difficile pour quiconque de gérer tous ses comptes et mots de passe. C’est là que le gestionnaire de mots de passe entre en jeu. Team pass est un gestionnaire de mots de passe open-source qui t’aide à stocker et à gérer tous tes mots de passe depuis un emplacement central. C’est un gestionnaire de mots de passe collaboratif qui te permet de partager tous les mots de passe stockés avec les membres de l’équipe. Tu peux aussi définir des droits d’accès pour chaque utilisateur afin de les contrôler pour qu’ils n’accèdent qu’à un ensemble de données donné.

Dans ce tutoriel, je vais te montrer comment installer le gestionnaire de mots de passe Teampass avec Apache et Let’s Encrypt SSL sur Debian 11.

Conditions préalables

  • Un serveur fonctionnant sous Debian 11.
  • Un nom de domaine valide pointé avec l’IP de ton serveur.
  • Un mot de passe root est configuré sur le serveur.

Installer Apache, MariaDB et PHP

Tout d’abord, tu dois installer le serveur Web Apache, le serveur de base de données MariaDB, PHP et les autres extensions nécessaires sur ton serveur. Tu peux tous les installer en exécutant la commande suivante :

apt-get install apache2 apache2-utils mariadb-server mariadb-client php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline php7.4-bcmath php7.4-curl php7.4-fpm php7.4-gd php7.4-xml php7.4-mbstring -y

Une fois que tous les paquets sont installés, édite le fichier php.ini et modifie certains paramètres par défaut :

nano /etc/php/7.4/apache2/php.ini

Change les paramètres suivants :

max_execution_time = 60
date.timezone = Asia/Kolkata

Enregistre et ferme le fichier puis redémarre le service Apache pour appliquer les modifications :

systemctl restart apache2

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Crée une base de données pour Teampass

Teampass utilise une MariaDB comme backend de base de données. Tu devras donc créer une base de données et un utilisateur pour Teampass.

Tout d’abord, sécurise l’installation de MariaDB et définis un mot de passe root MariaDB à l’aide de la commande suivante :

mysql_secure_installation

Réponds à toutes les questions comme indiqué ci-dessous :

Enter current password for root (enter for none): 
Switch to unix_socket authentication [Y/n] n
Change the root password? [Y/n] Y
New password: 
Re-enter new password: 
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Une fois que tu as terminé, connecte-toi à MariaDB avec la commande suivante :

mysql -u root -p

Ensuite, crée une base de données et un utilisateur avec la commande suivante :

MariaDB [(none)]> create database teampass;
MariaDB [(none)]> grant all privileges on teampass.* to [email protected] identified by "password";

Ensuite, supprime les privilèges et sors de MariaDB avec la commande suivante :

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Installe Teampass

Ensuite, tu devras télécharger la dernière version de Teampass depuis le dépôt Git.

Tout d’abord, installe le paquet git à l’aide de la commande suivante :

apt-get install git -y

Ensuite, télécharge la dernière version de Teampass dans le répertoire racine du site Web d’Apache :

cd /var/www/html/
git clone https://github.com/nilsteampassnet/TeamPass.git

Ensuite, modifie la propriété et la permission à l’aide de la commande suivante :

chown -R www-data:www-data TeamPass
chmod -R 775 /var/www/html/TeamPass

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Créer un hôte virtuel Apache pour Teampass

Ensuite, tu devras créer un fichier de configuration d’hôte virtuel Apache pour héberger Teampass sur Internet.

nano /etc/apache2/sites-available/teampass.conf

Ajoute les lignes suivantes :

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/TeamPass   
     ServerName teampass.example.com

     <Directory /var/www/html/TeamPass>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/teampass_error.log
     CustomLog ${APACHE_LOG_DIR}/teampass_access.log combined

</VirtualHost>

Enregistre et ferme le fichier puis active l’hôte virtuel Apache et redémarre le service Apache pour appliquer les modifications :

a2ensite teampass
systemctl restart apache2

Tu peux aussi vérifier l’état d’Apache avec la commande suivante :

systemctl status apache2

Tu obtiendras la sortie suivante :

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2021-11-01 03:39:47 UTC; 5s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 20013 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 20017 (apache2)
      Tasks: 6 (limit: 2341)
     Memory: 14.1M
        CPU: 95ms
     CGroup: /system.slice/apache2.service
             ??20017 /usr/sbin/apache2 -k start
             ??20018 /usr/sbin/apache2 -k start
             ??20019 /usr/sbin/apache2 -k start
             ??20020 /usr/sbin/apache2 -k start
             ??20021 /usr/sbin/apache2 -k start
             ??20022 /usr/sbin/apache2 -k start

Nov 01 03:39:47 debian11 systemd[1]: Starting The Apache HTTP Server..

Accéder à l’interface Web de Teampass

Maintenant, ouvre ton navigateur Web et accède à l’interface Web Teampass en utilisant l’URL http://teampass.example.com. Tu devrais voir la page suivante :

Installateur TeamPass

Clique sur les boutons LAUNCH et NEXT. Tu devrais voir l’écran Vérifications du serveur :

Vérification du serveur

Indique ton chemin Teampass, l’URL de ton site Web et clique sur les boutons LAUNCH et NEXT. L’écran de connexion à la base de données devrait s’afficher :

Connexion à la base de données

Indique les détails de ta base de données et clique sur les boutons LAUNCH et NEXT. Tu devrais voir l’écran de préparation :

Préfixe du tableau

Indique ton mot de passe d’administrateur et clique sur les boutons LAUNCH et NEXT. Tu devrais voir l’écran de création de table :

Créer des tables de base de données

Clique sur les boutons LAUNCH et NEXT. Tu devrais voir l’écran de finalisation :

L'installation de TeamPass est terminée

Clique sur les boutons LAUNCH et NEXT. Une fois l’installation terminée avec succès, tu devrais voir l’écran suivant :

Redémarrage

Maintenant, clique sur le bouton Déplacer vers la page d’accueil. Tu seras redirigé vers l’écran de connexion TeamPass comme indiqué ci-dessous :

Conne Connecte-toi à TeamPass

Indique ton nom d’utilisateur comme admin et le mot de passe que tu as écrit pendant le processus d’installation, puis clique sur le bouton Connexion. Tu devrais voir le tableau de bord TeamPass sur l’écran suivant :

Tableau de bord TeamPass

Sécuriser TeamPass avec Let’s Encrypt SSL

Tout d’abord, tu dois installer le client Certbot Let’s Encrypt sur ton serveur. Il est utilisé pour installer et gérer le certificat SSL Let’s Encrypt pour ton domaine. Exécute la commande suivante pour installer le Certbot.

apt-get install python3-certbot-apache -y

Une fois que le Certbot est installé, exécute la commande suivante pour télécharger et installer le SSL Let’s Encrypt pour ton site Web :

certbot --apache -d teampass.example.com

Tu devras fournir ton adresse e-mail valide et accepter les conditions de service comme indiqué ci-dessous :

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for teampass.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/teampass-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/teampass-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/teampass-le-ssl.conf

Ensuite, tu devras choisir de rediriger ou non le trafic HTTP vers HTTPS comme indiqué ci-dessous :

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Tape 2 pour que toutes les demandes soient redirigées vers un accès HTTPS sécurisé et appuie sur Entrée pour installer le SSL Let’s Encrypt. Une fois l’installation terminée avec succès, tu devrais voir la sortie suivante :

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/teampass.conf to ssl vhost in /etc/apache2/sites-available/teampass-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://teampass.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=teampass.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/teampass.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/teampass.example.com/privkey.pem
   Your cert will expire on 2022-01-30. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

À ce stade, ton site Web est sécurisé avec Let’s Encrypt SSL. Tu peux maintenant y accéder en toute sécurité avec le protocole HTTPS.

Conclusion

Félicitations ! Tu as installé avec succès le gestionnaire de mots de passe Teampass avec Apache et Let’s Encrypt SSL sur Debian 11. Tu peux maintenant gérer toutes tes informations d’identification et les partager avec ton équipe depuis l’interface Web.

Vous aimerez aussi...