Files
dtic-DIIAA/docs/ambito/dtic-ADN/A01.P010_W-ZOMBI-Relay-Switch.md
T

3.6 KiB

A01.P010 - W-ZOMBI Relay Switch (Alcance a Redes Internas)

Estado: Pendiente
Pertenece a: A01 - Ecosistema ADN
Fecha: 2026-04-09
Responsable: Lic. Ricardo MONLA
Versión: 1.0 — Plan inicial
Prerequisito: W-Zombi v2.1 (A01.P003)


📋 Resumen Ejecutivo

Extender W-Zombi para alcanzar PCs y VMs en redes internas que no tienen conectividad directa con NS8 vía Tailscale, usando un nodo intermedio (ej: srv-dasu) como relay/switch.

Topología actual (problema):

NS8 (Tailscale) ──✔──► srv-dasu (Tailscale + LAN)
                            │
NS8 ──────✖──────────► VM-interna (solo LAN)

Topología objetivo:

NS8 ──► srv-dasu (relay) ──► VM/PC interna (LAN)
         ↕ retransmite
       cmd.json + log

🎯 Objetivo

Permitir que W-Zombi controle PCs/VMs en redes internas inaccesibles directamente desde NS8, utilizando un nodo intermedio con visibilidad en ambas redes como relay transparente.


🏗️ Opciones de Arquitectura

Opción A: Relay HTTP en srv-dasu (Recomendada)

srv-dasu corre un mini-servidor que:

  1. Escucha en puerto local (ej: 8001)
  2. El zombi PS1 en la VM interna se conecta a srv-dasu:8001
  3. srv-dasu reenvía cmd.json desde NS8 y log hacia NS8

Pros: Independiente, no requiere cambios en firewall Contras: Requiere un servicio en srv-dasu

NS8:8000 ←──tailscale──→ srv-dasu:8001 ←──LAN──→ VM-target
  (server)                  (relay)                (zombi)

Opción B: SSH Port Forward

# Desde NS8:
ssh -L 8001:IP_VM_INTERNA:8000 srv-dasu

Pros: Cero código nuevo Contras: Requiere sesión SSH activa, no es autónomo

Opción C: Tailscale Subnet Router

Configurar srv-dasu como subnet router para exponer la LAN interna.

Pros: Solución nativa Tailscale, todas las VMs accesibles Contras: Requiere configuración de Tailscale admin, posibles implicaciones de seguridad


📋 Tareas (Opción A — Relay HTTP)

ID Tarea Descripción Estado
T1 Diseño del relay Definir protocolo de retransmisión
T2 relay.rb / relay.ps1 Script relay para srv-dasu
T3 Multi-target Soportar múltiples VMs (ej: cmd_vm101.json, cmd_vm102.json)
T4 CLI w-zombi relay Subcomando para gestionar relays
T5 Validación Test con PC Windows real vía relay

📝 Contexto Técnico

Nodos involucrados

Nodo Red Rol IP Tailscale
NS8 Tailscale Servidor W-Zombi (control) 100.111.195.4
srv-dasu Tailscale + LAN Relay/Switch 100.116.210.36
PC target Solo LAN Zombi (ejecuta comandos) ¿? (LAN interna)

Flujo de datos

1. NS8 escribe cmd.json (id:201, cmd:"ipconfig")
2. srv-dasu (relay) polling NS8:8000/cmd.json cada 5s
3. srv-dasu sirve cmd.json en su puerto local 8001
4. PC-target (zombi PS1) polling srv-dasu:8001/cmd.json cada 5s
5. PC-target ejecuta "ipconfig", POST resultado a srv-dasu:8001/log
6. srv-dasu reenvía log a NS8:8000/log

🔮 Evolución Futura

  • Multi-relay: Cadena de relays para redes muy segmentadas
  • Registro automático: Zombis se anuncian al conectarse
  • Dashboard: Ver estado de todos los zombis (directos + relay)
  • Integración Dron: Lanzar comandos remotos como drones con eventos en Bitácora

📚 Referencias