Proteger directorios con contraseña mediante .htaccess
Podemos proteger directorios de nuestro alojamiento contratado de forma sencilla mediante archivos .htaccess y .htpasswd editándolos con el bloc de notas o equivalentes.
Antes de empezar
Para crear los archivos .htaccess y .htpasswd utilizaremos el bloc de notas o equivalentes, utilizando el Word no funcionaría pues no se trata de un editor de texto plano. Puede que ya dispongas de un archivo .htaccess en el servidor, esto es debido a que sirve para configurar algunos parámetros de tu web. En caso de no disponer de ningún archivo .htaccess en el servidor simplemente tendremos que crear un nuevo archivo de texto y renombrarlo a .htaccess (es posible que en Windows no puedas editar el nombre pues empieza con un punto, deberás subir el archivo al servidor y renombrarlo allí, mientras puedes llamarlo htaccess.txt).
El archivo .htpasswd contiene los nombres de usuario y contraseña, por lo que deberemos guardarlo en la raíz del alojamiento (fuera de la carpeta “public”).
Editando el .htaccess
1- Crearemos un archivo de texto con nuestro editor de texto plano y pegaremos lo siguiente:
AuthName "Restricted Area"
AuthType Basic
AuthUserFile /var/www/TUDOMINIO.COM/.htpasswd
AuthGroupFile /dev/null
require valid-user
Aquí deberemos modificar el texto “TUDOMINIO.COM” por nuestro dominio, recuerda escribirlo en minúsculas.
- Guardamos el archivo, lo subimos a la carpeta que deseamos proteger en el servidor mediante nuestro cliente FTP (por ejemplo FileZilla) y lo renombraremos directamente en el servidor a “.htaccess” (sin comillas).
Editando el .htpasswd
- Creamos nuevamente un archivo de texto con nuestro editor de texto plano y hacemos lo siguiente:
Vamos a http://www.htaccesstools.com/htpasswd-generator/ e introducimos el nombre de usuario que deseamos crear y la contraseña que deberá tener, luego pulsamos sobre “Submit-it”. En la siguiente pantalla veremos una línea como la siguiente:
nombredeusuario:kJ7yup63GXWXk
Como podrás comprobar, en la parte izquierda de la línea aparece el nombre de usuario que hayamos indicado y tras los dos puntos vemos la contraseña, pero esta se encuentra encriptada, de esta manera en caso de que consiguieran acceso al archivo .htpasswd no les sería fácil recuperar la contraseña original. Podemos crear varias cuentas de usuario, simplemente deberás añadir uno por línea.
- Ahora simplemente deberemos copiar la línea que la web nos ha creado y pegarla en el interior del archivo .htpasswd. Procedemos a guardar el archivo y subirlo también al servidor pero deberemos guardarlo en la raíz del alojamiento, es decir, fuera de la carpeta “public”, de esta manera sólo el archivo .htaccess tendrá acceso al archivo .htpasswd. Una vez subido el archivo lo renombraremos a “.htpasswd” (sin comillas).
Listo, ya tenemos acceso mediante usuario y contraseña en nuestra web.
Nota: Ten en cuenta que para poder utilizar esta funcionalidad necesitarás disponer como mínimo de un plan de Alojamiento Básico.