Buscar


imprimir pdf

¿Cómo proteger el acceso a un directorio por autentificación?


Introducción

Puede hacerlo mediante un fichero de contraseñas .htpasswd y un fichero .htaccess situado en el directorio a proteger.

Antes de proceder, es necesario hacer algunas precisiones sobre los ficheros .htaccess. Antes de nada, hay que saber que se trata de ficheros particulares para el servidor web, y que estos ficheros NO aparecen en el directorio correspondiente si un internauta hace un acceso a un directorio listable (que no contiene página index y que permite el listado de ficheros).

A continuación, hay que tener en cuenta que la configuración indicada por un fichero .htaccess se aplica úlicamente al directorio donde está instalado el fichero, así como a todos los subdirectorios.


Procedimiento a seguir

Crear el fichero de contraseñas

En un primer momento, hay que crear el fichero que contendrá la lista de usuarios con permiso de conexión, y la contraseña asociada. En general, creamos para ello un fichero .htpasswd que será utilizado por el fichero .htaccess.

Se trata de un fichero de texto plano, al interior del cual están indicados los nombres de los usuarios y su contraseña codificada. Puede encontrar en nuestro sitio una página que le permitirá codificar una contraseña:

http://www.ovh.es/soporte/herramientas/crypt_password.pl

Tras haber rellenado los dos primeros campos (puede escoger la clave de dos letras que prefiera) y hacer clic sobre "codificar", recuperará la forma codificada de la contraseña en el campo "Contraseña codificada".

Deberá copiar el texto correspondiente en el fichero .htpasswd

El fichero .htpasswd no tiene por qué estar situado en el mismo lugar que el fichero .htaccess. Puede, por ejemplo, situarlo en la raíz de su alojamiento, ya que un solo fichero .htpasswd puede ser utilizado por varios ficheros .htaccess

El fichero .htpasswd debe contener una línea por usuario precisando el nombre de usuario y la contraseña asociada.

Estas líneas tienen la forma siguiente:

usuario1:contraseña_codificada1
usuario2:contraseña_codificada2
usuario3:contraseña_codificada3
...


Una vez que el fichero .htpasswd ha sido creado, tan sólo debe situarlo en su alojamiento y pasar a la etapa siguiente: la creación de los ficheros .htaccess

Crear el fichero de acceso

Para bloquear el acceso a un directorio completo, cree un fichero de texto .htaccess, que será de la forma siguiente, y sitúelo en el directorio que desea proteger.


AuthUserFile /homez.XXX/mi_login/camino_de_acceso_al_fichero/.htpasswd
AuthGroupFile /dev/null
AuthName "Acceso Restringido"
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>

Sustituya los valores homez.XXX, mi_login y camino_de_acceso_al_fichero por los que corresponda en su caso.


Ejemplo:


AuthUserFile /home.345/midomini/www/.htpasswd
AuthGroupFile /dev/null
AuthName "Acceso Restringido"
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>




Más información

: HtaccessProtectIP :: ¿Como bloquear ciertas IP a nivel de mi sitio?.
: HtaccessAutre :: Las operaciones realizables con los ficheros .htaccess.
: HtaccessPhpVersion :: Opciones Htaccess de PHP en los alojamientos compartidos
: HtaccessModRewrite :: Algunas ideas sobre el módulo rewrite de Apache