VirtualHosts

per Victor Carceler darrera modificació 2021-01-28T10:51:23+02:00

Preparación de la actividad:

Para poder hacer la actividad con VirtualHosts basados en nombres será necesario utilizar un servidor DNS que proporcionará resolución de nombres para dominios de Internet —utilizando el DNS de la LAN como forwarder— y nombres en el TLD .test.

Cada alumno dispondrá de 3 nombres de dominio(por ejemplo para el alumno1 tendremos: dominio1.alumno1.test, dominio2.alumno1.test y dominio3.alumno.test) que se resolverán a la dirección IP utilizada por el alumno en la VPN del grupo clase.

Screenshot Ubuntu 20.10 DesktopPara simplificar la actividad se utilizará una MV de escritorio con Ubuntu 20.10 Groovy Gorilla. De este modo en la misma máquina se podrá ejecutar:

  • El servidor DNS BIND9.
  • El servidor Apache HTTP Server.
  • El navegador web Firefox.
  • Wireguard para conectar con la VPN del grupo clase.

Prepare la actividad siguiendo estos pasos:

  1. Descargue la MV proporcionada por el profesor.
  2. Realice un clon enlazado con el nombre MP07-VirtualHosts y coloque la interfaz de red en modo puente.
  3. Encienda la máquina e instale los paquetes:
    • openssh-server
    • wireguard-tools
    • bind9
    • apache2
  4. Abra un terminal y establezca una conexión ssh con la máquina de escritorio utilizando el parámetro -X para redireccionar X Window.
  5. Compruebe que puede abrir Firefox (utilizando un & para lanzar el proceso en segundo plano: firefox &) y ver la interfaz en el escritorio de la máquina anfitriona.
  6. Configure la VPN.

Desarrollo de la actividad

  1. Como se desean utilizar VirtualHost basados en el nombre se comenzará preparando el servidor DNS de manera que:
    • Reenvíe las peticiones al DNS de la LAN.
    • Tenga autoridad sobre la zona alumno<x>.test.
    • Resuelva los nombres dominio1.alumno<x>.test, dominio2.alumno<x>.test, dominio3.alumno<x>.test a la dirección IP que utiliza el equipo en la VPN.
  2. Cambie la configuración de la MV para que utilice el nuevo servidor DNS y compruebe que puede resolver:
    • Los tres dominios propios.
    • Nombres de dominio de Internet.
  3. Escriba en el directorio /etc/apache2/sites-available los ficheros de configuración para los tres VirtualHosts. Como DocumentRoot se utilizarán los directorios /var/www/{dominio1,dominio2,dominio3}.
  4. Publique una web válida diferente en cada uno de los tres sitios. La web deberá tener:
  5. Utilice la herramienta a2ensite para activar los sitios.
  6. Compruebe desde el navegador de la máquina de escritorio que los tres sitios web son accesibles.
  7. Compruebe en los ficheros de registro del servidor que quedan registrados los accesos de los tres VirtualHost.
  8. ¿Qué sucede cuando se accede al servidor web utilizando la IP del equipo?
  9. GoAccess es un curioso analizador de ficheros de registro para Apache HTTP Server que permite mostrar información en tiempo real desde un terminal u ofrecer los informes en formato web. Instale la herramienta y pruebe su funcionamiento con los ficheros de registro de su servidor.