La mayoría de los usuarios tienen muchas redes sociales, correo electrónico y otras cuentas en Internet. Es muy difícil para cualquiera administrar todas sus cuentas y contraseñas. Aquí es donde el administrador de contraseñas entra en escena. Team pass es un administrador de contraseñas de código abierto que lo ayuda a almacenar y administrar todas sus contraseñas desde la ubicación central. Es un administrador de contraseñas colaborativo que le permite compartir todas las contraseñas almacenadas con los miembros del equipo. También puede establecer derechos de acceso para cada usuario para controlarlos y acceder solo a un conjunto determinado de datos.
En este tutorial, le mostraré cómo instalar el administrador de contraseñas de Teampass con Apache y Let's Encrypt SSL en Debian 11.
Requisitos
- Un servidor que ejecuta Debian 11.
- Un nombre de dominio válido apuntado con la IP de su servidor.
- Se configura una contraseña raíz en el servidor.
Instalar Apache, MariaDB y PHP
Primero, deberá instalar el servidor web Apache, el servidor de la base de datos MariaDB, PHP y otras extensiones necesarias en su servidor. Puede instalarlos todos ejecutando el siguiente 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 vez que todos los paquetes estén instalados, edite el archivo php.ini y cambie algunas configuraciones predeterminadas:
nano /etc/php/7.4/apache2/php.ini
Cambie las siguientes configuraciones:
max_execution_time = 60 date.timezone = Asia/Kolkata
Guarde y cierre el archivo, luego reinicie el servicio Apache para aplicar los cambios:
systemctl restart apache2
Una vez que haya terminado, puede continuar con el siguiente paso.
Crear una base de datos para Teampass
Teampass utiliza MariaDB como base de datos, por lo que deberá crear una base de datos y un usuario para Teampass.
Primero, asegure la instalación de MariaDB y configure una contraseña raíz de MariaDB usando el siguiente comando:
mysql_secure_installation
Responda todas las preguntas como se muestra a continuación:
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 vez que haya terminado, conéctese a MariaDB con el siguiente comando:
mysql -u root -p
A continuación, cree una base de datos y un usuario con el siguiente comando:
MariaDB [(none)]> create database teampass;
MariaDB [(none)]> grant all privileges on teampass.* to [email protected] identified by "password";
A continuación, elimine los privilegios y salga de MariaDB con el siguiente comando:
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
Una vez que haya terminado, puede continuar con el siguiente paso.
Instalar Teampass
A continuación, deberá descargar la última versión de Teampass desde el repositorio de Git.
Primero, instale el paquete git usando el siguiente comando:
apt-get install git -y
A continuación, descargue la última versión de Teampass en el directorio raíz web de Apache:
cd /var/www/html/
git clone https://github.com/nilsteampassnet/TeamPass.git
A continuación, cambie la propiedad y el permiso con el siguiente comando:
chown -R www-data:www-data TeamPass
chmod -R 775 /var/www/html/TeamPass
Una vez que haya terminado, puede continuar con el siguiente paso.
Crear un servidor virtual Apache para Teampass
A continuación, deberá crear un archivo de configuración de host virtual de Apache para alojar Teampass en Internet.
nano /etc/apache2/sites-available/teampass.conf
Agregue las siguientes líneas:
<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>
Guarde y cierre el archivo, luego habilite el host virtual Apache y reinicie el servicio Apache para aplicar los cambios:
a2ensite teampass
systemctl restart apache2
También puede verificar el estado de Apache con el siguiente comando:
systemctl status apache2
Obtendrá el siguiente resultado:
? 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..
Acceder a la interfaz web de Teampass
Ahora, abra su navegador web y acceda a la interfaz web de Teampass usando la URL http://teampass.example.com . Debería ver la siguiente página:
Haga clic en LANZAR y SIGUIENTE botones. Debería ver la pantalla de comprobación del servidor:
Proporcione su ruta de Teampass, la URL del sitio web y haga clic en LANZAR y SIGUIENTE botones. Debería ver la pantalla de conexión de la base de datos:
Proporcione los detalles de su base de datos y haga clic en INICIAR y SIGUIENTE botones. Debería ver la pantalla de preparación:
Proporcione su contraseña de administrador y haga clic en INICIAR y SIGUIENTE botones. Debería ver la pantalla de creación de tablas:
Haga clic en LANZAR y SIGUIENTE botones. Debería ver la pantalla Finalización:
Haga clic en LANZAR y SIGUIENTE botones. Una vez que la instalación haya finalizado con éxito, debería ver la siguiente pantalla:
Ahora, haga clic en Mover a la página de inicio botón. Será redirigido a la pantalla de inicio de sesión de TeamPass como se muestra a continuación:
Proporcione su nombre de usuario como administrador y la contraseña que escribió durante el proceso de instalación, y haga clic en Iniciar sesión botón. Debería ver el panel de TeamPass en la siguiente pantalla:
Asegurar Teampass con Let's Encrypt SSL
Primero, deberá instalar el cliente Certbot Let's Encrypt en su servidor. Se utiliza para instalar y administrar el certificado SSL de Let's Encrypt para su dominio. Ejecute el siguiente comando para instalar Certbot.
apt-get install python3-certbot-apache -y
Una vez que Certbot esté instalado, ejecute el siguiente comando para descargar e instalar Let's Encrypt SSL para su sitio web:
certbot --apache -d teampass.example.com
Deberá proporcionar su dirección de correo electrónico válida y aceptar el término de servicio como se muestra a continuación:
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
A continuación, deberá seleccionar si desea redirigir o no el tráfico HTTP a HTTPS, como se muestra a continuación:
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
Escriba 2 para hacer que todas las solicitudes se redirijan al acceso HTTPS seguro y presione Entrar para instalar Let's Encrypt SSL. Una vez que la instalación haya finalizado con éxito, debería ver el siguiente resultado:
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
En este punto, su sitio web está protegido con Let's Encrypt SSL. Ahora puede acceder a él de forma segura con el protocolo HTTPS.
Conclusión
¡Felicidades! Ha instalado correctamente el administrador de contraseñas de Teampass con Apache y Let's Encrypt SSL en Debian 11. Ahora puede administrar todas sus credenciales y compartirlas con su equipo desde la interfaz basada en web.