Repositorio de escenarios prácticos para despliegue de infraestructuras en virtualización, contenedores, cloud computing y ejercicios de Red Team y Blue Team
- readme.md con información de la infraestructura a desplegar, las tecnologías de virtualización para las que está disponible e instrucciones para personalizar el despliegue y como realizarlo.
- carpetas con los archivos para realizar el despliegue en cuyo nombre aparece la tecnología de virtualización
Se pueden encontrar infraestructuras para desplegar usando VirtualBox con Vagrant, contenedores LXD y contenedores INCUS. Para el aprovisionamiento se han empleado scripts en bash y cloud-init, al ser ambos compatibles con despliegues en la nube (AWS, Google Cloud, Azure, ...). A la hora de preparar los archivos para desplegar las infraestructuras se han tomado algunas decisiones importantes:
- no depender de imágenes plantilla con software preinstalado; es decir, al iniciarse las instancias se procede a la instalación del software necesario. Esto hace que el despliegue tarde unos minutos pero nos asegura trabajar con las versiones más recientes de software disponible en los repositorios y facilita el mantenimiento, al no tener que crear y actualizar imágenes de sistemas operativos o máquinas virtuales.
- primar la sencillez, para facilitar que el profesorado y alumnado pueda modificar de manera rápida y sencilla los archivos de configuración de los escenarios para adaptarlos a sus necesidades.
A modo de ejemplo se puede ver uno de los escenarios prácticos a desplegar y cómo se realiza su despliegue usando contenedores:

Escenarios prácticos disponibles:
- web: infraestructura formada por un servidor web corriendo Apache con PHP.
- lamp: infraestructura formada por un servidor web corriendo jun sistema LAMP: Linux-Apache-PHP-MySQL.
- web_db: infraestructura formada por un servidor web Apache+PHP y un servidor de base de datos MySQL.
- cluster_web: infraestructura formada un conjunto de servidores web idénticos corriendo Apache+PHP.
- ssh_fail2ban: infraestructura formada por un servidor corriendo SSH y un equipo atacante para probar ataques de fuerza bruta y securización mediante el uso de fail2ban.
- fw_lan: infraestructura formada por un firewall de red que controla el tráfico de una organización pequeña, donde tiene que controlar el tráfico de salida de los equipos de los trabajadores y el tráfico entrante a un servidor.
- fw_lan_dmz: infraestructura formada por un firewall de red que controla el tráfico de una organización, donde tiene que controlar el tráfico de salida de una LAN donde se ubican los equipos de los trabajadores y de una red DMZ donde se ubican servicios accesibles desde Internet.
- ha_lvs: infraestructura formada por un servidor que actuará como balanceador usando LVS en modo LVS-NAT y un cluster de 5 servidores web que dan servicio a dos sitios web.
- ha_haproxy: infraestructura formada por un servidor que actuará como balanceador usando HAProxy configurado como balanceador L7 y un cluster de 5 servidores web que dan servicio a dos sitios web.
- ha_haproxy_esc2: infraestructura formada por un servidor que actuará como balanceador usando HAProxy configurado como balanceador L7 y un cluster de 5 servidores web que dan servicio a tres sitios web y donde se las peticiones a un sitio web se redirigen en función de la URL solicitada por el cliente.