Homelab SOC #04 - Virtualización con VirtualBox


En el capítulo anterior preparé el equipo anfitrión que será la base física del laboratorio.

Configuramos Arch Linux, revisamos los recursos disponibles y dejamos preparado el sistema para ejecutar cargas virtualizadas.

Pero todavía falta una capa fundamental: La virtualización.

Un SOC real normalmente no funciona sobre un único sistema operativo.

Necesita servidores, estaciones de trabajo, agentes y diferentes componentes comunicándose entre ellos.

La virtualización permite recrear ese escenario utilizando un único equipo físico.


Objetivo de este capítulo

La pregunta principal que responde esta etapa es:

¿Cómo convierto mi equipo físico en un laboratorio empresarial?

Durante este capítulo prepararé la plataforma donde posteriormente se instalarán:

  • Debian Server como servidor principal del SOC.
  • Windows como equipo monitorizado.
  • Linux Agents para generación de eventos.
  • Herramientas adicionales de análisis.

La arquitectura final será:

Hardware físico
        │
        ▼
 Arch Linux Host
        │
        ▼
 VirtualBox
        │
        ├── Debian Server
        ├── Windows Agent
        └── Linux Agent

¿Por qué VirtualBox?

Existen diferentes plataformas de virtualización disponibles:

  • VMware Workstation.
  • Proxmox VE.
  • Microsoft Hyper-V.
  • KVM/QEMU.
  • VirtualBox.

Cada una tiene ventajas dependiendo del escenario.

Por ejemplo:

Proxmox: Está orientado principalmente a servidores y centros de datos.

KVM/QEMU: Es una alternativa muy potente integrada dentro del ecosistema Linux.

VMware Workstation: Ofrece excelentes características para entornos profesionales.

Hyper-V: Está integrado dentro del ecosistema Microsoft.

Para este laboratorio utilizaré:

VirtualBox

La elección está basada en:

  • Gratuito.
  • Multiplataforma.
  • Fácil administración.
  • Suficiente para un laboratorio doméstico.
  • Excelente documentación.

Instalación en Arch Linux

VirtualBox se encuentra disponible dentro de los repositorios oficiales de Arch Linux.

Primero instalamos los paquetes necesarios:

pacmanzsh / user
sudo pacman -S virtualbox virtualbox-host-modules-arch

Después agregamos nuestro usuario al grupo encargado de administrar máquinas virtuales:

pacmanzsh / user
sudo usermod -aG vboxusers $USER

Para aplicar los cambios será necesario cerrar sesión e ingresar nuevamente.

Podemos verificar:

terminalzsh / user
groups

El usuario debe aparecer dentro del grupo:

vboxusers

Configuración inicial de VirtualBox

Después de instalar VirtualBox es importante definir dónde serán almacenadas las máquinas virtuales.

Por defecto muchas instalaciones utilizan:

/home/usuario/VirtualBox VMs

Y aunque para un laboratorio esto no es lo ideal, dejar la ruta por defecto, para este laboratorio lo dejaremos así ya que mi home tiene un disco de 1 TB asignado, por lo que la ruta final sera:

/home/wuilmerbolivar/VirtualBox

Diseño de red del laboratorio

Esta será una de las partes más importantes del proyecto.

Un SOC necesita observar sistemas generando actividad.

Por eso las máquinas virtuales deben poder comunicarse entre ellas.

La arquitectura será:

              INTERNET
                  │
                  ▼
              NAT Router
                  │
                  ▼
          Arch Linux Host
                  │
                  ▼
          VirtualBox Network

        ┌─────────────────┐
        │     SOC LAB      │
        │                  │
        │ Debian Server    │
        │ Wazuh Manager    │
        │                  │
        │ Windows Agent    │
        │ Ubuntu Agent     │
        └─────────────────┘

VirtualBox ofrece diferentes modos de red:


NAT

Utilizado para:

  • Acceso a internet.
  • Descargar actualizaciones.
  • Instalar paquetes.

La máquina virtual sale a internet utilizando la conexión del host.


Host Only

Utilizado para:

  • Comunicación interna del laboratorio.
  • Separar el tráfico del entorno real.

Será la red principal para que los agentes puedan comunicarse con el servidor SOC.


Bridge

Permite que una máquina virtual aparezca directamente dentro de la red física.

Puede utilizarse cuando una VM necesita comportarse como un equipo real dentro de la LAN.


Primera máquina virtual

En este capítulo todavía no instalaremos sistemas operativos.

El objetivo es preparar la infraestructura.

Crearemos únicamente la primera máquina:

Nombre:

DebianServer

Configuración inicial:

RAM:
4096 MB

CPU:
4 cores

Disco:
50 GB

Sistema:
Linux
Debian 64-bit

La instalación de Debian será realizada en el siguiente capítulo.


Planificación de recursos

Antes de crear máquinas es importante definir una distribución inicial.

MáquinaRAMCPUDisco
Debian Server SOC4 GB4 CPU50 GB
Windows Agent4 GB2 CPU60 GB
Ubuntu Agent2 GB2 CPU30 GB
Host Arch Linux8 GB--

Con esta distribución todavía tendremos margen para agregar nuevas máquinas durante la evolución del laboratorio.


Snapshots: puntos de recuperación

Una de las ventajas principales de la virtualización es poder crear estados de recuperación.

Antes de realizar cambios importantes podemos crear un snapshot:

Debian-clean-install

Esto permitirá:

  • Recuperar configuraciones.
  • Probar herramientas.
  • Simular errores.
  • Volver rápidamente a un estado conocido.

Estado actual del laboratorio

Después de esta etapa tenemos:

✓ Arch Linux preparado como host.

✓ VirtualBox instalado.

✓ Almacenamiento definido.

✓ Arquitectura de red diseñada.

✓ Recursos planificados.

✓ Primera máquina virtual creada.

La infraestructura virtual está lista.


¿Qué sigue?

Hasta ahora tenemos:

Hardware.

Sistema operativo anfitrión.

Plataforma de virtualización.

Pero todavía no existe un servidor SOC funcional.

El siguiente paso será instalar Debian Server, que será el núcleo del laboratorio.

Sobre este sistema posteriormente funcionarán:

  • Wazuh Manager.
  • Dashboards.
  • Servicios de monitoreo.
  • Integraciones de seguridad.

Lo aprendido

La virtualización es una de las tecnologías que permitió que los laboratorios de seguridad fueran accesibles para cualquier profesional.

Antes era necesario disponer de múltiples servidores físicos.

Hoy un solo equipo puede simular una pequeña infraestructura empresarial completa.

La diferencia no está solamente en instalar máquinas virtuales.

Está en diseñar correctamente cómo se comunican, qué recursos utilizan y cómo serán administradas.

Ese diseño será la base sobre la cual construiremos nuestro SOC.