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 teampass@localhost 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 :
Clique sur les boutons LAUNCH et NEXT. Tu devrais voir l’écran Vérifications 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 :
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 :
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 :
Clique sur les boutons LAUNCH et NEXT. Tu devrais voir l’écran de finalisation :
Clique sur les boutons LAUNCH et NEXT. Une fois l’installation terminée avec succès, tu devrais voir l’écran suivant :
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 :
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 :
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.