Fonctionnalités
Une VM, des dizaines de machines
featherlab est une machine virtuelle Debian prête à l'emploi. À l'intérieur, chaque routeur ou serveur est un conteneur système Incus : un vrai Linux avec systemd, apt ou apk, FRR pour le routage (OSPF, BGP, RIP), nftables pour le pare-feu. Les machines sont reliées par des segments de réseau isolés que vous nommez.
Décrire, déployer, détruire
Un lab est un dossier : un lab.yaml court et lisible, les fichiers de configuration à pousser,
un énoncé en Markdown. featherlab up crée tout, down détruit tout. Pause, reprise,
instantanés de toutes les machines en une seconde.
Interface web
- Liste des labs, déploiement et destruction d'un clic avec la progression en direct.
- Terminal dans le navigateur sur n'importe quelle machine.
- Topologie dessinée automatiquement, éditeur graphique (glisser-déposer) et éditeur YAML validé.
- Export et import de labs en archive zip ; énoncé affiché.
Exercices auto-corrigés
Un exercice.yaml décrit des vérifications : un script ou une commande lancés dans une
machine, des points. Des machines cachées servent de sondes, invisibles pour l'élève. Le score s'affiche
dans l'interface, vérification par vérification.
Classes
Une VM pour tout un établissement : comptes enseignants, une classe = un exercice × une liste d'élèves. Chaque élève reçoit sa propre copie du lab et un lien personnel vers une interface réduite : énoncé, terminaux, ses vérifications en direct. L'enseignant suit la grille élèves × vérifications, exporte les scores en CSV, ferme la classe à la date voulue.
Variantes anti-copie : des variables tirées au sort pour chaque élève (réseaux, domaines, valeurs)
rendent le lab.yaml, l'énoncé et les vérifications propres à chacun.
Catalogue communautaire
Ce site héberge les labs, exercices et examens partagés par les utilisateurs. Depuis la VM, l'onglet Catalogue les importe d'un clic et publie les vôtres avec une clé d'API.