Tarea 2.1: Servidor web

En esta tarea vas a configurar un servidor web con dos sitios y distintas formas de controlar el acceso. La vamos a realizar usando el servidor web apache2.

Utilizando el escenario 1 del repositorio ejercicios_sri vas a crear un escenario donde existe una máquina servidorweb y un cliente. Los dos están conectados a una red NAT, por lo que tienen internet. Simulamos que el cliente accede al servidor web por una red muy aislada (servidorweb 10.0.0.1, y cliente 10.0.0.2). Antes de crearlo, pon tu clave pública en los ficheros cloud-init/user-data-*.yaml, sustituyendo la línea de ejemplo de ssh_authorized_keys.

Instala apache2 en servidorweb y realiza los siguientes ejercicios:

  1. Virtual hosts. Crea dos virtual hosts en la misma dirección IP: www.sitio1.org (contenido en /var/www/sitio1) y www.sitio2.org (contenido en /var/www/sitio2), cada uno con una página principal distinta. Configura la resolución estática en el cliente y en el anfitrión. Haz que, al acceder al servidor por su dirección IP, responda www.sitio2.org. El resto de ejercicios se hacen en www.sitio1.org.
  2. Control de acceso. A la URL www.sitio1.org/intranet sólo se puede acceder desde la red interna (el cliente), no desde el anfitrión.
  3. Control de acceso y autenticación. A la URL www.sitio1.org/secreto se accede directamente desde la red interna; desde el anfitrión se pide autenticación básica.
  4. Reescritura de URL. Al acceder a www.sitio1.org/blog/bienvenida se muestra el fichero /articulos/bienvenida.html (y lo mismo con cualquier otro nombre), sin que cambie la URL: no es una redirección. Hazlo con el módulo rewrite en un fichero .htaccess (recuerda activar el módulo y permitir el uso del fichero).