Configurer un serveur opsi
Introduction
Ce guide propose une description détaillée du processus de configuration d’un serveur opsi permettant de déployer efficacement des installations Windows et d’automatiser l’inscription des appareils dans Relution. L’objectif est de mettre en place un serveur opsi fonctionnel, capable d’installer des systèmes d’exploitation Windows sur des appareils clients via le netboot, tout en les intégrant de manière transparente à Relution pour une gestion centralisée.
Ce guide couvre toutes les étapes essentielles, y compris l’installation et la configuration du serveur opsi, ainsi que la préparation des fichiers d’installation de Windows et du Windows Preinstallation Environment (WinPE). Il explique également le processus d’automatisation de l’inscription dans Relution à l’aide de produits opsi locaux.
Glossaire
| Terme | Explication |
|---|---|
| Console d’administration | Désigne l’interface utilisateur incluse dans le serveur opsi et accessible sur https://localhost:4447. |
| configed | Désigne l’application Java supplémentaire qui peut être exécutée sur n’importe quel appareil pour se connecter au serveur opsi. |
| Console de débogage client | Désigne l’interface utilisateur de l’agent opsi, accessible sur https://<opsi-client-IP>:4441. |
Configuration du serveur opsi
Cette section vous guide à travers le processus de configuration du serveur opsi et fournit une description détaillée des configurations, des étapes d’installation et de la préparation des paquets nécessaires.
Installation du serveur
Nous recommandons l’installation basée sur Docker pour mettre en place le serveur opsi dans des environnements Linux. Notez cependant que l’installation Docker ne peut pas être utilisée sur des appareils macOS en raison de problèmes de compatibilité avec le serveur TFTP intégré. Pour les systèmes macOS, il convient d’utiliser la VirtualBox préconfigurée →.
Suivez les instructions de la documentation opsi ci-dessous pour configurer le serveur opsi-config. Après l’installation, la console d’administration est accessible sur https://localhost:4447. Téléchargez également l’application Java → pour configed.
Documentation
Installation des paquets opsi requis
Ouvrez la console d’administration et accédez à l’onglet Terminal. Dans le terminal, utilisez la commande suivante pour installer les paquets opsi requis :
opsi-package-updater -v install <nom-du-paquet>
Vous trouverez un aperçu de tous les produits locaux et netboot disponibles dans le dépôt opsi →.
Installez les paquets suivants :
| Paquet | Description |
|---|---|
| opsi-client-agent | Client installé sur l’appareil pour exécuter des commandes |
| opsi-script | Utilisé par l’agent client pour exécuter des scripts opsi |
| opsi-uefi-netboot | Requis pour le netboot UEFI afin de modifier l’ordre de démarrage |
| opsi-winpe | Crée un WinPE sur l’appareil |
| hwaudit (optionnel) | Outil d’inventaire qui collecte des informations sur l’appareil |
Inscription des clients
Cette section traite de l’inscription auprès du serveur opsi des appareils sur lesquels un système d’exploitation Windows est déjà installé. L’agent client opsi est installé sur l’appareil pour établir la communication avec le serveur, permettant un contrôle centralisé et l’exécution d’actions.
Pour les clients sans Windows installé, des étapes supplémentaires sont nécessaires pour installer le système d’exploitation via le netboot. Dans ce cas, consultez la documentation officielle d’opsi pour des instructions détaillées sur l’initialisation des clients.
L’agent client opsi peut être téléchargé depuis https://<opsi-server-ip>:4447/public/opsi-client-agent/. Après l’installation sur l’appareil, l’adresse du serveur opsi et les identifiants d’un compte administrateur doivent être saisis.
Une fois l’inscription terminée, le client apparaît dans l’inventaire des appareils de configed. Pour vérifier la connexion entre le serveur opsi et le client, un message contextuel peut être envoyé (menu supérieur > Client > Envoyer un message contextuel).
Installez le produit netboot UEFI en définissant l’action souhaitée sur une fois.
L’onglet Fichiers journaux contient des informations détaillées pour dépanner l’agent client opsi et l’image de démarrage Linux. Cela est utile pour déboguer l’installation de produits locaux et netboot.

Documentation
Préparation des fichiers d’installation Windows
Cette section fournit des instructions pour obtenir le fichier ISO Windows nécessaire, créer un environnement WinPE compatible et organiser ces fichiers dans la structure de répertoires requise pour les produits netboot. Dans cet exemple, Windows 11 a été installé sur l’appareil.
ISO Windows et WinPE
Pour préparer le serveur opsi au déploiement d’installations Windows, plusieurs composants clés sont nécessaires. Vous avez d’abord besoin du fichier ISO Windows pour la version spécifique que vous souhaitez installer, par exemple Windows 11. Le fichier ISO peut être téléchargé depuis le site officiel de Microsoft.
Ensuite, un WinPE doit être créé. Le WinPE doit correspondre à la version de l’image Windows que vous déployez. Cela peut être réalisé en utilisant le paquet opsi-winpe, qui nécessite l’installation de Windows ADK et du plugin PE. Alternativement, le WinPE peut être créé directement avec Windows ADK, comme décrit dans la documentation opsi.
La documentation sur les produits netboot → décrit deux options pour créer un WinPE :
- Utiliser le paquet
opsi-winpe(Windows ADK et le plugin PE → doivent être installés !) - Utiliser Windows ADK.
Configurer la structure de répertoires pour le produit netboot
Installez le paquet wrapper approprié pour votre image Windows depuis le dépôt opsi Netboot → à l’aide du gestionnaire de paquets, par exemple opsi-local-image-win11-x64_4.3.0.2-13 pour Windows 11.
Un nouveau répertoire est ajouté sur votre serveur opsi (par exemple /var/lib/opsi/depot/win11-x64). Les fichiers de l’image Windows et les fichiers WinPE doivent être placés dans les répertoires correspondants (voir aperçu de la structure de répertoires →).
Fichiers d’installation
Le contenu du fichier ISO Windows doit être déplacé dans le répertoire installfiles.
WinPE
Le WinPE doit être déplacé dans le répertoire winpe.
Extrayez tous les fichiers des sous-répertoires (fwfiles, media, mount) et placez-les au niveau racine. Des problèmes de détection de
setup.exepeuvent survenir, il convient donc de placer également les répertoires au niveau racine.
À la fin, tous les fichiers et répertoires du WinPE se trouvent au niveau racine du répertoire suivant :
/var/lib/opsi/depot/win11-x64/winpe/
├── fwfiles
├── media
├── mount
├── bg-bg
├── Boot
├── bootmgr
├── bootmgr.efi
├── cs-cz
├── da-dk
├── de-de
├── EFI
├── el-gr
├── en-gb
├── en-us
├── es-es
├── es-mx
├── et-ee
├── fi-fi
├── fr-ca
├── fr-fr
├── hr-hr
├── hu-hu
├── it-it
├── ja-jp
├── ko-kr
├── lt-lt
├── lv-lv
├── nb-no
├── nl-nl
├── pl-pl
├── pt-br
├── pt-pt
├── ro-ro
├── ru-ru
├── sk-sk
├── sl-si
├── sources
├── sr-latn-rs
├── sv-se
├── tr-tr
├── uk-ua
├── zh-cn
└── zh-tw
Documentation
Configurer le serveur DHCP
Pour configurer un serveur DHCP pour le démarrage PXE, des options spécifiques doivent être définies afin de fournir aux clients PXE les informations nécessaires pour localiser le serveur TFTP et télécharger le fichier de démarrage (bootloader). Ces options sont généralement désignées comme les options DHCP 66 (serveur TFTP) et 67 (fichier de démarrage).
Si votre routeur ne propose pas d’interface pour configurer ces options, par exemple si vous utilisez un serveur DHCP Linux ou Windows, les options suivantes doivent être ajoutées au fichier dhcpd.conf :
next-server <opsi-server-IP>;
filename "opsi/opsi-linux-bootimage/loader/opsi-netboot.efi";
Démarrer le netboot
Pour lancer l’installation d’un produit netboot, accédez à l’onglet Produits netboot dans l’interface Configed. Réglez l’action demandée du produit souhaité sur Setup et cliquez sur l’icône d’enregistrement dans le coin supérieur gauche.
Une fois l’action envoyée, vous pouvez surveiller le processus en consultant les journaux dans les détails du client de configed ainsi que dans la console de débogage client. Ces journaux indiquent si le client opsi a bien reçu et traité l’action.
Une fois ces étapes terminées, le client Windows recherchera des sources netboot lors du prochain redémarrage et lancera le processus d’installation.

Pour le dépannage, vous pouvez exécuter les commandes suivantes pour observer le trafic TFTP sur le serveur opsi :
sudo tcpdump -i lo0 port 69
journalctl -f
Documentation
Pour les installations de Windows 11, vous devez vous assurer que l’appareil prend en charge le TPM 2.0. Vérifiez dans le menu du BIOS si l’option est activée. Il est parfois nécessaire de désactiver puis réactiver le TPM, ou de le réinitialiser au prochain redémarrage.
Inscription dans Relution
Cette section décrit le processus d’inscription des appareils dans Relution à l’aide du paquet relution-enrollment. Ce produit automatise l’installation d’un paquet de provisionnement via PowerShell, garantissant ainsi une intégration transparente des appareils dans Relution.
Préparer le paquet de provisionnement
Un paquet de provisionnement doit être créé conformément aux instructions relatives à l’inscription en masse Windows →.
Le paquet doit être nommé relution afin que le script opsi puisse reconnaître le bon fichier.
Installer le paquet opsi pour l’inscription Relution
Le paquet relution-enrollment est disponible en version expérimentale dans le dépôt opsi public →.
Téléchargez le fichier relution-enrollment_<package-version>.opsi avec la commande wget et exécutez la commande suivante pour installer le paquet opsi afin qu’il soit disponible dans l’interface configed :
opsi-cli package install relution-enrollment-<package-version>.opsi
Après l’installation, le paquet est disponible dans le dossier de dépôt (var/lib/opsi/depot). Placez le paquet de provisionnement généré dans ce dossier et exécutez opsi-set-rights dans ce répertoire.
/var/lib/opsi/depot/relution-enrollment/
├── enrollment-opsiscript
├── relution.ppkg
├── relution-enrollment.files

Installer le produit
Pour installer le paquet, sélectionnez le client et accédez à l’onglet Localboot products. Pour le produit relution-enrollment, réglez l’action souhaitée sur une fois. Enregistrez l’état et déclenchez une action on_demand (Menu > Client > Déclencher l’événement opsiclientd > on_demand).
Comme la commande PowerShell d’installation du paquet de provisionnement marque toujours l’action comme réussie, vérifiez les journaux pour repérer d’éventuelles erreurs. L’erreur « Package installation failed, error code -2147024713 (800700B7) » indique qu’un paquet portant le même identifiant est déjà installé.
Si le profil de provisionnement a déjà été installé, il doit d’abord être supprimé.

Conseils de dépannage
Cette section décrit les problèmes courants pouvant survenir lors de la configuration du serveur opsi et de l’installation netboot, ainsi que des solutions ou des références vers la documentation pertinente pour le dépannage :
- Erreur : Unable to get geometry for disk ‘/dev/nvme0n1’ →
- Définir le mot de passe de l’utilisateur root en configurant le paramètre hôte
netboot.linux-bootimage.cmdline.pwh. - Si l’erreur survient, appuyez sur
Ctrl + Alt + F3/F4/F5pour basculer vers le terminal actif. - Saisissez les identifiants root et le mot de passe.
- Exécutez la commande
sgdisk --zap-all /dev/nvme0pour supprimer la partition. - Revenez à l’autre terminal et relancez le netboot.
- Pour plus d’informations, consultez la documentation sur les produits netboot →.
- Définir le mot de passe de l’utilisateur root en configurant le paramètre hôte
- opsi winPE est vide → : déplacez tous les fichiers des sous-répertoires WinPE (par exemple media) vers le niveau racine.
- L’initialisation de WinPE ne fonctionne pas →