
Laboratorio casero de GNS3 que documenta una red segmentada con firewall Cisco ASAv, núcleo L3, DMZ y un dominio de Active Directory para practicar redes, administración de sistemas y seguridad ofensiva.

HomeLab es un laboratorio de GNS3 construido en un único portátil (OMEN 16, i7-14650HX, 32 GB de RAM, RTX 4060 8 GB) para practicar redes, administración de sistemas y seguridad ofensiva en un solo entorno. Modela un perímetro con un firewall (Cisco ASAv), una DMZ (Ubuntu Server), un núcleo enrutado (SW-L3 + dos switches de acceso) y un dominio de Active Directory kooler.local ejecutándose en Windows Server 2025. Las plataformas de atacante (Kali, Exegol) se sitúan en el segmento exterior no confiable junto a una puerta de enlace NAT hacia internet. El número de activos, tipos de host y servicios configurados se basan en las especificaciones de mi equipo para permitir ejecutar todo el entorno simultáneamente sin que el PC sufra demasiado, y para que las VM tengan recursos decentes asignados.
Nota: Esta es una configuración base para empezar, así que personalízala según sea necesario. Herramientas y conceptos como el hardening de servidores, SIEM, EDR, servidor C2 y pivoting en la LAN para pruebas adicionales deben implementarse y realizarse por tu cuenta según lo que quieras entrenar. Solo la arquitectura global se documentará con el tiempo para su usabilidad y eventualmente se registrará en CHANGELOG.md. Además, como el firewall no está realmente bajo licencia (modo de evaluación), el ancho de banda implicado está limitado y afecta gravemente al rendimiento de la red (fuente externa → DMZ, interior → Internet). Por ello, uso temporalmente un adaptador de red adicional en las VM (VMware NAT) para tráfico de red exigente como actualizaciones del sistema o descargas de software grande. Toma snapshots de los componentes mientras pruebas y rompes cosas. ¡Disfruta y crece!
Cadena: Kali/Exegol + NAT (Switch-X) → Router → Firewall ASAv (con pata DMZ) → SW-L3 → L2-SW-1 / L2-SW-2 (VLANs).
| Segmento | Subred | Notas |
|---|---|---|
| Exterior / no confiable | 192.168.160.0/24 | Switch-X: Kali/Exegol, nube NAT; Router en .100 |
| Router ↔ FW exterior | 10.10.3.0/29 | Router .1, ASA outside .2, DMZ NAT .3 |
| FW ↔ DMZ | 10.10.2.0/30 | ASA dmz .2, Ubuntu .1 |
| FW ↔ SW-L3 (interior) | 10.10.1.0/30 | ASA inside .2, SW-L3 .1 |
| VLAN 30 (VPCS) | 192.168.30.0/24 | PC-C, PC-D |
| VLAN 40 (Estaciones de trabajo) | 192.168.40.0/24 | detrás de L2-SW-2 — Windows 10, PC-B |
| VLAN 50 (Servidores) | 192.168.50.0/24 | detrás de L2-SW-1 — Windows Server 2025 (DC01), PC-A |
| VLAN 100 (Gestión) | 192.168.100.0/24 | SVI presente en SW-L3; en trunk, aún no en el grupo de objetos de ASA |
Los enlaces trunk SW-L3 ↔ L2-SW-1/L2-SW-2 transportan las VLANs 30, 40, 50, 100 (VLAN nativa 999, dot1q).
| Dispositivo | Rol | Plataforma | Interfaces clave |
|---|---|---|---|
| Router | Router de borde, puerta de enlace del lado NAT | Cisco IOSv 15.9 | Gi0/0 10.10.3.1/29 (hacia FW); Gi0/1 192.168.160.100/24 (hacia Switch-X) |
| FW | Firewall perimetral, DMZ | Cisco ASAv 9.22(1)1 | outside 10.10.3.2/29; dmz 10.10.2.2/30; inside 10.10.1.2/30 |
| SW-L3 | Switch L3 del núcleo, enrutamiento inter-VLAN | Cisco IOSv L2 15.2 | Gi0/0 10.10.1.1/30 (hacia FW); Gi0/1-0/2 trunks hacia L2-SW-1/2; SVIs para VLAN 30/40/50/100; modo servidor VTP |
| L2-SW-1 | Switch de acceso | Cisco IOSv L2 15.2 | Puertos de acceso VLAN 50 (WinServer2025, PC-A); modo cliente VTP |
| L2-SW-2 | Switch de acceso | Cisco IOSv L2 15.2 | Puertos de acceso VLAN 40 (Windows 10, PC-B); VLAN 30 (PC-D); modo cliente VTP |
ASAv está licenciado bajo Smart Licensing Using Policy, ejecutándose en Modo de Evaluación con nivel de características standard y nivel de throughput 1G declarados localmente (sin registro en CSSM).
| Host / Recursos | SO / Compilación | Nombre de host | IP / VLAN | Servicios |
|---|---|---|---|---|
| Kali (1 CPU, 8 núcleos, 4/80GB) | Kali Linux 2026.2 (VMware amd64) | Kali | 192.168.160.130 (fuera del segmento) | Plataforma del atacante |
| Ubuntu (1 CPU, 2 núcleos, 3/60GB) | Ubuntu Desktop 26.04 | ko0ler-VMware-Virtual-Platform | 10.10.2.1 (DMZ) | DVWA, bWAPP, httpbin, FTP, Samba, MySQL |
| WindowsServer 2025 (1 CPU, 4 núcleos, 4/60GB) | Windows Server 2025 | DC01 | 192.168.50.10 (VLAN 50) | ADCS, ADDS, DHCP, DNS, MSSQL — controlador de dominio para kooler.local |
| Windows 10 (1 CPU, 2 núcleos, 4/60GB) | Windows 10 | PC1 | DHCP (VLAN 40) | Estación de trabajo unida al dominio |
| PC-A | VPCS | — | VLAN 50 (.15) | — |
| PC-B | VPCS | — | VLAN 40 (.15) | — |
| PC-C | VPCS | — | VLAN 30 (.1) | — |
| PC-D | VPCS | — | VLAN 30 (.2) | — |
Los VPCS se utilizan principalmente para pruebas de conectividad.
Controlador de dominio: DC01 (Windows Server 2025, 192.168.50.10), ejecutando ADCS, ADDS, DHCP, DNS y MSSQL en paralelo — un DC deliberadamente sobredimensionado para practicar superficie de ataque (exposición de cuentas de servicio, mala configuración de plantillas de ADCS, SQL en un DC, etc.).
| Cuenta | Ámbito | Notas |
|---|---|---|
| Administrator | Local (DC01) | Administrador local integrado |
| Ko0ler | Usuario de dominio | — |
| user1 | Usuario de dominio | — |
Windows 10 (PC1) está unido a kooler.local; el inicio de sesión local ko0ler también existe en esa máquina, separado de la cuenta de dominio.
| Par de zonas | Dirección | Permitido |
|---|---|---|
| outside → DMZ | entrante | HTTP(80), HTTPS(443), 8080, 8070, 8060 hacia Ubuntu (10.10.2.1); ICMP |
| DMZ → outside | saliente | HTTP, HTTPS, DNS(53) |
| DMZ → inside | — | denegado |
| inside → DMZ | saliente | IP completa hacia Ubuntu |
| inside → outside | saliente | IP completa, PAT a través de la interfaz outside de la ASA |
NAT: PAT para las subredes inside (192.168.30/40/50.0/24, dinámico, a través de la interfaz outside de la ASA) y NAT estático para el host de la DMZ (10.10.2.1 → 10.10.3.3, DMZ_MAPPED). Nota: el tráfico entre VLANs 30/40/50 nunca atraviesa la ASA — SW-L3 lo enruta localmente, por lo que el firewall solo ve el tráfico norte-sur (DMZ/outside).
Seguimiento en CHANGELOG.md.
Las credenciales del laboratorio no se incluyen intencionadamente en este repositorio.
| Ámbito | Cuenta | Nombre de host |
|---|---|---|
| Local | kali | ko0ler-VMware-Virtual-Platform (Kali) |
| Local | ko0ler | Ubuntu |
| Local | ko0ler | PC1 (Windows 10) |
| Local | Administrator | DC01 (WindowsServer 2025) |
| Dominio (kooler.local) | Ko0ler | — |
| Dominio (kooler.local) | user1 | — |