La maggior parte degli utenti ha molti social media, e-mail e altri account su Internet. È molto difficile per chiunque gestire tutti i propri account e password. È qui che entra in gioco il gestore delle password. Team Pass è un gestore di password open source che ti aiuta a archiviare e gestire tutte le tue password dalla posizione centrale. È un gestore di password collaborativo che ti consente di condividere tutte le password memorizzate con i membri del team. Puoi anche impostare i diritti di accesso per ogni utente per controllarli per accedere solo a un determinato set di dati.
In questo tutorial, ti mostrerò come installare il gestore password Teampass con Apache e Let's Encrypt SSL su Debian 11.
Prerequisiti
- Un server che esegue Debian 11.
- Un nome di dominio valido puntato all'IP del tuo server.
- Sul server è configurata una password di root.
Installa Apache, MariaDB e PHP
Innanzitutto, dovrai installare il server Web Apache, il server di database MariaDB, PHP e altre estensioni richieste sul tuo server. Puoi installarli tutti eseguendo il seguente comando:
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
Una volta installati tutti i pacchetti, modifica il file php.ini e cambia alcune impostazioni predefinite:
nano /etc/php/7.4/apache2/php.ini
Modifica le seguenti impostazioni:
max_execution_time = 60 date.timezone = Asia/Kolkata
Salva e chiudi il file, quindi riavvia il servizio Apache per applicare le modifiche:
systemctl restart apache2
Una volta terminato, puoi procedere al passaggio successivo.
Crea un database per Teampass
Teampass utilizza un MariaDB come backend del database, quindi dovrai creare un database e un utente per Teampass.
Per prima cosa, proteggi l'installazione di MariaDB e imposta una password root di MariaDB usando il seguente comando:
mysql_secure_installation
Rispondi a tutte le domande come mostrato di seguito:
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
Una volta terminato, connettiti a MariaDB con il seguente comando:
mysql -u root -p
Quindi, crea un database e un utente con il seguente comando:
MariaDB [(none)]> create database teampass;
MariaDB [(none)]> grant all privileges on teampass.* to [email protected] identified by "password";
Quindi, svuota i privilegi ed esci da MariaDB con il seguente comando:
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
Una volta terminato, puoi procedere al passaggio successivo.
Installa Teampass
Successivamente, dovrai scaricare l'ultima versione di Teampass dal repository Git.
Innanzitutto, installa il pacchetto git usando il seguente comando:
apt-get install git -y
Quindi, scarica l'ultima versione di Teampass nella directory principale web di Apache:
cd /var/www/html/
git clone https://github.com/nilsteampassnet/TeamPass.git
Quindi, modifica la proprietà e l'autorizzazione con il seguente comando:
chown -R www-data:www-data TeamPass
chmod -R 775 /var/www/html/TeamPass
Una volta terminato, puoi procedere al passaggio successivo.
Crea un host virtuale Apache per Teampass
Successivamente, dovrai creare un file di configurazione dell'host virtuale Apache per ospitare Teampass su Internet.
nano /etc/apache2/sites-available/teampass.conf
Aggiungi le seguenti righe:
<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>
Salva e chiudi il file, quindi abilita l'host virtuale Apache e riavvia il servizio Apache per applicare le modifiche:
a2ensite teampass
systemctl restart apache2
Puoi anche verificare lo stato di Apache con il seguente comando:
systemctl status apache2
Otterrai il seguente output:
? 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..
Accedi all'interfaccia Web di Teampass
Ora apri il tuo browser web e accedi all'interfaccia web di Teampass utilizzando l'URL http://teampass.example.com . Dovresti vedere la seguente pagina:
Fai clic su AVVIO e AVANTI pulsanti. Dovresti vedere la schermata dei controlli del server:
Fornisci il tuo percorso Teampass, l'URL del sito web e fai clic su AVVIA e AVANTI pulsanti. Dovresti vedere la schermata di connessione al database:
Fornisci i dettagli del tuo database e fai clic su AVVIA e AVANTI pulsanti. Dovresti vedere la schermata di preparazione:
Fornisci la tua password di amministratore e fai clic su AVVIA e AVANTI pulsanti. Dovresti vedere la schermata di creazione della tabella:
Fai clic su AVVIO e AVANTI pulsanti. Dovresti vedere la schermata di finalizzazione:
Fai clic su AVVIO e AVANTI pulsanti. Una volta che l'installazione è stata completata con successo, dovresti vedere la seguente schermata:
Ora, fai clic su Sposta alla home page pulsante. Verrai reindirizzato alla schermata di accesso di TeamPass come mostrato di seguito:
Fornisci il tuo nome utente come amministratore e la password che hai scritto durante il processo di installazione e fai clic su Accedi pulsante. Dovresti vedere la dashboard di TeamPass nella schermata seguente:
Teampass sicuro con Let's Encrypt SSL
Innanzitutto, dovrai installare il client Certbot Let's Encrypt sul tuo server. Viene utilizzato per installare e gestire il certificato SSL Let's Encrypt per il tuo dominio. Esegui il comando seguente per installare Certbot.
apt-get install python3-certbot-apache -y
Una volta installato Certbot, esegui il seguente comando per scaricare e installare Let's Encrypt SSL per il tuo sito web:
certbot --apache -d teampass.example.com
Dovrai fornire il tuo indirizzo email valido e accettare i termini del servizio come mostrato di seguito:
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
Successivamente, dovrai selezionare se reindirizzare o meno il traffico HTTP su HTTPS come mostrato di seguito:
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
Digita 2 per fare in modo che tutte le richieste vengano reindirizzate per proteggere l'accesso HTTPS e premi Invio per installare Let's Encrypt SSL. Una volta che l'installazione è stata completata con successo, dovresti vedere il seguente output:
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
A questo punto, il tuo sito web è protetto con Let's Encrypt SSL. Ora puoi accedervi in modo sicuro con il protocollo HTTPS.
Conclusione
Congratulazioni! hai installato con successo il gestore password Teampass con Apache e Let's Encrypt SSL su Debian 11. Ora puoi gestire tutte le tue credenziali e condividerle con il tuo team dall'interfaccia basata sul web.