Controlando el acceso a páginas Web con contraseñas en Apache

Jaime E. Villate

7 de noviembre de 2000

El servidor Apache permite restringir el acceso a un directorio por medio de contraseñas. Lo primero que se debe hacer es modificar el fichero /etc/apacahe/access.conf indicando que el directorio tendrá acceso controlado por contraseñas. Por ejemplo, si queremos proteger el directorio /var/www/mp3, pondríamos lo siguiente:

<Directory /var/www/mp3>
AllowOverride AuthConfig
</Directory>

A continuación se debe crear un fichero .htaccess en el directorio a proteger (/var/www/mp3) indicando el método de protección y el fichero donde estará la lista de usuarios autorizados:

AuthName "Usuarios Registrados"
AuthType Basic
AuthUserFile /etc/usuarios-mp3
require valid-user

Solo se aceptarán usuarios que estén identificados en el fichero /etc/usuarios-mp3. Este fichero tendrá una lista de nombres y contraseñas; por ejemplo:

carlos:a1yhG8xVxvtfo
marta:Er2l9Rkz2lWXo
braulio:sTQljaIGSBZ/I

Después de los dos puntos al final del nombre, se escribe la contraseña encriptada. Una forma fácil de encriptar una contraseña, por ejemplo la contraseña "secreto" es así:

perl -e 'print crypt("secreto", "sT"), "\n";'

La secuencia "sT" puede ser cualquier par de caracteres. Después de reiniciar a Apache, la primera vez que alguien intente ver algun fichero en el directorio, le aparecerá una caja donde tendrá que identificarse y dar su contraseña para poder acceder al directorio. Una desventaja de este método es que el navegador recuerda la contraseña y la envía en cada pedido que se haga al mismo servidor; para tener una protección mejor será necesario usar otros métodos




Página creada en: 2004-11-04 11:41:00 +0000
© Copyright 2001, 2002, 2003, 2004, La Espiral, debian-laespiral@lists.debian.org
Permitida la copia y distribución textual, integral, siempre y cuando se mantenga este aviso.