Taller 1: Configuración de un servidor Apache2
¿Qué vas a aprender en este taller?
- El concepto de alias.
- Las distintas opciones que podemos definir en un directorio servido por apache2.
- El concepto de redirección.
- El control de acceso a los ficheros y directorios de un servidor web apache2.
- La autentificación para acceder a recursos del servidor web.
- Configuración descentralizada usando ficheros
.htaccess
. - Introducción a los módulos en apache2.
Recursos para realizar este taller
Los contenidos necesarios para la realización de este taller y para profundizar en la configuración de Apache2, lo puedes encontrar en el siguiente apartado:
¿Qué tienes que hacer?
Para hacer este ejercicio, crea un escenario en Vagrant, que tenga una máquina (servidorweb
) conectada a una red “externa” (que podamos acceder desde nuestro host, puede ser una red pública o una red privada NAT), y una privada (aislada o muy aislada) y un cliente conectada a esta nueva red.
- Instala un servidor web apache2 en
servidorweb
. - Crea un virtualhost con el que accederemos con el nombre
www.taller1.com
. En este virtualhost realizaremos los siguientes ejercicios. - Cuando se entre a la dirección
www.taller1.com
se redireccionará automáticamente awww.taller1.com/principal
, donde se mostrará el mensaje de bienvenida. - Si accedes a la página
www.taller1.com/principal/documentos
se visualizarán los documentos que hay enhome/usuario/doc
. Por lo tanto se permitirá el listado de ficheros (opciónIndexes
). - A la URL
www.taller1.com/intranet
sólo se debe tener acceso desde el cliente de la red interna, y no se pueda acceder desde la anfitriona por la red pública. A la URLwww.taller1.com/internet
, sin embargo, sólo se debe tener acceso desde la anfitriona por la red pública, y no desde la red interna. - Autentificación básica. Limita el acceso a la URL
www.taller1.com/secreto
. - Vamos a combinar el control de acceso (ejercicio 5) y la autentificación (ejercicio 6), y vamos a configurar el virtual host para que se comporte de la siguiente manera: el acceso a la URL
www.taller1.com/secreto
se hace forma directa desde la intranet, desde la red pública te pide la autentificación. -
El módulo rewrite nos va a permitir acceder a una URL e internamente estar accediendo a otra. Esto nos puede ayudar a hacer URL amigables y hacer redirecciones. Por ejemplo para redireccionar a otra URL:
RewriteEngine On RewriteRule ^(.*)$ http://www.nueva.com/$1 [R=301,L]
Usando un fichero
.htaccess
haz que al acceder a la URLwww.taller1.com/documentos
se produce una redirección awww.taller1.com/principal/documentos
usando el modulo rewrite (recuerda que tienes que activarlo). Además, deniega el acceso desde la red interna.
¿Qué tienes que entregar?
- Configuración completa del virtualhost.
- Comprobación de que al acceder a
www.taller1.com
se produce una redirección. - Pantallazo accediendo a
www.taller1.com/principal/documentos
(pon algunos ficheros para que se vea la lista). - Pantallazos de accesos a
www.taller1.com/intranet
desde el host y el cliente interno. Pantallazos de acceso awww.taller1.com/internet
desde el host y el cliente interno. - Pantallazos de la autentificación básica.
- Pantallazos de acceso a
www.taller1.com/secreto
desde el host y el cliente interno. - Contenido del fichero
.htaccess
. Acceso awww.taller1.com/documentos
comprobando que se produce una redirección desde el exterior y prueba de acceso desde el cliente interno para comprobar que no tiene permiso de acceso.