Muchos servicios de alojamiento web permiten que pongamos una contraseña para impedir el acceso a determinadas carpetas o ficheros dentro de nuestroas webs.
Esta práctica es de mucha utilidad por ejemplo cuando estamos desarrollando un nuevo sitio y no queremos tener aún visitas o para proteger una réplica online de nuestras páginas que utilizamos como entorno de desarrollo.
Si nuestro servicio de hosting no nos proporciona las herramientas necesarias para proteger directorios, podemos hacerlo de forma manual fácilmente mediante la combinación de los ficheros .htaccess y .htpasswd.
Generando un archivo de contraseña (.htpasswd)
Este archivo recoge mediante un formato de pares clave-valor, los nombres de usuarios que tienen acceso al directorio protegido junto a su contraseña. Los valores se separan mediante dos puntos (:) mientras que cada registro, ocupa una nueva línea:
etnassoft:z7dKwKS8ER13A guestuser:o9cIUE.l.Q2aU |
Como podemos observar, tenemos el nombre de usuario y a continuación la contraseña encriptada. Si necesitamos un servicio que haga este trabajo por nosotros, podemos recurrir a alguna de las siguientes direcciones web:
http://www.4webhelp.net/us/password.php
http://shop.alterlinks.com/htpasswd/htpasswd.php
Una vez que tengamos listo nuestro archivo, lo guardamos y lo subimos al servidor con el nombre .htpasswd anotando cuidadosamente la ruta.
Modificando el .htaccess para proteger el directorio
Solo nos queda el incluir el anterior fichero en el .htaccess para que nuestros directorios o ficheros queden protegidos. Para eso, solo tenemos que buscar el archivo dentro de la carpeta que nos interese restringir y editarlo:
AuthName "Web Protected!" AuthType Basic AuthUserFile /home/username/.htpasswd Require valid-USER |
NOTA: Si queremos proteger todo el sitio, modificamos el .htaccess que se encuentra en el raíz. Si no tenemos un .htaccess, lo creamos con cualquier editor de texto plano tipo Notepad y lo subimos sin más.
Cambiamos el AuthName con el mensaje que queramos que le aparezca al usuario y el AuthUserFile con la ruta completa del .htpasswd que hemos creado.
Y eso es todo; cada vez que intentemos acceder a la web, se nos pedirá nombre de usuario y contraseña.
Una forma fácil y segura de proteger contenido confidencial o privado de visitas inesperadas.
Muy bueno el auto, pero yo quisiera saber lo siguiente.
Cuando me sale el cartel que tenemos que poner en cada sitio, ya que la clave es encintada.
Me lo podrías explicar ya que es mi prime .htaccess y .htpaswoord
Discúlpame pero no he entendido tu mensaje… ¿usas un corrector ortográfico agresivo?