Lab as a Service (LaaS)

Simulation Interactive de l'Architecture Web d'Environnements Cyber (Ludus / Spring Boot / Guacamole)

1. Concepts Clés & Outils

Ludus

Moteur d'infrastructure qui orchestre le déploiement de VMs sur Proxmox. Il automatise la création des réseaux et utilise Ansible.

Range (Cyber Range)

L'environnement réseau virtuel isolé. Règle d'or absolue : 1 Étudiant = 1 Range privée (ex: sous-réseau 10.10.x.x).

Lab

Modèle pédagogique préparé par le professeur pour un TP. C'est un simple fichier YAML interpreté par Ludus.

WireGuard

Tunnel VPN reliant le Backend au serveur Ludus. Il permet à Spring Boot de "voir" les IPs privées (10.x.x.x) des VMs étudiantes.

Apache Guacamole

Démon "Clientless" transformant le SSH/RDP en un flux WebSocket performant lu dans le navigateur, sans installer de client.

2. Topologie Globale

Navigateur Web

Angular SPA Client WebSocket
HTTPS / WSS

Serveur Backend

Spring Boot (Orchestrateur) Guacd (Docker Proxy) Client VPN WireGuard
Tunnel VPN & API Ludus

Infrastructure Ludus

Ludus API Proxmox / VMs Serveur WireGuard

3. Assistant de Workflow

1
2
3
4
Action : Le professeur remplit un formulaire "Hacking Lab 1"

Création du Lab (Professeur)

Le backend Spring Boot génère un fichier YAML de configuration compatible Ludus et le sauvegarde en base de données comme "Template". À ce stade, aucune ressource physique n'est provisionnée sur Proxmox.

backend@spring-boot: ~/logs
[System] Serveur Backend démarré. Prêt à orchestrer.

Fichier YAML Généré en Base de Données

name: hacking-lab-1
version: 1.0
machines:
  - name: kali-attacker
    os: debian-kali
    roles: [ attacker ]
  - name: target-win01
    os: windows-server
    roles: [ vulnerable_ad ]
Ansible Deploying VMs... 0%
Négociation WebSocket Guacamole...
Connecté à: 10.3.20.5:3389
Kali Linux (Range Étudiant) 10.3.20.5 (Privé)
root@kali:~