8. Simplifier le déploiement de vos postes de travail

De nombreuses entreprises et administrations incluent des logiciels et des configurations dans les images d’OS qu’elles déploient sur leurs flottes de machines.

Mais désormais ce n’est plus la méthode recommandée pour plusieurs raisons :

  • Chaque fois que vous créez une nouvelle image, vous perdez beaucoup de temps à installer un logiciel et à le configurer. Vous êtes très limité dans les paramètres que vous pourrez inclure dans votre image.

  • Chaque fois que vous créez une nouvelle image, vous devrez suivre les modifications dans un document texte, une feuille de calcul ou un outil de gestion des modifications.

  • Les éditeurs de systèmes d’exploitation (notamment Microsoft) conseillent l’utilisation d’images ISO brutes et leur paramétrage en post-installation.

  • Enfin, si vous introduisez dans votre image des configurations de sécurité, des configurations réseau ou des configurations pour limiter l’intrusion de la télémétrie, ces configurations peuvent perturber le fonctionnement normal de WAPT, cela compliquera les diagnostics futurs.

Avec WAPT, ce n’est plus nécessaire

Note

Si votre configuration est correcte et que vous voulez simplement revoir la méthode de déploiement pour une machine, vous pouvez vous référer au guide de démarrage rapide.

8.1. Recommandations

Tranquil IT recommande :

  • Do not keeping the same local administrator password that was used during workstation deployment.

To improve security, we recommend installing the tis-laps-by-wapt package. This package automatically rotates the local administrator password after deployment.

This solution is compatible with Windows, macOS, and Linux workstations.

In addition, the generated password is securely stored in encrypted form and can only be accessed by authorized users. The password information is available from the audit data of the host in the WAPT Console.

  • De réaliser une seule image brute par type d’OS avec MDT, Fog (win10, win2016, etc) ou WAPT WADS sans aucune configuration ou logiciel.

Si vous souhaitez installer un agent WAPT dans votre image Windows, procédez comme suit :

Exécutez les commandes suivantes dans CMD :

net stop waptservice
wapt-get delete-param uuid
wapt-get delete-public-param uuid
wapt-get delete-public-param hardware_uuid
wapt-get delete-param hardware_uuid
wapt-get delete-param hostname
wapt-get delete-public-param hostname
del "C:\Program Files (x86)\wapt\private\*.crt" "C:\Program Files (x86)\wapt\private\*.pem"

Effectuer un Sysprep.

Ensuite, éteignez la machine.

  • Pour créer autant d’Unités Organisationnelles que vous avez de types de machines dans l’OU CN=Computers (ex : standard_laptop, hardened_laptop, workstations, servers, etc) dans votre Active Directory.

  • Pour configurer votre Active Directory afin de distribuer la GPO de l’Agent WAPT aux différentes Unités Organisationnelles de machines ; De cette façon, vous pouvez opter pour des configurations fines de votre waptagent.ini pour les hôtes rattachés à chaque OU.

Indication

Pour vous faire gagner du temps, vous pouvez baser votre stratégie de configuration de la sécurité sur les paquets WAPT de sécurité déjà disponibles dans le WAPT Store, vous n’aurez qu’à les compléter en fonction des exigences de sécurité spécifiques de votre Organisation.

  • Créer dans l’OU CN=Ordinateurs autant d’Unités Organisationnelles qu’il y a de types d’utilisation des ordinateurs dans votre organisation (comptabilité, point_de_vente, ingénierie, vente_sédentaire, etc).

  • Pour créer des paquets WAPT génériques de vos applications logicielles avec leurs configurations associées.

8.1.1. Scénario de déploiement

  • Vous recevez ou le responsable informatique du site distant reçoit une nouvelle machine dans sa boîte.

  • Vous configurez l’adresse MAC de la machine par DHCP afin qu’elle reçoive la bonne image système et soit placée dans la bonne Unité Organisationnelle à la fin du processus de déploiement.

  • L’image système attendue est téléchargée sur la machine en temps masqué, la machine est placée dans la bonne Unité Organisationnelle.

  • L’Agent WAPT enregistre la machine auprès du Serveur WAPT, elle apparaît dans la Console WAPT.

  • L’Agent WAPT détecte qu’il se trouve dans une unité organisationnelle qui nécessite un ensemble de logiciels particulier et une configuration de sécurité particulière.

  • L’Agent WAPT télécharge et exécute des logiciels et des progiciels de configuration de sécurité en temps masqué ; l’Agent WAPT supprime automatiquement les droits délégués qui sont rendus inutiles après avoir rejoint le domaine pour éviter qu’ils ne soient ensuite exploités de manière non autorisée.

  • Soit par groupe de machines ou machine par machine, vous finalisez la configuration des machines en leur attribuant des paquets WAPT spécifiques.

Indication

Si vous le souhaitez, vous pouvez même laisser l’étape finale de configuration à vos utilisateurs en configurant le libre-service WAPT pour eux (configuration des imprimantes, besoins logiciels spéciaux, etc).

8.2. Déployer vos postes de travail via WADS WAPT Enterprise feature WAPT Enterprise feature

WADS pour WAPT Automated Deployment Services a été développé pour fournir une solution simple pour les déploiements de systèmes d’exploitation via WAPT.

Le déploiement du système d’exploitation est disponible pour Windows, Debian et ses dérivées et pour RedHat et ses dérivées.

8.2.1. Mode de fonctionnement du WADS

Schématiquement, le déploiement d’un OS implique 3 étapes :

  1. Importation des différents supports et fichiers nécessaires au déploiement, tels que les images du système d’exploitation .iso, les packs de pilotes et les fichiers de configuration.

Diagramme de flux pour l'importation des fichiers requis pour le déploiement de WADS

Diagramme de flux pour l’importation des fichiers requis pour le déploiement de WADS

  1. Création du support de démarrage.

Diagramme de flux pour la création du support d'amorçage pour le déploiement WADS

Diagramme de flux pour la création du support d’amorçage pour le déploiement WADS

  1. Lancement du déploiement sur l’hôte cible en utilisant le réseau ou une clé USB.

Diagramme de flux pour l'utilisation du support de démarrage dans le déploiement WADS

Diagramme de flux pour l’utilisation du support de démarrage dans le déploiement WADS

8.2.2. Différence entre l’AMED et les autres solutions

  • Solution de déploiement classique.

Diagramme de flux pour le déploiement d'un OS classique

Diagramme de flux pour le déploiement d’un OS classique

  • Solution de déploiement WADS.

Diagramme de flux pour un déploiement WADS

Diagramme de flux pour un déploiement WADS

Indication

  • Le mode de fonctionnement de WADS respecte la méthode recommandée par le fournisseur du système d’exploitation.

  • Avec WADS, toutes les fonctionnalités sont regroupées sur le même Serveur WAPT.

  • Il n’est donc pas nécessaire de mettre en place une infrastructure supplémentaire autre que le Serveur WAPT.

8.2.2.1. Différences entre les logiciels

Différences entre la méthode WADS et les autres méthodes

Serveur de déploiement WADS

Méthode PCT standard

Prestations

Utilise iPXE

Utilise le protocole de serveur de fichiers CIFS.

Il n’est pas nécessaire de configurer un serveur de fichiers ni d’ouvrir des ports supplémentaires.

Aucune configuration de l’image du OS n’est nécessaire

Nécessite de modifier manuellement la configuration d’un fichier de réponses.

Simplicité, toutes les configurations sont fournies par WAPT

Utilise HTTPS pour télécharger l’image du système d’exploitation Windows

Utilise CIFS pour télécharger l’image du système d’exploitation Windows.

Les hôtes cibles peuvent être déployés sur Internet en utilisant la méthode de la clé USB.

La méthode WADS incorpore tous les fichiers nécessaires

La méthode MDT nécessite l’assemblage de fichiers provenant de sources différentes.

Le déploiement, la configuration et les mises à jour du système d’exploitation sont regroupés dans un seul packaging logiciel WAPT.

8.3. Installation et configuration de TFTP et DHCP pour WADS

8.3.1. Installation et configuration d’un serveur TFTP

Avertissement

Si vous avez installé un autre serveur tftp sur le Serveur WAPT, veuillez d’abord le désinstaller.

Cette documentation est destinée à WAPT 2.2.1 et aux versions ultérieures.

Le port udp/69 doit être ouvert sur le serveur WAPT pour le trafic entrant, ainsi que la plage de ports éphémères tftp (49152-65535)

La fonction tftp conntrack doit être activée sur les pare-feu intermédiaires si vous disposez de pare-feu entre le serveur et l’ordinateur client.

Choisissez votre distribution.

  • Activer et démarrer le serveur TFTP.

systemctl enable wapttftpserver
systemctl start wapttftpserver
  • Vous pouvez tester que le serveur tftp fonctionne correctement en utilisant un client tftp et tester le téléchargement du fichier i:file:snponly.efi. Si vous testez la commande suivante sur une machine basée sur RedHat autre que le waptserver, faites attention au pare-feu sortant local qui bloque les requêtes sortantes du client tftp.

cd ~
tftp srvwapt.mydomain.lan
  binary
  get snponly.efi
  quit
ls -l snponly.efi

8.3.2. Installation et configuration d’un serveur DHCP

Vous pouvez utiliser HTTP ou TFTP (plus lent) pour télécharger les binaires.

Avertissement

Le téléchargement par HTTP implique l’utilisation d’un binaire iPXE (ipxe.efi ou snponly.efi) qui n’est pas signé et il ne sera PAS POSSIBLE d’activer SECURE BOOT sur les machines clientes.

8.3.2.1. Configuration DHCP hybride

Voici une configuration qui transfère le fichier d’amorçage et les binaires par TFTP si UEFI est activé. Le Secure Boot est possible.

Note

La configuration DHCP hybride ne fonctionne pas pour un déploiement Linux.

Par exemple :

subnet 192.168.110.0 netmask 255.255.255.0 {
option routers 192.168.110.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.110.1;
next-server 192.168.110.30;  # TFTP server (Option 66)

# If not iPXE
if not exists user-class {
  # If legacy BIOS
  if (option vendor-class-identifier = "PXEClient:Arch:00000") {
    filename "boot/pxeboot.n12";
  } else {
    filename "efi/boot/bootmgfw.efi";
  }
}
# If iPXE
else if option user-class = "iPXE" {
  # If legacy BIOS
  if (option vendor-class-identifier = "PXEClient:Arch:00000") {
    filename "http://srvwapt.mydomain.lan/api/v3/baseipxe?uefi=false&keymap=fr";
  } else {
    filename "http://srvwapt.mydomain.lan/api/v3/baseipxe?keymap=fr";
  }
}
}

Pour plus d’informations, vous pouvez consulter le site https://ipxe.org/howto/dhcpd

8.3.2.2. Configuration HTTP

Le démarrage PXE est un processus en deux étapes. D’abord, le chargeur de démarrage UEFI/BIOS téléchargera le binaire iPXE depuis le serveur tftp, puis le binaire iPXE téléchargera le script iPXE et les binaires de démarrage depuis http. C’est pourquoi nous devons avoir une configuration PXE DCHP en deux étapes.

Par exemple :

<!-- global options -->
next-server 192.168.110.30;

option ipxe-url code 175 = text;
option client-architecture code 93 = unsigned integer 16;

<!-- subnet mydomain.lan netmask 255.255.255.0 -->

if option client-architecture = 00:00 {
  if exists user-class and option user-class = "iPXE" {
    filename "http://srvwapt.mydomain.lan/api/v3/baseipxe?uefi=false&keymap=fr";
  }
  else{
    filename "undionly.kpxe";
  }

} else {
  if exists user-class and option user-class = "iPXE" {
    option ipxe-url "http://srvwapt.mydomain.lan:80/";
    filename "http://srvwapt.mydomain.lan/api/v3/baseipxe?keymap=fr";
  }
  else{
    filename "snponly.efi";
  }
}

Pour plus d’informations, vous pouvez consulter le site https://ipxe.org/howto/dhcpd

Attention

Si votre serveur DHCP ne vous permet pas de définir de telles conditions, vous pouvez exécuter le script suivant qui compilera des fichiers de démarrage personnalisés :

/opt/wapt/waptserver/scripts/compile_ipxe.sh

Il créera 3 fichiers de démarrage que vous pourrez utiliser sur votre serveur DHCP : ipxe_custom.efi (UEFI), snponly_custom.efi (UEFI) et undionly_custom.kpxe (Legacy).

8.4. Comment ajouter des ordinateurs à la liste des postes WADS

Pour ajouter un poste de travail, vous devez au moins connaître son nom d’hôte et son adresse mac.

Avec wapt, vous disposez de trois moyens principaux dans le menu supérieur de WADS pour ajouter des ordinateurs.

  • En utilisant le bouton New.

  • En utilisant le bouton Exporter les machines sélectionnés vers WADS.

  • En utilisant le bouton Importer des machines depuis un CSV.

8.4.1. Le bouton Nouvelle machine

Cette option vous permet d’ajouter manuellement des ordinateurs individuels. Cependant, elle ne permet pas de configurer plusieurs postes de travail à la fois.

Si vous avez déjà Configuration et Pilotes, vous pouvez les déposer directement sur le nouveau poste de travail à déployer.

Par exemple :

Déploiement par le bouton nouvelle machine sur la WADS

8.4.2. Le bouton Exporter les machines sélectionnées vers WADS

Cette méthode peut être utilisée pour les ordinateurs qui ont déjà un agent wapt enregistré dans le serveur WAPT.

Par défaut, le bouton n’est pas présent dans la barre de menu. Il peut être activé dans l’onglet inventaire du WAPT.

Note

Pour activer la commande Exporter les machines sélectionnés vers WADS, allez dans l’Inventaire, puis faites un clic droit dans la barre d’outils, sélectionnez Personnaliser la barre d’outils. Dans les « Commandes disponibles », sélectionnez “WADS”, Exporter les machines sélectionnés vers WADS et ajoutez dans les « Commandes de la barre d’outils ».

Vous pouvez maintenant sélectionner plusieurs postes de travail dans l’inventaire WAPT et cliquer sur Exporter les machines sélectionnés vers WADS. Les postes de travail sélectionnés apparaîtront alors dans l’onglet WADS.

8.4.3. L’option d’ajouter depuis un fichier CSV

Cette option permet d’ajouter plusieurs ordinateurs à la fois en utilisant un seul fichier CSV.

Dans le fichier CSV, vous pouvez inclure les colonnes suivantes : « hostname », « mac_addresses », « status », « waiting_to_deploy », « product_key », « deploy_config_name », « driver_bundle », « disk_format », « djoin », « manufacturer », « uuid », “product” et « serial_number ».

Les colonnes minimales requises sont « hostname » et « mac_addresses ».

Exemple de document .csv avec l’exigence minimale :

hostname;mac_addresses
test1;08:00:27:00:fd:c1
test2;08:00:27:00:fd:c2
test3;08:00:27:00:fd:c3

8.5. Déployer une machine Windows via WADS WAPT Enterprise feature WAPT Enterprise feature

Indication

Lignes directrices pour le déploiement de Windows 11 OS

  • Windows 10 → Windows 11 (toute version)

    • Mise à jour complète uniquement, nécessite une ISO.

  • Windows 11 21H2 → Windows 11 22H2 ou 23H2

    • Mise à jour complète uniquement, nécessite une ISO.

  • Windows 11 22H2 → Windows 11 23H2

    • Mise à jour des fonctionnalités via le paquet d’activation (KB5027397).

    ou

    • Mise à niveau complète nécessitant une ISO.

  • Windows 11 21H2 / 22H2 / 23H2 → Windows 11 24H2

    • Mise à jour complète uniquement, nécessite une ISO.

8.5.1. Processus de déploiement iPXE

  1. Utilisation du BIOS/UEFI :

  • l’hôte fait une demande DHCP pour obtenir un IP et la configuration PXE (IP du serveur TFTP et nom du fichier iPXE)

ou

  • l’hôte démarre à partir d’une clé USB qui contient la configuration PXE

Note

Tftp n’est pas un protocole qui ne peut pas être sécurisé, la méthode préférée est donc de démarrer à l’aide d’une clé USB.

  1. Utilisation du BIOS/UEFI :

  • l’hôte fait une requête TFTP pour obtenir iPXE et sa configuration

ou

  • l’hôte exécute la configuration iPXE à partir de la clé USB.

  1. Ensuite, en utilisant iPXE, l’hôte fait une requête HTTPS au Serveur WADS pour obtenir le BCD et le fichier WinPE.

  2. Enfin, en utilisant WinPE, l’hôte contacte le Serveur WADS via HTTP pour obtenir le fichier iso du système d’exploitation et ses fichiers de configuration associés.

Avertissement

  • Clé USB : démarrage sécurisé possible (utilisation des fichiers winpe officiels).

  • Le fichier ipxe fourni par WAPT ne prend pas en charge le démarrage sécurisé (fichier ipxe provenant de https://ipxe.org/).

  • Vous pouvez acheter un fichier ipxe signé sur https://2pintsoftware.com/pricing/ (iPXE Anywhere) afin d’utiliser le démarrage sécurisé.

  • Le déploiement est également possible exclusivement par TFTP, bien qu’il soit très lent.

8.5.2. Exigences avant de commencer

  1. Pour utiliser WADS sur votre Console WAPT, vous devez installer un packaging spécifique sur votre station de gestion.

Deux packages sont disponibles, un seul est nécessaire. Choisissez en fonction de vos besoins :

  • Ce paquet intègre les exigences minimales pour créer un fichier WinPE.

  1. A partir de 2026-06-15, le compte utilisateur utilisant la Console WADS DOIT avoir des droits d’Administrateur local dans les Listes de contrôle d’accès WAPT.

  2. Signer WADS avec votre certificat :

  • Allez dans le menu Outils ‣ Signer Deploy Exe.

Menu Outils dans la Console WAPT
  • Cliquez sur le bouton Sign :

Fenêtre de signature des binaires dans la Console WAPT
  1. Allez dans l’onglet OS Deploy :

Fenêtre principale de la Console WADS

Fenêtre principale de la Console WADS

8.5.3. Ajout des fichiers WinPE

Note

WinPE ne peut pas être créé à partir de la console Linux. Cependant, une fois que WinPE a été téléchargé sur le serveur WAPT (via la console Windows), le déploiement des machines peut être géré à partir de la console WAPT Linux.

WinPE est un système d’exploitation minimal utilisé pour installer, déployer et réparer Windows.

Sur WADS, WinPE est utilisé pour amorcer le déploiement de Windows.

  • Si aucun fichier WinPE n’existe, ou si le fichier WinPE n’est pas à jour cette fenêtre contextuelle apparaîtra.

Boîte de dialogue informant du téléchargement d'un fichier WinPE dans la Console WADS
  • Cliquez ensuite sur Upload WinPE.

  • Choisissez la disposition du clavier. Cette étape est importante car vous allez taper le nom d’hôte dans WinPE en utilisant la disposition de clavier choisie avec cette étape.

  • Sélectionner le certificat avec lequel vous souhaitez signer les fichiers de la clé USB.

Boîte de dialogue pour sélectionner le clavier, les certificats et les pilotes dans la Console WADS

Note

Deux options ont été ajoutées au fichier de configuration WinPE :

Passer au chargeur d’amorçage EFI Microsoft CA 2023 : lorsque cette option est activée, le chargeur d’amorçage EFI est chargé avec le certificat Microsoft 2023. Par défaut, WinPE démarre à l’aide du certificat 2011, qui expirera en juillet 2026. L’activation de cette option garantit la compatibilité avec les exigences modernes en matière de démarrage sécurisé.

Demander une adresse IP statique : si votre environnement de déploiement ne dispose pas de DHCP, vous pouvez utiliser cette option pour demander une adresse IP statique et une configuration réseau pendant le déploiement. Une boîte de dialogue s’affiche sur la machine cible, vous permettant de spécifier manuellement les paramètres réseau requis.

  • Si nécessaire, veuillez ajouter des pilotes de réseau afin de démarrer avec PXE

  • Attendez que le fichier WinPE soit téléchargé sur l’ordinateur d’administration WAPT.

Chargement du fichier WinPE dans la Console WADS
  • Attendez que le fichier WinPE soit téléchargé sur le Serveur WADS.

Le fichier WinPE a été téléchargé avec succès sur le Serveur WADS.

Indication

Après chaque mise à jour, vous devrez re-signer votre fichier WinPE. N’oubliez pas de mettre à jour les pilotes réseau si nécessaire.

8.5.4. Ajout du système d’exploitation ISO

L’étape suivante consiste à ajouter le fichier .iso du système d’exploitation à utiliser pour déployer Windows.

  • Utilisez la dernière version officielle de Windows de Microsoft comme fichier .iso.

Section ISO de la Console WADS

Section ISO de la Console WADS

  • Dans la section Installation ISO de la console principale de WADS, cliquez sur le bouton + pour télécharger le fichier .iso sélectionné.

  • Sélectionnez le fichier .iso et donnez-lui un nom.

Boîte de dialogue permettant de sélectionner le fichier ISO à télécharger sur le Serveur WADS

Boîte de dialogue permettant de sélectionner le fichier ISO à télécharger sur le Serveur WADS

  • Lors du téléchargement, le fichier .iso est signé avec le certificat sélectionné.

Boîte de dialogue informant de la progression de la signature du fichier ISO dans la Console WADS

Boîte de dialogue informant de la progression de la signature du fichier ISO dans la Console WADS

  • Une fois l’étape de signature terminée avec succès, le fichier .iso est téléchargé sur le Serveur WADS.

Boîte de dialogue informant de la progression du téléchargement du fichier ISO dans la Console WADS

Boîte de dialogue informant de la progression du téléchargement du fichier ISO dans la Console WADS

  • Une fois l’étape de téléchargement terminée avec succès, le fichier .iso apparaît dans la section Installation iso de la Console principale de WADS.

Le fichier :file:`WinPE` a été téléchargé avec succès sur le dépôt WADS

Indication

Il est possible de télécharger plusieurs versions .iso de Windows pour différents cas d’utilisation.

8.5.5. Ajouter le fichier de réponse

L’étape suivante consiste à ajouter le fichier de réponse qui sera utilisé pour configurer le déploiement du système d’exploitation Windows.

Section du fichier de réponses de la Console WADS

Section du fichier de réponses de la Console WADS

  • Dans la section Configuration, cliquez sur le bouton + pour configurer le fichier de réponse.

Fenêtre de création du fichier de configuration de réponse dans la Console WADS

Fenêtre de création du fichier de configuration de réponse dans la Console WADS

Options pour le fichier de réponse dans la Console WADS

Options

Description

Nom de la configuration

Définit le nom du fichier de réponse XML.

Nom de l’ISO

Définit le fichier .iso à associer au fichier de réponse XML.

Pour Windows

Définit si vous installez un système d’exploitation Windows ou Linux si cette option n’est pas cochée.

Installer Wapt

Définit s’il faut installer l’Agent WAPT après l’installation du système d’exploitation.

Fichier de configuration

Définit les fichiers de réponses XML modèles à utiliser pour Windows ou le fichier de configuration pour Linux.

Script de post installation

Définit un script de post-installation .bat à exécuter après l’installation du système d’exploitation.

  • Insérez dans le champ Nom de la configuration le nom du fichier de réponse.

  • Sélectionnez avec la liste déroulante Nom de l’ISO le fichier ISO à associer à la configuration de déploiement.

  • Cochez ou décochez la case Installer WAPT pour installer l’Agent WAPT par défaut.

  • Cocher ou décocher la case Pour Windows pour installer le système d’exploitation Windows.

  • Sélectionner le modèle de fichier de réponse à associer à la configuration du déploiement avec le champ Fichier de configuration s’il s’agit du système d’exploitation Windows ; sinon, sélectionner le fichier de configuration pour Linux.

  • Si nécessaire, définir le script de post-installation dans Post install Script, par exemple :

Example 1 : If you want to install specific packages and wait for them all to be installed.

"C:\Program Files (x86)\wapt\wapt-get.exe" -S ping --trycount=10 --retrydelay=5
"C:\Program Files (x86)\wapt\wapt-get.exe" update -S
"C:\Program Files (x86)\wapt\wapt-get.exe" -S install package-name
"C:\Program Files (x86)\wapt\wapt-get.exe" -S install package-name2

Example 2 : If you just want to upgrade, and packages will be installed by OU.
start  cmd /c ping 127.0.0.1 -n 30  ^& start "" "C:\Program Files (x86)\wapt\waptexit.exe"
  • Cliquer sur le bouton Créer pour créer le fichier de réponse.

  • Lorsque cela est fait, la configuration apparaît dans la section Configuration.

Fichier de réponses ajouté au Serveur WADS dans la Console WADS

Fichier de réponses ajouté au Serveur WADS dans la Console WADS

Indication

Il est possible de créer plusieurs configurations de fichiers de réponses pour différentes versions de Windows / Linux et pour différents cas d’utilisation.

8.5.5.1. Substitution of variables in the XML answer file

When WADS writes the XML answer file, some template variables are automatically replaced with values from the deployment context.

8.5.5.1.1. Available variables
{{hostname}}

Replaced with the hostname of the machine.

{{architecture}}

Replaced with the architecture of the ISO image associated with the configuration.

For example, if the machine hostname is PC-001 and the associated ISO architecture is amd64, the generated XML will contain the resolved values:

{{hostname}}     -> PC-001
{{architecture}} -> amd64

Note

The substitution is done when the XML answer file is written. The final XML file therefore no longer contains the {{hostname}} or {{architecture}} variables, but their corresponding values.

8.5.5.2. Selecting the Windows edition from the ISO

When an ISO contains several Windows editions, the edition to install is selected in the XML answer file with the InstallFrom metadata block.

For example, the following configuration selects the Professional edition:

<InstallFrom>
    <MetaData>
        <Key>/IMAGE/FLAGS</Key>
        <Value>Professional</Value>
    </MetaData>
</InstallFrom>

The Key defines which image metadata is used to select the Windows image, and the Value defines the expected value for the selected image.

In this example, Windows Setup searches the image contained in the ISO whose /IMAGE/FLAGS value is Professional.

8.5.5.2.1. Selecting the edition by image index

It is also possible to select the Windows edition by using the image index from the install.wim or install.esd file.

Before running DISM, the Windows ISO must first be extracted or mounted in order to access the image file located in the sources directory.

For example, after extracting the ISO, you can list the available images with the following command:

DISM /Get-WimInfo /WimFile:"C:\tranquilit\Win11_25H2_French_x64\sources\install.wim"

Example output:

Index : 6
Nom : Windows 11 Professionnel
Description : Windows 11 Professionnel

In this example, Windows 11 Professionnel corresponds to index 6.

The XML answer file can therefore select this image with /IMAGE/INDEX:

<InstallFrom>
    <MetaData>
        <Key>/IMAGE/INDEX</Key>
        <Value>6</Value>
    </MetaData>
</InstallFrom>

Windows Setup will then install image index 6 from the install.wim file.

If the ISO contains an install.esd file instead of an install.wim file, adapt the command accordingly:

DISM /Get-WimInfo /WimFile:"C:\tranquilit\Win11_25H2_French_x64\sources\install.esd"

Microsoft documentation for the InstallFrom metadata block is available here:

https://learn.microsoft.com/fr-fr/windows-hardware/customize/desktop/unattend/microsoft-windows-setup-imageinstall-dataimage-installfrom-metadata

Note

The value configured in the XML answer file must match one of the images available in the ISO. The image indexes can differ depending on the ISO used, so they must be checked from the install.wim or install.esd file associated with the configuration.

8.5.5.3. Running the WADS post-installation script

The WADS post-installation script can be launched in two different ways, depending on the XML answer file content.

8.5.5.3.1. Method 1: using a scheduled task

If the XML answer file contains the following block:

<component name="Microsoft-Windows-Deployment"
           processorArchitecture="{{architecture}}"
           publicKeyToken="31bf3856ad364e35"
           language="neutral"
           versionScope="nonSxS"
           xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <RunSynchronous>
        <RunSynchronousCommand wcm:action="add">
            <Path>"c:\installdir\wads.exe" --setup-startup-script="c:\installdir\SetupComplete.cmd"</Path>
            <Order>2</Order>
            <Description>postinstall</Description>
        </RunSynchronousCommand>
    </RunSynchronous>
</component>

WADS installs a scheduled task.

This scheduled task runs at system startup and launches the following script:

c:\installdir\SetupComplete.cmd

At the end of the script execution, the scheduled task is automatically disabled.

Note

The XML answer file provided by default in WAPT contains this configuration block. By default, WAPT therefore uses the startup-script method through a scheduled task.

8.5.5.3.2. Method 2: using SetupComplete.cmd

If the XML block shown above is not present, WADS uses the standard Microsoft method described here:

https://learn.microsoft.com/fr-fr/windows-hardware/manufacture/desktop/add-a-custom-script-to-windows-setup?view=windows-11

In this case, the post-installation script is written to:

%WINDIR%\Setup\Scripts\SetupComplete.cmd

With this method, the computer startup is blocked until the post-installation script has finished running.

Avertissement

This method may not work in some cases.

Microsoft indicates that this mechanism is disabled when using OEM product keys, except for Enterprise editions and Windows Server operating systems.

8.5.6. Joindre l’hôte à un domaine Active Directory

Vous pouvez utiliser votre propre fichier de réponse avec WADS mais par défaut, WADS intègre 2 types de fichiers de réponse pour Windows :

Mettre à jour cette partie avec votre compte de service d’adhésion, vous pouvez spécifier une UO si vous le souhaitez. Sinon, supprimez simplement la ligne MachineObjectOU.

<Identification>
  <Credentials>
    <Domain>mydomain.lan</Domain>
    <Password>password</Password>
    <Username>wadsjoin</Username>
  </Credentials>
  <JoinDomain>mydomain.lan</JoinDomain>
  <MachineObjectOU>OU=MyOu,OU=MyParentOu,DC=MyDomain,DC=lan</MachineObjectOU>
</Identification>

8.5.6.1. How the Djoin data is used by Windows

The djoin mechanism allows a machine to join an Active Directory domain offline, using provisioning information injected into the XML answer file.

In the XML configuration used for djoin, the following block is used:

<component name="Microsoft-Windows-UnattendedJoin"
           processorArchitecture="{{architecture}}"
           publicKeyToken="31bf3856ad364e35"
           language="neutral"
           versionScope="nonSxS"
           xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <OfflineIdentification>
        <Provisioning>
            <AccountData>{{djoin}}</AccountData>
        </Provisioning>
    </OfflineIdentification>
</component>

The {{djoin}} variable is replaced with the machine-specific djoin value when the XML answer file is written.

This value contains the information required to provision the machine offline in the domain. During Windows installation, the Microsoft-Windows-UnattendedJoin component reads the information from the OfflineIdentification block and uses it to join the machine to the domain without requiring manual input.

Microsoft documentation for this component is available here:

https://learn.microsoft.com/fr-fr/windows-hardware/customize/desktop/unattend/microsoft-windows-unattendedjoin-offlineidentification

Note

WAPT/WADS does not directly join the machine to the domain at this step. It injects the djoin data into the XML answer file, then Windows uses this information during installation to perform the offline domain join.

8.5.7. Ajout de pilotes

L’étape suivante consiste à ajouter les paquets de pilotes qui seront utilisés lors du déploiement du système d’exploitation Windows.

Section des pilotes de la Console WADS

Section des pilotes de la Console WADS

  • Dans la section Drivers, cliquez sur le bouton + pour ajouter un pack de pilotes au Serveur WADS.

Cette fenêtre vous permet de télécharger les paquets de pilotes à associer au déploiement Windows.

Fenêtre pour la création des paquets de pilotes dans la Console WADS

Fenêtre pour la création des paquets de pilotes dans la Console WADS

Options pour les paquets de pilotes dans la Console WADS

Options

Description

Choisir le chemin

Définit le chemin d’accès au dossier contenant les paquets de pilotes.

Nom

Définit le nom du paquet de pilotes.

  • Cliquez sur le bouton Save, le téléchargement des bundles de pilotes commence.

Boîte de dialogue informant de la progression du téléchargement des paquets de pilotes dans la Console WAPT

Boîte de dialogue informant de la progression du téléchargement des paquets de pilotes dans la Console WAPT

  • Une fois téléchargé, le pack de pilotes apparaît dans la section Drivers de la Console WADS.

Le fichier :file:`WinPE` a été téléchargé avec succès sur le Serveur WADS

Le fichier WinPE a été téléchargé avec succès sur le Serveur WADS

Il est possible de créer plusieurs packs de pilotes pour différentes versions de Windows et pour différents cas d’utilisation.

8.5.7.1. How Windows finds drivers during installation

During Windows installation, drivers can be provided through the XML answer file used by WAPT/WADS.

The default XML configuration provided by WAPT contains the following block:

<settings pass="offlineServicing">
    <component name="Microsoft-Windows-PnpCustomizationsNonWinPE"
               processorArchitecture="{{architecture}}"
               publicKeyToken="31bf3856ad364e35"
               language="neutral"
               versionScope="nonSxS"
               xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <DriverPaths>
            <PathAndCredentials wcm:keyValue="1" wcm:action="add">
                <Path>c:\installdir\drivers</Path>
            </PathAndCredentials>
        </DriverPaths>
    </component>
</settings>

When you declare a driver bundle in WAPT, WADS recreates the provided driver folder in the following directory:

c:\installdir\drivers

The bundle content is copied as-is into this directory.

The XML block tells Windows Setup to use this directory as a driver source. Windows will therefore search for the required drivers in:

c:\installdir\drivers

You must provide drivers in a format compatible with Windows installation, notably with the required .inf files.

Microsoft documentation for this component is available here:

https://learn.microsoft.com/en-us/windows-hardware/customize/desktop/unattend/microsoft-windows-pnpcustomizationsnonwinpe-driverpaths

Note

WAPT/WADS does not directly select which drivers to install. It makes the driver folder available, then Windows selects the drivers it needs during installation.

Il est possible d’utiliser les fichiers .cab de OEM.

Il est également possible d’exporter les pilotes d’un hôte existant qui fonctionne bien en utilisant une commande Powershell.

Export-WindowsDriver -Online -Destination D:\Drivers

Indication

Il est possible de créer des filtres pour les pilotes. Cela permet de gagner du temps lors des déploiements futurs en spécifiant le fabricant et le produit auquel le pilote est destiné.

Ajouter le nom du pilote et le filtre, en respectant la casse des informations renvoyées par le serveur WAPT.

Exemple : Pour un Lenovo (fabricant) 20HES7LV1M (produit), vous pouvez créer le filtre LENOVO\20H*.

The powershell command will be : Get-WmiObject Win32_ComputerSystem | Select Model,Manufacturer

Dans l’image ci-dessous, vous pouvez observer que le pilote de configuration efficace est DriversVM. Cela s’explique par le fait que le fabricant et les détails du produit correspondent à l’un des filtres.

Exemple de filtres de pilotes

Exemple de filtres de pilotes

Deux façons de créer un filtre

1/ Lors de l’ajout d’un pilote dans l’onglet pilote de la fenêtre, vous pouvez compléter filter.

2/ En sélectionnant une machine et en faisant un clic droit → change drivercreate driver bundle.

Comment utiliser le filtre automatique de pilotes

Sélectionner la machine → auto select driver bundle → Le pilote correspondant au filtre apparaitra.

8.5.8. Démarrer l’hôte pour ré-imager avec WADS

WADS permet 2 méthodes de démarrage de l’hôte pour ré-imager :

8.5.8.1. Démarrage de l’hôte avec une clé USB

Note

La clé USB utilisée DOIT être formatée en FAT32 et vide.

  • Insérez la clé USB dans le poste d’administration de WAPT et cliquez sur le bouton Créer une clé USB WinPE pour lancer le processus.

  • Choisissez la disposition du clavier. Cette étape est importante car vous allez taper le nom d’hôte dans WinPE en utilisant la disposition de clavier choisie avec cette étape.

  • Sélectionner le certificat avec lequel vous souhaitez signer les fichiers de la clé USB

Boîte de dialogue pour sélectionner le clavier, les certificats et les pilotes dans la Console WADS
  • Cliquez sur le Transférer WinPE pour formater la clé USB et copier le fichier WinPE.

  • Démarrez le menu de démarrage de l’ordinateur en utilisant l’option de la clé USB et allez à l’étape exécuter le déploiement.

Note

Vous pouvez Exporter vers un fichier zip lorsque vous créez une clé USB WinPE si vous ne pouvez pas utiliser une clé USB pour ensuite graver le contenu de la clé USB sur un CD / DVD à la place.

Bouton WADS pour sélectionner l'exportation vers un fichier zip

Bouton WADS pour sélectionner l’exportation vers un fichier zip

8.5.8.2. Démarrage de l’hôte avec le réseau

Le démarrage à partir du LAN nécessite :

  • Un serveur TFTP fonctionnant correctement ;

  • Un serveur DHCP qui fonctionne correctement ;

  • Avoir le port 69 ouvert sur le Serveur WAPT pour le trafic entrant, et avoir tftp conntrack activé sur les pare-feu intermédiaires si vous avez des pare-feu entre le serveur et l’ordinateur client.

  • Démarrez le menu de démarrage de l’ordinateur en utilisant l’option LAN et allez à l’étape exécuter le déploiement.

8.5.9. Déploiement de l’image Windows

Il y a 3 choix lors du démarrage avec iPXE :

fenêtre du menu de démarrage iPXE

fenêtre du menu de démarrage iPXE

  • Disque local de démarrage pour démarrer normalement à partir du stockage local ;

  • Enregistrer l’hôte (ipxe) pour enregistrer l’hôte avec le Serveur WADS en utilisant la méthode iPXE ;

  • Enregistrer l’hôte (winpe) pour enregistrer l’hôte auprès du Serveur WADS en utilisant la méthode WinPE.

  • Si vous choisissez Enregistrer un hôte (ipxe), définissez un nom d’hôte.

Fenêtre de terminal texte demandant un nom d'hôte lors de l'enregistrement par la méthode iPXE

Fenêtre de terminal texte demandant un nom d’hôte lors de l’enregistrement par la méthode iPXE

Avertissement

Le clavier est de type qwerty

  • Rafraîchissez la Console WADS avec F5, l’hôte apparaît dans l’onglet OS Deploy.

Hôte en attente de déploiement

Hôte en attente de déploiement

À ce moment, l’état Waiting to Deploy de l’hôte est False.

  • Faites un clic droit sur l’hôte pour ouvrir la liste des menus.

Liste de menu WADS
  • Allez dans Charger une config et sélectionnez un fichier de réponse XML.

  • Cliquez sur Start Deploy, le statut Waiting to Deploy de l’hôte passe à True.

La machine est prête à être ré-imagée
  • Redémarrez l’hôte avec la même option de démarrage que précédemment (USB ou LAN), Windows commencera à s’installer.

  • Lorsque l’installation est terminée, l’onglet OS Deploy, l’état passe à Done.

8.5.10. Formater le disque de la machine

Lorsque votre machine est prête à être redéployée, si nécessaire, vous pouvez formater son disque en utilisant la méthode UEFI ou Legacy.

8.5.10.1. Do not configure disk formatting in the XML answer file

Disk formatting must not be configured in the XML answer file used by WADS.

The disk is already prepared by WAPT before Windows installation starts. The deployment flow is:

  1. WAPT formats the machine disk.

  2. WAPT downloads the ISO image associated with the configuration.

  3. WAPT extracts the ISO content onto the freshly prepared partition.

  4. Windows Setup then uses this existing partition to continue the installation.

The XML blocks provided by WAPT must therefore not recreate or reformat partitions. They must only tell Windows Setup which existing partition must be used for the installation.

For example, the XML answer file can reference an already existing partition:

<InstallTo>
    <PartitionID>3</PartitionID>
    <DiskID>0</DiskID>
</InstallTo>

In this example, Windows Setup installs the system on partition 3 of disk 0.

Microsoft documentation for the InstallTo directive is available here:

https://learn.microsoft.com/fr-fr/windows-hardware/customize/desktop/unattend/microsoft-windows-setup-imageinstall-dataimage-installto-partitionid

If the partitioning scheme or disk formatting must be changed, it must be done in the formatting script provided by the WAPT Console, not in the WADS XML answer file.

WAPT documentation for the disk formatting script is available here:

https://www.wapt.fr/fr/doc/wapt-wads.html#format-host-disk

Avertissement

Do not add disk formatting instructions to the WADS XML answer file.

The disk is prepared beforehand by WAPT. The XML answer file must only reference partitions that already exist.

Pour ce faire, cliquer avec le bouton droit de la souris sur la machine puis Configurer le formatage du disque.

Menu de clic droit sur la machine

Vous pouvez ensuite choisir le script UEFI ou Legacy et personnaliser la configuration du formatage du disque. Voici un exemple avec le script Legacy :

Créer une configuration de format pour le disque dur