Déployer un cyber range avec Proxmox VE : guide pour l'enseignement
Qu'est-ce qu'un cyber range et pourquoi Proxmox ?
Un cyber range est un environnement réseau simulé qui reproduit les topologies et les services d'un vrai système d'information. À la différence d'un simple lab de test, il permet de rejouer des scénarios d'attaque et de défense dans des conditions proches du réel : un attaquant exploite une vulnérabilité sur un Active Directory, une équipe bleue analyse les alertes dans un SIEM, un analyste forensic reconstruit une intrusion à partir de journaux système. C'est l'infrastructure que l'enseignement en cybersécurité pratique ne peut pas se permettre d'ignorer.
Proxmox VE (Virtual Environment) est un hyperviseur open source basé sur Debian, qui combine KVM pour la virtualisation complète et LXC pour les conteneurs. Son interface web centralisée, sa gestion native des snapshots et son API REST documentée en font une solution de choix pour un établissement scolaire soucieux de maîtriser ses coûts.
Comparé à VMware ESXi, Proxmox présente plusieurs avantages concrets dans un contexte pédagogique :
- Coût zéro pour la licence de base (l'abonnement enterprise est optionnel et non nécessaire pour un usage académique)
- Une communauté active avec une documentation complète et un forum réactif
- Des API REST bien conçues qui permettent d'automatiser la création et la gestion des VMs depuis des scripts maison ou des outils tiers comme Terraform
- Un support natif de ZFS, Ceph et des stockages NFS/iSCSI pour les architectures amenées à grandir
Les cas d'usage couverts dans cet article incluent les TP de pentest, les exercices de blue team, l'analyse forensique et la réponse à incident. Ces activités exigent des environnements isolés, reproductibles et réinitialisables entre deux promotions — précisément ce que Proxmox permet de construire à moindre coût. Pour les bases théoriques sur les protocoles et attaques exploités dans ces labs, les concepts de sécurité réseau constituent un prérequis solide avant d'aborder les exercices pratiques.
Matériel recommandé et dimensionnement
La question du matériel est souvent la première barrière pour un établissement qui souhaite franchir le pas. La bonne nouvelle : un serveur d'occasion convient amplement pour une classe entière.
| Taille de la promo | RAM minimale | CPU | Stockage |
|---|---|---|---|
| 10 étudiants | 64 Go | 8 cœurs | 1 To NVMe |
| 20 étudiants | 128 Go | 16 cœurs | 2 To NVMe |
| 30 étudiants | 256 Go | 32 cœurs | 4 To NVMe + NAS |
Ces valeurs supposent 3 à 4 VMs par étudiant (une machine attaquante, une ou deux cibles, une VM monitoring optionnelle), avec des charges CPU modérées typiques d'un TP d'exploitation web ou de sécurité réseau.
Le stockage rapide est prioritaire sur tout autre composant : les I/O disque constituent le premier goulot d'étranglement sur un hyperviseur mutualisé. Un NVMe PCIe Gen 4 fera la différence lors des démarrages simultanés de VMs (le fameux "boot storm" quand vingt étudiants lancent leurs machines en même temps), ainsi que lors des resets entre séances.
Côté matériel d'occasion, les serveurs Dell PowerEdge R720/R740 et HP ProLiant DL380 sont des références éprouvées. On les trouve reconditionnés entre 500 et 1 500 € selon la génération et l'équipement. Ces machines acceptent des quantités importantes de RAM (jusqu'à 768 Go pour les R740), disposent de plusieurs emplacements PCIe et intègrent une connectivité réseau 10 GbE sur les versions récentes.
Pour un établissement souhaitant éviter l'investissement initial d'un serveur dédié, un cluster Proxmox sur deux ou trois machines moins puissantes fonctionne également. Proxmox gère nativement la haute disponibilité et la migration à chaud des VMs entre nœuds.
Architecture réseau : zones et isolation
L'erreur classique dans un lab pédagogique est de connecter toutes les VMs au même réseau plat. Un étudiant en TP de pentesting peut alors — intentionnellement ou non — interférer avec les VMs de ses voisins, voire tenter d'atteindre le réseau de l'établissement. Une architecture en zones étanches est indispensable dès la mise en production.
Les 4 zones pédagogiques
Zone Admin — C'est le réseau de management de Proxmox lui-même. L'interface web (port 8006) n'est accessible que depuis ce réseau, jamais exposée aux étudiants. L'administrateur s'y connecte depuis un poste dédié ou via VPN.
Zone Cibles — Héberge les VMs intentionnellement vulnérables : un Active Directory mal configuré, un serveur web avec DVWA, une machine Windows non patchée. Ces VMs n'ont aucun accès Internet sortant.
Zone Attaquants — Accueille les machines Kali Linux ou Parrot OS des étudiants. Elles peuvent atteindre la zone cibles sur les ports autorisés, mais sont totalement bloquées vers Internet et vers la zone admin.
Zone Monitoring — Optionnelle mais recommandée pour les formations blue team : elle héberge un agent Wazuh, un ELK Stack léger ou un serveur syslog centralisé qui agrège les journaux des VMs cibles. Les étudiants en défense voient les alertes en temps réel.
Bridges Proxmox et isolation
Dans Proxmox, chaque zone correspond à un bridge Linux (vmbr) sans passerelle vers le réseau physique de l'établissement :
vmbr0: management (seul bridge avec interface physique, pour l'accès admin)vmbr1: zone cibles (bridge interne, sans interface physique)vmbr2: zone attaquants (bridge interne, sans interface physique)vmbr3: zone monitoring (optionnel)
L'isolation entre zones s'implémente avec des règles iptables appliquées sur l'hôte Proxmox. La règle fondamentale : interdire tout trafic sortant depuis vmbr2 vers Internet et vers vmbr0. Des règles d'autorisation granulaires entre vmbr2 et vmbr1 précisent ensuite ce que l'attaquant peut atteindre selon le scénario (par exemple, uniquement les ports 80, 443 et 22 vers la zone cibles pour un TP web).
Cette architecture illustre concrètement le principe de segmentation réseau que les étudiants découvrent dans leurs cours théoriques, leur permettant d'en mesurer l'efficacité — et les limites — depuis les deux côtés.
Installer Proxmox VE et créer les premiers templates
Installation de Proxmox VE 8.x
L'installation est directe. Téléchargez l'ISO depuis le site officiel de Proxmox, créez une clé USB bootable avec Rufus ou dd, et démarrez dessus. L'installateur graphique guide à travers quatre étapes :
- La sélection du disque cible (choisir ZFS RAID-1 si deux disques identiques sont disponibles pour la redondance)
- La configuration réseau : adresse IP fixe pour l'interface de management, nom FQDN (ex.
proxmox.lab.local), passerelle et DNS - Le mot de passe root et l'adresse email de notification d'alertes
- Le résumé de configuration avant écriture sur disque
L'interface web est disponible sur https://[IP]:8006 dès le redémarrage. Première action recommandée : désactiver le dépôt enterprise (payant) si vous n'avez pas de souscription, et activer le dépôt pve-no-subscription pour recevoir les mises à jour de sécurité gratuitement.
Créer un template Windows Server
Pour un scénario Active Directory, un template Windows Server 2022 est la base indispensable. Les licences éducation (Microsoft Imagine / Azure Dev Tools for Education) donnent accès aux ISOs pour les établissements éligibles.
Procédure résumée :
- Téléchargez les drivers VirtIO depuis le dépôt Fedora — ils sont indispensables pour que Windows détecte les disques et cartes réseau paravirtualisés de Proxmox
- Créez une VM avec les ressources souhaitées, montez l'ISO Windows et l'ISO VirtIO comme second lecteur optique
- Lors de l'installation, chargez manuellement le driver VirtIO pour le stockage à l'étape de sélection du disque
- Après installation : installez l'agent
qemu-guest-agent, activez RDP, définissez un mot de passe local robuste - Exécutez
sysprep /oobe /generalize /shutdownpour généraliser l'image et la rendre cloneable - Dans Proxmox, clic droit sur la VM → "Convert to template"
Le template ainsi créé peut être cloné en quelques secondes (linked clone) ou minutes (full clone) pour chaque étudiant ou chaque groupe.
Créer un template Kali Linux
Kali Linux distribue une image OVA prête pour les hyperviseurs. Importez-la avec la commande qm importovf depuis le shell Proxmox, ajustez les ressources (4 Go RAM minimum, 2 vCPU pour un usage confortable), puis convertissez en template. Avant la conversion, effectuez une mise à jour complète (apt update && apt full-upgrade) et installez les outils complémentaires propres à votre curriculum.
Créer un template cible Ubuntu avec DVWA
Pour un TP d'exploitation web, un Ubuntu Server 22.04 avec une stack LAMP et DVWA (Damn Vulnerable Web Application) constitue la cible de référence. L'installation est documentée dans le dépôt officiel de DVWA. Configurez le niveau de sécurité à "Low" pour les groupes débutants et à "Medium" pour les niveaux intermédiaires.
Une fois l'installation validée, créez un snapshot nommé snap-clean avant de convertir en template. Ce snapshot sera le point de restauration systématique entre chaque séance.
Scénarios pédagogiques types
Scénario web : DVWA et BWAPP
Objectif pédagogique : maîtriser les injections SQL, les failles XSS stockées et réfléchies, les CSRF. Durée typique : 3 heures.
Architecture : une VM Kali (attaquant) et une VM Ubuntu/DVWA (cible), reliées via vmbr1. L'étudiant utilise Burp Suite Community depuis Kali pour intercepter et modifier les requêtes HTTP. Les niveaux de sécurité progressifs de DVWA permettent de graduer la difficulté au fil de la séance.
BWAPP (Buggy Web Application) couvre un spectre plus large de vulnérabilités OWASP Top 10 et peut compléter DVWA pour les groupes avancés qui ont épuisé les exercices de base.
Scénario réseau : sniffing et ARP spoofing
Objectif pédagogique : comprendre les attaques de type Man-in-the-Middle sur un réseau local non chiffré. Durée typique : 2 heures.
Architecture : trois VMs Linux sur le même bridge (vmbr1) — un client HTTP, un serveur et un attaquant. L'étudiant utilise arpspoof ou ettercap depuis la machine attaquante pour empoisonner le cache ARP des deux autres, puis Wireshark pour capturer le trafic intercepté en clair. Ce scénario rend tangible, de manière très directe, la nécessité du chiffrement de bout en bout même sur les réseaux locaux considérés comme "de confiance".
Scénario Active Directory : domaine Windows vulnérable
Le scénario AD est souvent le plus apprécié des étudiants en formation offensive. À partir des templates Windows Server et Windows 10, on déploie un domaine avec des mauvaises configurations volontaires : délégations Kerberos non contraintes, GPO mal sécurisées, mots de passe faibles dans les attributs LDAP, comptes de service sur-privilégiés.
Ce scénario s'articule naturellement avec les concepts approfondis dans le cours sécurité Active Directory. Pour les équipes bleues constituées en parallèle, la zone monitoring reçoit les journaux de sécurité Windows (Event ID 4624, 4625, 4768, 4769) à analyser en temps réel pendant que les attaquants progressent dans le domaine.
Pour aller plus loin sur la préparation de ces environnements avant de les remettre à des étudiants, l'article configurer un environnement de TP sécurisé détaille les vérifications à effectuer et les risques à anticiper.
Gestion des accès étudiants et resets
Comptes Proxmox limités avec le rôle PVEVMUser
Proxmox intègre un RBAC (Role-Based Access Control) natif. Le rôle PVEVMUser donne à un étudiant le droit de démarrer, arrêter et accéder à la console de ses VMs, sans pouvoir modifier les configurations réseau, créer de nouveaux disques ou accéder aux VMs de ses camarades.
La procédure recommandée pour un groupe :
- Créer un pool de ressources par étudiant ou par binôme dans l'interface Proxmox
- Créer un compte utilisateur Proxmox local, ou authentifier via LDAP si l'établissement dispose d'un annuaire existant
- Assigner le rôle
PVEVMUsersur le pool de l'étudiant uniquement, et pas en dehors
L'étudiant accède à https://proxmox.lab.local:8006, voit uniquement ses VMs, et accède aux consoles VNC ou SPICE depuis son navigateur sans installer de client lourd. En distanciel, l'accès se fait via un VPN WireGuard pointant vers le réseau de management, évitant d'exposer les VMs directement sur Internet.
Script de reset automatique
Entre deux séances, la réinitialisation des VMs est la tâche la plus chronophage si elle est effectuée à la main. Un script bash suffit pour automatiser le rollback vers le snapshot snap-clean :
#!/bin/bash
# Reset des VMs d'un groupe vers l'état initial
# Adapter les IDs selon votre configuration Proxmox
VMIDS=(101 102 103 104 105)
for vmid in "${VMIDS[@]}"; do
echo "Rollback VM $vmid vers snap-clean..."
qm stop "$vmid" --skiplock 2>/dev/null
qm rollback "$vmid" snap-clean
qm start "$vmid"
done
echo "Reset terminé."
Le temps de rollback pour 30 VMs sur un stockage NVMe est typiquement inférieur à 3 minutes. Ce script peut être déclenché via cron, via un webhook depuis un LMS (Moodle, Canvas), ou directement depuis l'API REST de Proxmox. Cette API est documentée en local à l'adresse https://[IP]:8006/pve-docs/api-viewer/ et permet d'intégrer la gestion du lab dans des tableaux de bord ou des outils d'administration existants.
Supervision légère et journaux pédagogiques
Métriques en temps réel dans Proxmox
Proxmox affiche nativement les métriques CPU, RAM, I/O réseau et disque de chaque VM directement dans l'interface web. Pour un enseignant qui circule dans la salle, cela permet de repérer instantanément les étudiants dont les VMs consomment des ressources anormales (processus en boucle, flood réseau accidentel) et d'intervenir sans quitter le tableau de bord.
Pour une supervision agrégée sur la durée, Proxmox peut envoyer ses métriques vers InfluxDB ou Graphite, intégrables dans un dashboard Grafana. Cette configuration reste optionnelle pour un lab scolaire standard.
Wazuh sur les VMs cibles
Pour les TP blue team, l'installation d'un agent Wazuh sur les VMs cibles transforme le lab en mini-SOC pédagogique. Les étudiants en défense voient arriver les alertes en temps réel lorsque leurs camarades tentent des connexions SSH par force brute, des élévations de privilèges ou des modifications de fichiers système sensibles.
Wazuh Manager tourne sur une VM dédiée dans la zone monitoring, avec son interface web intégrée pour la visualisation des alertes. Un agent léger sur les VMs cibles n'affecte pas de manière significative leurs performances — l'overhead est négligeable pour des workloads de TP.
Journaux pédagogiquement utiles
Pour les exercices forensic et réponse à incident, les journaux les plus exploitables sont :
- Authentifications :
/var/log/auth.logsous Linux, journal de sécurité Windows (Event Log) - Processus lancés :
auditdavec des règles sur les appelsexecvesous Linux, Sysmon sous Windows - Connexions réseau : journaux iptables sur l'hôte Proxmox, ou captures pcap générées par tcpdump depuis la zone monitoring
Ces journaux peuvent être exportés à la fin de la séance pour servir de trace pédagogique, ou utilisés comme matériau d'un exercice d'analyse post-incident lors du cours suivant. Les compétences développées correspondent directement au profil de l'ingénieur en sécurité, qui constitue souvent le débouché visé par ces formations.
Ce qu'il faut retenir
Déployer un cyber range avec Proxmox VE est accessible à tout établissement disposant d'un budget modeste et d'un administrateur à l'aise avec Linux. Voici les cinq points essentiels :
-
Proxmox VE est gratuit et suffisant pour la grande majorité des besoins pédagogiques — une licence ESXi ne se justifie que si l'établissement a une contrainte institutionnelle spécifique.
-
L'architecture en zones est non négociable : séparez dès le départ management, cibles, attaquants et monitoring avec des bridges dédiés et des règles iptables strictes. Un réseau plat expose les étudiants entre eux et expose potentiellement le réseau de l'école.
-
Le stockage NVMe est l'investissement le plus rentable : il impacte directement l'expérience lors des démarrages simultanés et des resets entre séances. Priorisez-le sur la RAM si vous devez arbitrer un budget.
-
Les templates et snapshots sont votre meilleure assurance : un snapshot
snap-cleanbien nommé et un script de reset automatisé transforment une opération de maintenance pénible en une commande unique exécutée en moins de trois minutes. -
Commencez simple : un serveur, deux templates (Kali + DVWA), un scénario. Enrichissez l'infrastructure au fil des retours étudiants plutôt que de vouloir construire le cyber range parfait avant le premier cours — la complexité technique ne doit jamais prendre le pas sur la progression pédagogique.
Pour aller plus loin dans la pratique, la communauté Cyber Teachers propose des ressources pédagogiques, des partages d'expérience entre enseignants et des guides spécialisés pour l'enseignement de la cybersécurité. Retrouvez l'ensemble des ressources sur cyberteachers.org.