Actividad 4: Control de acceso basado en Usuario/Contraseña
Autentificación, Autorización y Control de Acceso
El servidor web Apache permite configurar un control de acceso basado en la dirección del cliente, en una autentificación mediante usuario y contraseña o en una combinación de ambas técnicas. Para ello se utilizan los módulos mod_auth y mod_access.
Es posible indicar una configuración de control de acceso diferente para cada recurso web aplicando las directivas en el fichero de configuración principal de Apache (en el interior del bloque <Directory> adecuado) o bien colocando ficheros .htaccess en el directorio en cuestión. En este último caso, el fichero de configuración principal de Apache debe permitir (con la sentencia AllowOverride AuthConfig) el uso de directivas de autentificación en dichos archivos.
Como método de autentificación se puede escoger basic o digest. El primero está ampliamente soportado por la mayoría de los agentes de usuario y transfiere el nombre de usuario/contraseña como texto plano. El segundo proporciona una mayor seguridad pero no está soportado por todos los navegadores.
En ambos casos se puede utilizar un fichero para guardar las contraseñas de los usuarios o grupos. Estos ficheros se crean y mantienen con herramientas que acompañan al servidor web Apache (htpasswd, dbmmanage, htdigest) y por razones de seguridad nunca deben estar dentro de alguno de los directorios que Apache ofrece a través de la WWW.
Actividad:
Con la ayuda de la documentación listada en la sección más información, realice los siguientes ejercicios:
- Defina el alias /lothlorien de forma que su contenido esté almacenado en /var/www/lothlorien
- Construya el directorio /var/www/passwd/ y en su interior utilice el comando htpasswd para construir el fichero lothlorien.passwd, de manera que registre a la usuaria Galadriel identificada por la contraseña Nenya.
- Realice los cambios necesarios en la sentencia Directory asociada a Lothlórien para que sólo Galadriel pueda acceder a la tierra en la que sueñan las flores.
- Defina el alias /moria de forma que su contenido esté almacenado en /var/www/moria
- Registre en el fichero /var/www/passwd/moria.passwd al usuario Durin identificado por la contraseña Tyrfing
- Realice los cambios necesarios en la sentencia Directory asociada a Moria para permitir cambiar la configuración de acceso mediante un fichero .htaccess, después cree dicho fichero de manera que sólo Durin pueda acceder a Khazad-dûm.
- Construya el fichero /var/www/passwd/groups de manera que defina el grupo comunidaddelanillo con los miembros: Aragorn, Frodo, Gandalf, Gimli, Legolas. Que tendrán por contraseña la misma cadena que tienen por nombre de usuario, estando definidos en el fichero /var/www/passwd/personajes.passwd. Añada también al fichero de contraseñas a un usuario con login y password Mantecona.
- Defina el alias /concilioderivendel de manera que su contenido esté almacenado en /var/www/concilioderivendel y sea accesible para los miembros del grupo comunidaddelanillo.
- Defina el alias /bree de manera que su contenido esté almacenado en /var/www/bree y sea accesible para cualquier usuario del fichero /var/www/passwd/personajes.passwd
- Defina el alias /lacomarca de manera que su contenido esté almacenado en /var/www/lacomarca y sea accesible sin ningún tipo de autentificación desde la red 127.0.0.0/8, si el acceso se realiza desde otra red se requerirá usuario/contraseña permitiendo el acceso sólo a los usuarios listados en el fichero personajes.passwd
Más información
- Apache 2.0 Docs: Autentificación, Autorización y Control de Acceso
- Apache 2.0 Docs: Directiva Satisfy
- XTEC Curs D70: Apache
- Categoría de la Wikipedia: El Señor de los Anillos