Contexte
Dans le cadre de mon apprentissage en BTS SIO SISR, je voulais comprendre concrètement comment fonctionne une solution de clonage et déploiement d'images système en environnement professionnel. J'ai choisi FOG Project, une solution open source de gestion d'images réseau (PXE) qui permet de capturer et déployer des images disque sur plusieurs machines simultanément.
Tout ce projet a été monté dans un homelab virtualisé sous VirtualBox, avec pfSense comme routeur/DHCP, simulant un mini environnement d'entreprise.
Architecture mise en place
Internet
│
[pfSense] routeur + DHCP (réseau 192.168.16.0/24)
│
[Réseau interne VirtualBox]
├── [Serveur FOG] (Debian 12) 192.168.16.10
├── [Poste fog-admin] accès à l'interface web de FOG
├── [VM Windows 10 "maître"] capture de l'image
└── [VM clientes] déploiement de l'image (multicast)

Étapes de l'installation
1. Préparation du serveur FOG
VM Debian 12 minimale (sans interface graphique), 2 CPU, 4 Go de RAM, 70 Go de disque. IP statique configurée via /etc/network/interfaces : 192.168.16.10.
Téléchargement et installation :
cd /opt
wget -O fog.zip https://api.github.com/repos/FOGProject/fogproject/zipball/1.5.10.1870
unzip fog.zip
cd FOGProject-fogproject-*/bin
sudo ./installfog.sh
L'installeur pose une série de questions : type d'installation, interface réseau, gestion du DHCP par FOG ou non, activation du HTTPS. Dans mon cas, pfSense gérant déjà le DHCP, j'ai répondu non à la prise en charge DHCP par FOG, et désactivé le HTTPS pour simplifier le PXE en BIOS legacy.
Étape importante à ne pas manquer : à la fin de l'installation, le script affiche une URL contenant un fogtoken unique. Il faut ouvrir cette URL dans un navigateur et cliquer sur "Install/Update Now" pour finaliser l'installation du schéma de base de données. Tant que cette étape web n'est pas validée, il ne faut pas continuer dans le terminal, sous peine d'erreurs (tables manquantes en base).
Une fois confirmé, le script termine l'installation et affiche l'URL de connexion :
https://192.168.16.10/fog/management/
Identifiants par défaut : fog / password (à changer immédiatement après la première connexion).

2. Configuration du PXE sur pfSense
Activation du network booting dans l'interface pfSense (Services > DHCP Server > LAN) :
- Next-server :
192.168.16.10 - Default BIOS filename :
undionly.kpxe
3. Capture de l'image Windows 10
Création d'une nouvelle image dans FOG avec le nom et le système d'exploitation correspondants, puis création d'un groupe pour regrouper les futures machines virtuelles.
Préparation de la machine Windows maître : installation des logiciels nécessaires (FileZilla, Firefox, Geany, WinRAR...). Une fois la configuration terminée, arrêt de la machine et modification de l'ordre d'amorçage : démarrage réseau (PXE) en première position, option EFI désactivée.
Au redémarrage, le menu FOG s'affiche. Sélection de Quick Registration and Inventory pour enregistrer automatiquement la machine dans FOG. Une fois enregistrée, renommage et association à l'image créée précédemment.
Lancement de la tâche de Capture depuis FOG. L'avancement est visible en temps réel dans la section Tasks. L'opération prend environ une dizaine de minutes. La capture est confirmée quand la taille de l'image n'est plus de 0 dans la section Images.

Point de vigilance rencontré : la capture a échoué une première fois avec l'erreur disk contains an unclean file system. Cause : le démarrage rapide (Fast Startup) de Windows empêchait un arrêt propre du système de fichiers NTFS.
Solution appliquée :
- Désactivation du démarrage rapide (Options d'alimentation)
chkdsk C: /fpour assainir le système de fichiers- Extinction propre de Windows (pas via le bouton power de VirtualBox)
Après cette correction, la capture s'est déroulée sans erreur. Remise en état de la machine maître : rétablissement de l'ordre d'amorçage d'origine et réactivation de l'option EFI.
4. Déploiement sur deux nouvelles machines virtuelles
Enregistrement des deux nouvelles machines dans FOG selon la même procédure que la machine maître : démarrage PXE en première position, EFI désactivé, sélection de Quick Registration and Inventory au démarrage.

Une fois les deux machines enregistrées dans FOG :
- Renommage de chaque machine
- Association à l'image capturée
- Ajout au groupe créé au début de la procédure

Lancement d'un déploiement Multicast depuis le groupe. FOG déploie simultanément l'image sur les deux machines en une seule opération, évitant de devoir les traiter une par une.

capture des machines clientes

Remise en état des deux VMs : rétablissement de l'ordre d'amorçage et réactivation de l'EFI. Au démarrage suivant, les deux machines démarrent directement sur Windows 10 avec l'ensemble des logiciels de la machine maître déjà installés.
Résultat
Les deux VMs clientes ont démarré normalement sur l'image Windows 10 déployée, validant l'ensemble de la chaîne : capture, stockage, déploiement multicast.