La protección por contraseña es una medida de seguridad crucial para restringir el acceso a determinadas partes de tu sitio web o aplicación. Puedes implementar esta protección fácilmente en Apache2 utilizando un archivo .htaccess
en Ubuntu. En este artículo, te guiaré a través del proceso de configuración de la protección por contraseña en Apache2.
Paso 1: Crear el archivo de contraseñas
Lo primero que necesitas hacer es crear un archivo de contraseñas que contendrá los nombres de usuario y las contraseñas de los usuarios autorizados. Puedes usar el comando htpasswd
para crear este archivo y agregar usuarios. Por ejemplo, para crear un archivo llamado passwords
en el directorio /etc/apache2
, puedes usar el siguiente comando:
sudo htpasswd -c /etc/apache2/passwords username
Se te pedirá que ingreses y confirmes la contraseña para el usuario especificado. Si deseas agregar más usuarios después de crear el archivo, puedes omitir la opción -c
. Por ejemplo:
sudo htpasswd /etc/apache2/passwords otro_usuario
Paso 2: Crear el archivo .htaccess
Ahora, necesitas crear un archivo .htaccess
en el directorio que deseas proteger. Por ejemplo, si deseas proteger el directorio /var/www/html/privado
, puedes crear un archivo .htaccess
en ese directorio:
sudo nano /var/www/html/privado/.htaccess
Dentro del archivo .htaccess
, agrega las siguientes líneas:
AuthType Basic
AuthName "Área restringida"
AuthUserFile /etc/apache2/passwords
Require valid-user
Esto establece el tipo de autenticación como básico, define el nombre del área restringida que se mostrará al usuario al solicitar las credenciales, especifica la ubicación del archivo de contraseñas que creaste anteriormente y requiere que los usuarios sean válidos para acceder.
Paso 3: Habilitar el uso de .htaccess en Apache2
Por defecto, Apache2 en Ubuntu no permite el uso de archivos .htaccess
. Para habilitarlo, necesitas editar el archivo de configuración principal de Apache2. Abre el archivo apache2.conf
en un editor de texto:
sudo nano /etc/apache2/apache2.conf
Dentro del archivo, busca la sección <Directory /var/www/>
(o la ubicación de tu directorio raíz de Apache2) y cambia AllowOverride None
a AllowOverride All
. Debería verse así:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Guarda los cambios y cierra el archivo.
Paso 4: Reiniciar Apache2
Finalmente, reinicia Apache2 para aplicar los cambios en la configuración:
sudo systemctl restart apache2
Paso 5: Verificar la protección por contraseña
Ahora, cuando intentes acceder a cualquier archivo dentro del directorio protegido, se te pedirá que ingreses las credenciales que configuraste anteriormente. Una vez que ingreses las credenciales correctas, se te permitirá acceder al contenido protegido.
¡Listo! Has configurado correctamente la protección por contraseña en Apache2 utilizando .htaccess en Ubuntu. Esto proporciona una capa adicional de seguridad para tus archivos y directorios sensibles en tu servidor web.
Gracias por visitar mi blog de informática, mi nombre es Tomás y soy formador y desarrollador web. Si quiere usted dejarme alguna sugerencia, ayuda o quiere un servicio de formación estoy escuchando ofertas en tomas.gonzalez@infogonzalez.com, en Facebook a https://www.facebook.com/Infogonzalez estoy deseando escucharle. Su duda o sugerencia NO molesta.