Cómo montar un laboratorio de pentesting completo con Kali Linux: guía paso a paso (2026)

Introducción

En ciberseguridad, la teoría es necesaria, pero el aprendizaje real ocurre cuando empiezas a interactuar con sistemas, romperlos y entender cómo funcionan internamente. Para eso, necesitas un campo de entrenamiento.

Montar tu propio laboratorio de pentesting es el primer paso para convertirte en un profesional. No importa si estás empezando o ya tienes experiencia: practicar en un entorno controlado te permite cometer errores sin consecuencias reales y repetir escenarios hasta dominarlos.

🧩 Estructura del laboratorio (visión rápida)

Antes de empezar, este es el modelo que vas a construir:

[Kali Linux] → (atacante)
	  ↓
[Red aislada]
      ↓
[Metasploitable / Targets]

(+ Internet solo para Kali mediante NAT)
  • Regla de oro: Nunca practiques pentesting fuera de entornos controlados.

Antes de empezar: verifica tu hardware

No quieres llegar a la mitad del tutorial y descubrir que tu equipo no está listo. Haz esta comprobación rápida:

En Linux (abre una terminal)

# ¿Mi CPU soporta virtualización? (Tiene que dar >0)
egrep -c '(vmx|svm)' /proc/cpuinfo

# ¿Los módulos KVM están cargados?
lsmod | grep kvm

Si el primer comando devuelve 0, reinicia, entra en la BIOS/UEFI y activa:

  • AMD: SVM Mode
  • Intel: VT-x

Si el segundo no muestra nada, carga los módulos:

sudo modprobe kvm_amd   # o kvm_intel en Intel

En Windows (antes de instalar VirtualBox/VMware)

Abre el Administrador de tareas → pestaña "Rendimiento" → "Virtualización": debe poner Habilitada.

Requisitos mínimos vs. recomendados

ComponenteMínimo para probarRecomendado (laboratorio serio)
CPUDual-core con VT-x/SVM4+ núcleos
RAM8 GB16-32 GB
Disco60 GB libres256 GB SSD
SO anfitriónWindows, macOS o LinuxLinux (mejor rendimiento con KVM)

💡 Con 8 GB puedes tener Kali (4 GB) y Metasploitable (1 GB) cómodamente. Con 16 GB ya puedes añadir un Windows víctima o un dominio Active Directory.

Qué vas a construir exactamente?

Un laboratorio de pentesting es un entorno controlado y seguro (un "sandbox") donde despliegas máquinas atacantes y víctimas para simular escenarios reales de intrusión.

 

Beneficios clave

BeneficioPor qué importa
✅ Sin problemas legalesNo atacas sistemas que no te pertenecen
✅ Escenarios realistasPuedes simular redes complejas (DMZ, dominio Windows)
✅ Aprendizaje sin riesgosUn error no provoca un breach real
✅ RepetibilidadLos snapshots te dejan volver atrás en segundos

Herramientas del oficio

Para montar el laboratorio necesitas tres piezas: un sistema atacante, una o varias máquinas vulnerables, y un software de virtualización.

Kali Linux – El martillo del pentester

Kali es el estándar de facto. Viene con cientos de herramientas preinstaladas:

  • Reconocimiento: Nmap, masscan, Amass
  • Explotación: Metasploit, SQLmap, SearchSploit
  • Post-explotación: Mimikatz, BloodHound, Impacket
  • Análisis de tráfico: Wireshark, tcpdump

Consejo profesional: No uses Kali como tu sistema principal. Ejecútalo siempre como VM. Así puedes aislarlo, hacer snapshots y mantenerlo limpio.

Metasploitable – El saco de boxeo

Metasploitable (versión 2 o 3) es una máquina Ubuntu intencionalmente vulnerable. Incluye:

  • Servicios inseguros: vsftpd 2.3.4, UnrealIRCd, Samba 3.x
  • Aplicaciones web vulnerables: DVWA, PHPMyAdmin, Tomcat con credenciales débiles
  • Puertos abiertos que responden a exploits conocidos

¿Dónde descargarla?
Metasploitable 2 | Metasploitable 3 (Windows + Linux)

Software de virtualización: QEMU, VirtualBox y VMware

No hay una única respuesta correcta. Depende de tu nivel, hardware y objetivos.

  • VirtualBox: Ideal para empezar. Interfaz amigable, funciona en Windows, macOS y Linux.
  • VMware Workstation/Player: Muy pulido, buen rendimiento, pero la versión gratuita (Player) limita snapshots y redes.
  • QEMU/KVM (Linux): El más potente y el que usan los profesionales. Rendimiento casi nativo, integración con libvirt, control total.

En este artículo te voy a enseñar los tres enfoques, pero pondré el foco en QEMU/KVM con virt-manager (interfaz gráfica) porque es el que uso a diario y el que te dará una ventaja real en entornos profesionales. Y no te asustes: con virt-manager es tan fácil como VirtualBox.

Comparativa: VirtualBox, VMware y QEMU/KVM

PlataformaRendimientoFacilidad de usoIdeal para...
VirtualBoxMedioMuy altaPrincipiantes, Windows/macOS
VMware WorkstationAltoAltaEntornos mixtos, empresas
QEMU/KVM + virt-managerMuy altoAlta (con GUI)Profesionales en Linux, labs exigentes

Mi recomendación según tu perfil:

Tu perfilVirtualizador recomendado
Estás empezando, quieres lo más sencilloVirtualBox
Ya tienes experiencia y buscas rendimientoQEMU/KVM (si usas Linux)
Necesitas compatibilidad con entornos enterpriseVMware
Quieres montar un laboratorio profesional en Fedora/Debian/ArchQEMU/KVM + libvirt

Preparando el terreno con QEMU/KVM

Si usas Linux (especialmente Fedora, como yo), QEMU/KVM es tu mejor aliado. A diferencia de otros hipervisores, KVM convierte tu kernel en un hipervisor tipo 1, delegando la ejecución del CPU directamente al hardware. El resultado: rendimiento casi nativo (menos del 5% de pérdida).

Y no necesitas ser un mago de la terminal. virt-manager te da una interfaz gráfica tan amigable como VirtualBox, pero con el motor de KVM por debajo.

Instalación rápida

En Fedora:

sudo dnf install -y qemu-kvm libvirt virt-manager edk2-ovmf

En Ubuntu/Debian:

sudo apt install -y qemu-kvm libvirt-daemon-system virt-manager ovmf

En Arch Linux:

sudo pacman -S qemu-desktop libvirt virt-manager edk2-ovmf

Agregar tu usuario al grupo (importante)

sudo usermod -aG kvm,libvirt $(whoami)

Cierra sesión y vuelve a entrar para que los cambios surtan efecto.

Activar el servicio

En las distribuciones modernas, libvirt usa activación por socket:

sudo systemctl enable --now virtqemud.socket

Verifica que todo funciona

Abre virt-manager desde el menú de aplicaciones o con:

virt-manager

Si se abre sin errores, estás listo.

Crear una red aislada (el pilar de la seguridad)

Pongamos las cartas sobre la mesa: la red es el esqueleto de todo laboratorio. Si la configuras mal, un exploit podría salirse de la jaula y llegar a tu WiFi real. No queremos eso.

En virt-manager:

  1. Ve a Editar → Detalles de conexión
  2. Pestaña Redes virtuales
  3. Haz clic en el botón + (Crear nueva red)
  4. Nómbrale lab-isolated, elige "Aislada" (sin salida)
  5. Define un rango de IPs, por ejemplo 10.0.0.0/24
  6. Activa DHCP si quieres (rango 10.0.0.100 a 10.0.0.254)

Ya tienes una red donde tus VMs víctimas se verán entre sí, pero no tendrán acceso a internet ni a tu host.

Importar máquinas pre-construidas (VMDK, VDI, OVA)

Si descargas una máquina en formato .vmdk (VMware) o .vdi (VirtualBox), conviértela al formato nativo de QEMU (qcow2) para ganar rendimiento y snapshots:

# De VMDK a qcow2
qemu-img convert -f vmdk -O qcow2 imagen-original.vmdk imagen-optimizada.qcow2

# De VDI (VirtualBox) a qcow2
qemu-img convert -f vdi -O qcow2 imagen.vdi imagen-optimizada.qcow2
  • Luego en virt-manager: "Crear nueva máquina virtual""Importar disco existente" → selecciona el .qcow2.

📘 Si usas VirtualBox o VMware, los pasos conceptuales son los mismos: dos adaptadores de red (NAT + interna aislada). Solo cambian los nombres de los menús.

Paso a paso: Kali Linux (la máquina atacante)

Crear la VM

En virt-manager:

  • Botón "Crear nueva máquina virtual"
  • "Instalación local" → elige tu ISO de Kali
  • RAM: 4096 MB (4 GB)
  • CPUs: 2 o 4 (depende de tu host)
  • Disco: 40 GB, formato qcow2 (thin provisioning)
  • Nombre: kali-attack

Ajustes de red (el momento crítico)

Necesitas dos adaptadores de red:

AdaptadorTipo de redPropósito
1NAT (suele llamarse default)Que Kali pueda descargar actualizaciones y herramientas
2Red aislada (lab-isolated)Para atacar a Metasploitable sin salida a internet

En virt-manager, durante la creación de la VM o después:

  • Ve a "Información de la VM" → "Añadir hardware" → "Red"
  • Selecciona el modelo virtio (no elijas "e1000", que es emulación lenta)

¿Por qué VirtIO? Es un driver optimizado que permite que la VM se comunique con el host casi a la velocidad del bus de memoria. Elimina el cuello de botella en escaneos masivos con Nmap.

Instalación de Kali

Arranca la VM, sigue la instalación estándar. Cuando termines, comprueba que tienes dos interfaces:

ip a
  • Deberías ver eth0 (NAT) y eth1 (red aislada). Si eth1 no tiene IP, asigna una manualmente o confía en el DHCP de la red aislada.

Paso a paso: Metasploitable (la víctima)

Descargar y preparar la imagen

Descarga Metasploitable 2 desde SourceForge (archivo .zip que contiene un .vmdk).

Convierte el .vmdk a .qcow2:

qemu-img convert -f vmdk -O qcow2 Metasploitable.vmdk metasploitable.qcow2

Importar en virt-manager

  • "Crear nueva máquina virtual""Importar disco existente"
  • Selecciona metasploitable.qcow2
  • RAM: 1024 MB (1 GB es suficiente)
  • CPUs: 1 o 2
  • Nombre: metasploitable

Conectarla solo a la red aislada

Importante: Metasploitable no debe tener acceso a internet. Conéctala únicamente a lab-isolated. Así, si un exploit abre una shell inversa, no podrá salir de tu laboratorio.

En la configuración de la VM, asegúrate de que solo tiene una tarjeta de red conectada a lab-isolated.

(Opcional) Asignar una IP fija

Por comodidad, asigna una IP estática a Metasploitable. Dentro de la VM:

sudo ifconfig eth0 10.0.0.10 netmask 255.255.255.0 up
sudo route add default gw 10.0.0.1

O edita /etc/network/interfaces para que sea persistente.

Verificación del laboratorio: ¿todo listo?

Desde Kali, comprueba que ves a Metasploitable:

ping 10.0.0.10 # la IP depende de como la configures previamente.

Si responde, ya tienes comunicación. Ahora escanea sus puertos:

nmap -sV 10.0.0.10
  • Verás decenas de puertos abiertos: 21 (FTP), 22 (SSH), 80 (web), 445 (Samba), 3306 (MySQL)… ¡Ya tienes un campo de tiro!

Tus primeros ataques (de verdad)

Ataque 1: vsftpd 2.3.4 (el clásico que nunca falla)

Metasploitable corre una versión de vsftpd con backdoor. Desde Kali:

msfconsole
search vsftpd
use exploit/unix/ftp/vsftpd_234_backdoor
set RHOST 10.0.0.10
exploit

Si funciona (y funciona), obtendrás una shell como root. Así de sencillo.

Ataque 2: fuerza bruta al SSH con Hydra (para variar)

No todo es Metasploit. Prueba un ataque de diccionario al puerto 22:

hydra -l msfadmin -P /usr/share/wordlists/rockyou.txt ssh://10.0.0.10

La contraseña de Metasploitable es msfadmin (sí, lo sé, muy original). Hydra la encontrará en segundos.

🧪 Consejo: Toma un snapshot de Metasploitable antes de explotarlo. Así puedes volver al estado limpio y repetir el ataque cuantas veces quieras. De eso hablamos ahora.

Snapshots y clones: tu red de seguridad

Los snapshots son tu "punto de guardado". Permiten volver atrás en segundos cuando rompas algo (y vas a romper cosas).

Tomar un snapshot (desde virt-manager)

  1. Selecciona la VM
  2. Ver → Detalles de la VM
  3. Pestaña Snapshots
  4. Botón Crear snapshot
  5. Nómbralo, por ejemplo: base-limpio

Flujo de trabajo recomendado

PasoSnapshotDescripción
1base-installJusto después de instalar Metasploitable
2vuln-readyDespués de configurar servicios adicionales (DVWA, etc.)
3post-exploitAntes de ejecutar un exploit (para análisis forense)
  • Cuando quieras repetir un ataque, simplemente revierte a vuln-ready y vuelve a intentarlo.

Clonación ligera (linked clones)

Si quieres tener varios objetivos idénticos (por ejemplo, para simular una red con 3 servidores vulnerables), clona la VM base:

  • En virt-manager: clic derecho sobre la VM → Clonar
  • Elige "Clon enlazado" (linked clone)

Cada clon solo ocupa los cambios respecto al original. Así ahorras espacio en disco.

Mantenimiento: cómo mantener limpio tu laboratorio

Con el tiempo, los snapshots y clones pueden acumularse y llenar tu disco. Aquí tienes una rutina de limpieza.

Borrar snapshots que ya no necesites

virsh snapshot-list mi-vm
virsh snapshot-delete mi-vm --snapshotname "viejo-snapshot"

Compactar discos qcow2 (recuperar espacio)

Cuando borras archivos dentro de una VM, el disco qcow2 no se encoge automáticamente. Para compactarlo:

Dentro de la VM (Linux):

sudo dd if=/dev/zero of=/big.empty.file bs=1M
sudo rm /big.empty.file

En el host (apaga la VM primero):

qemu-img convert -O qcow2 -c imagen.qcow2 imagen-compactada.qcow2

O usa virt-sparsify (más fácil):

sudo virt-sparsify --compress imagen.qcow2 imagen-compactada.qcow2

Eliminar VMs huérfanas y discos no referenciados

# Listar todas las VMs (incluidas las que no están definidas)
virsh list --all

# Eliminar una VM y sus discos asociados
virsh undefine --remove-all-storage nombre-vm

Limpiar logs de libvirt

sudo journalctl --rotate
sudo journalctl --vacuum-time=7d

Buenas prácticas de seguridad

Aislamiento del laboratorio

  • Nunca pongas Metasploitable en modo puente o NAT. Siempre en red interna.
  • No compartas carpetas del host con la VM vulnerable.
  • Desactiva cualquier regla de reenvío de puertos innecesaria.

Evitar fugas de tráfico

  • Comprueba que la red aislada no tiene forward hacia default ni hacia el host.
  • En virt-manager, al crear la red, elige "Aislada" (sin salida).
  • Si usas VirtualBox, marca "Red interna" y no habilites "Conectado a".

Para análisis de malware (nivel avanzado)

Si algún día usas el laboratorio para detonar malware, desconecta la red por completo:

virsh detach-interface malware-vm network --mac 52:54:00:xx:xx:xx --config
  • O en virt-manager, desactiva la tarjeta de red en la configuración de la VM.

Errores comunes y soluciones rápidas

ErrorSolución
Kali no ve a MetasploitableVerifica que ambas están en la misma red (lab-isolated). Comprueba IPs con ip a.
Metasploitable no tiene IPEspera DHCP o configúrala manualmente. Reinicia la interfaz: ifconfig eth0 up.
No funciona KVMVerifica virtualización: egrep -c '(vmx\|svm)' /proc/cpuinfo. Si da 0, activa en BIOS.
"Network 'default' is not active"Kali sin internet: sudo virsh net-start default
Rendimiento lentoComprueba que KVM está activo: lsmod \| grep kvm. Si no sale nada, la virtualización está desactivada.
Error de permisos en libvirtActiva el socket: sudo systemctl enable --now virtqemud.socket. Asegúrate de estar en los grupos kvm y libvirt.
El disco qcow2 crece sin controlUsa virt-sparsify para compactarlo (ver sección de mantenimiento).

FAQs

1. ¿Es legal montar un laboratorio de pentesting?
Sí, siempre que uses máquinas vulnerables que tengas derecho a usar (como Metasploitable) y no ataques sistemas ajenos.

2. ¿Qué virtualizador es mejor para empezar?
VirtualBox es el más sencillo. Pero si ya usas Linux, QEMU/KVM con virt-manager es igual de fácil y mucho más rápido.

3. ¿Necesito mucha RAM?
Con 8 GB puedes tener Kali (4 GB) y Metasploitable (1 GB) cómodamente. Con 16 GB puedes añadir un Windows 10 víctima.

4. ¿Puedo usar Windows como host?
Sí, con VirtualBox o VMware. Pero Linux (Fedora, Ubuntu) te dará mejor rendimiento con KVM.

5. ¿Qué otras máquinas vulnerables puedo usar?

  • OWASP Broken Web Apps
  • Hack The Box (máquinas oficiales)
  • VulnHub (cientos de CTFs)
  • Windows con vulnerabilidades sin parchear (para labs de Active Directory)

6. ¿Cómo hago el laboratorio más realista?
Añade un dominio Active Directory (Windows Server), varios clientes Windows, reglas de firewall, y practica pivoting y movimiento lateral.

7. ¿Puedo usar contenedores Docker en lugar de VMs?
Sí, para aplicaciones web vulnerables (DVWA, Juice Shop) Docker es más ligero. Pero para aprender redes y exploits completos, las VMs son insustituibles.

Conclusión

Montar un laboratorio de pentesting completo con Kali Linux no solo es posible, sino esencial para cualquier persona que quiera avanzar en ciberseguridad. Al combinar herramientas como Metasploitable y soluciones de virtualización como QEMU/KVM (con la facilidad de virt-manager), obtienes un entorno potente, seguro y totalmente personalizable.

La clave está en el aislamiento de redes, el uso de snapshots y la práctica constante. Empieza con dos máquinas, luego añade redes DMZ, después un dominio Active Directory, y estarás replicando entornos profesionales reales.

📚 Recursos adicionales

  • Guía avanzada de QEMU/KVM para laboratorios: Próximamente en GitHub (enlace se actualizará aquí). Incluirá configuraciones de red complejas, scripts de automatización y escenarios de CTF.
  • Mi blog: https://dguiza.dev/blog/ – Más tutoriales de ciberseguridad y desarrollo.

🧑‍💻 Nota del autor

Este laboratorio está basado en mi entorno real de trabajo sobre Fedora con QEMU/KVM, donde desarrollo tanto proyectos backend como prácticas de ciberseguridad.

Mi objetivo con esta guía no es solo enseñarte a montar un laboratorio, sino ayudarte a pensar como alguien que trabaja con infraestructuras reales.

¿Te ha sido útil este artículo? Compártelo con otros entusiastas de la ciberseguridad y déjame un comentario con tus dudas o sugerencias para futuros tutoriales.

Y recuerda: el único límite es tu curiosidad (y la RAM de tu equipo). ¡Feliz hacking ético!

Comentarios (0)

  • No hay comentarios aún. ¡Sé el primero en comentar!

Debes iniciar sesión para dejar un comentario.