Procédure
rds
Installation et configuration des Services Bureau à distance (RDS)
Mise en place complète d'un serveur RDS sous Windows Server 2022 : passerelle, gestionnaire de licences, collection RemoteApp, packaging MSIX et signature d'un certificat auto-signé pour publier des applications.
Ce TP a été réalisé dans le cadre de la formation YNOV. L'objectif : déployer un serveur RDS qui publie des applications RemoteApp à des utilisateurs de l'Active Directory, en passant par une passerelle sécurisée par certificat. On termine par le packaging d'une application via MSIX et sa signature avant publication.
1. Prérequis
Machine 1 — Serveur
- OS : Windows Server 2022
- RAM : 4 Go
- Stockage : 40 Go
- IP statique :
192.168.10.10
Machine 2 — Client
- OS : Windows 11
- RAM : 6 Go
- Stockage : 80 Go
- IP statique :
192.168.10.50
2. Installation des services Bureau à distance
Créer une machine Windows Server, l'ajouter au domaine avec un nom spécifique — pour ma part SRV-APP.
Une fois connecté avec un compte d'administration, ouvrir le Gestionnaire de serveur. Cliquer sur Gérer puis Ajouter des rôles et fonctionnalités.
Sélectionner Installation basée sur un rôle ou une fonctionnalité.
Cocher Services Bureau à distance.
Dans les fonctionnalités, cocher Assistance à distance.
Dans les services de rôles, cocher tous les services sauf « Hôte de virtualisation des services Bureau à distance ».
Confirmer et attendre la fin de l'installation. Une fois le serveur redémarré, les services sont accessibles via le Gestionnaire de serveur.
Pour utiliser ce service, ajouter un dernier rôle. Relancer Ajouter des rôles ou des fonctionnalités et sélectionner cette fois Installation des services Bureau à distance.
Sélectionner Démarrage rapide car tous les services seront sur le même serveur.
Sélectionner Déploiement basé sur une session — la connexion RDS se fera via les utilisateurs de l'AD.
Sélectionner le serveur puis cliquer sur Déployer.
Une fois déployé, on retrouve les outils des Services Bureau à distance dans le Gestionnaire de serveur.
Vérifier dans les propriétés système que Assistance à distance et Bureau à distance sont autorisés.
3. Configuration de la passerelle des services RDS
L'objectif : forcer les machines clientes à passer par notre serveur. Sur la vue d'ensemble, cliquer sur Passerelle des services.
Sélectionner le serveur puis, pour le nom du certificat, entrer nom_machine + nom_de_domaine.
Confirmer puis attendre la fin du téléchargement.
Avant de fermer, cliquer sur Configurer le certificat.
Cliquer sur Créer un certificat…, donner le même nom que le certificat SSL, le stocker et cocher la case en dessous.
Cliquer sur Appliquer. Répéter l'opération sur les 3 autres services en sélectionnant Sélectionner un certificat existant… et en prenant le certificat qui vient d'être créé + son mot de passe (un par un). Le résultat final :
Cliquer sur OK. La passerelle est configurée. Aller dans Tâches → Modifier les propriétés de déploiement :
Dans Passerelle des serveurs, le serveur doit bien être renseigné. Si la méthode d'ouverture de session ne correspond pas à celle ci-dessous, la modifier.
4. Configurer le gestionnaire de licences
Toujours dans la vue d'ensemble, cliquer sur Gestionnaire de licences. Sélectionner le serveur, confirmer, attendre la fin du téléchargement.
Cliquer sur Vérifier les propriétés du Gestionnaire de licences des services Bureau à distance pour le déploiement. Comme la connexion se fera via les utilisateurs AD, sélectionner Par utilisateur puis Appliquer et OK.
Le gestionnaire de licences est maintenant configuré.
5. Configurer la collection RemoteApp
Dans l'onglet Collections, supprimer celle qui est créée par défaut pour en créer une à nous. Aller dans Tâches → Créer une collection de sessions.
La nommer comme on le souhaite.
Sélectionner le serveur puis, dans Groupes utilisateurs, choisir les groupes autorisés à lancer les applications via l'interface web. Pour ma part, j'ai mis tous les utilisateurs du domaine — c'est restrictible si besoin.
Décocher Activer les disques de profil utilisateur.
Confirmer, attendre, fermer.
On va maintenant sélectionner les applications à publier en RemoteApp. Dans Collections, sélectionner celle qu'on vient de créer puis Publier des programmes RemoteApp.
6. Création du fichier MSIX
On va packager 7-Zip en MSIX. Le procédé se répète pour chaque application supplémentaire.
Sur la machine cliente, aller sur le Microsoft Store et installer MSIX Packaging Tool.
Sélectionner Package d'installation.
Sélectionner Créer un package sur cet ordinateur.
Récupérer le .exe de 7-Zip depuis un navigateur et l'indiquer à l'utilitaire.
Renseigner les informations obligatoires du formulaire.
Faire Suivant jusqu'à cette page puis Créer.
Le fichier .msix est créé. Le déplacer ensuite vers le serveur RDS.
7. Signature du fichier MSIX (auto-signé)
Pour utiliser le logiciel sur le serveur RDS, créer un certificat auto-signé. Les commandes PowerShell suivantes sont à adapter selon l'application packagée.
Créer le certificat auto-signé :
$cert = New-SelfSignedCertificate -Type CodeSigningCert -Subject "CN=7zip" -CertStoreLocation Cert:\LocalMachine\My
Exporter la clé publique dans un .cer pour pouvoir l'installer sur d'autres machines :
Export-Certificate -Cert $cert -FilePath C:\Packages\7zip.cer
Convertir le mot de passe en SecureString puis exporter le certificat avec sa clé privée dans un .pfx protégé par mot de passe :
$pwd = ConvertTo-SecureString -String "1234" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath C:\Packages\7zip.pfx -Password $pwd
Signer le package MSIX avec le .pfx pour qu'il soit reconnu comme application fiable :
signtool sign /fd SHA256 /f C:\Packages\7zip.pfx /p 1234 "C:\Packages\7zip.msix"
Installer le package pour tous les utilisateurs du système :
Add-AppxProvisionedPackage -Online -PackagePath C:\Packages\7zip.msix -SkipLicense
Publier 7-Zip en application RemoteApp sur le serveur RDS :
New-RDRemoteApp -CollectionName "RemoteApp" -Alias "7zip" -DisplayName "7-Zip" -FilePath "C:\Windows\System32\cmd.exe" -CommandLineSetting Require -RequiredCommandLine '/c start "" shell:AppsFolder\7zip_kc7rvhsejyqfe!App'
Redémarrer le serveur. Dans l'interface RDS, onglet Collections → RemoteApp, l'application doit apparaître.
Répéter les étapes 6 et 7 pour chaque application supplémentaire à publier.
8. Connexion aux programmes RemoteApp
Le serveur est opérationnel. Sur la machine cliente, dans un navigateur :
https://nom_du_serveur.nom_du_domaine/rdweb
Renseigner les identifiants de l'utilisateur puis cliquer sur S'inscrire.
Les applications de la collection apparaissent. En sélectionner une et, dans Téléchargements, ouvrir le fichier .rdp.
Cliquer sur Connexion, renseigner les identifiants en précisant le nom de domaine. L'application est lancée à distance — les ressources sont sur le serveur RDS, la machine cliente ne consomme presque rien.
9. Annexes
Architecture simplifiée
Bonus — Publication d'une troisième application
Après avoir répété les parties 6 et 7, la nouvelle application apparaît dans Collections → RemoteApp.
Elle est aussi visible côté client sur l'interface web.
Désinstallation d'un package MSIX
Pour désinstaller une application (exemple avec 7-Zip) — désinstaller pour tous les utilisateurs :
Get-AppxPackage -AllUsers 7zip | Remove-AppxPackage -AllUsers
Supprimer le provisionnement (important en environnement serveur) :
Get-AppxProvisionedPackage -Online | Where-Object {$_.DisplayName -like "7zip"} | Remove-AppxProvisionedPackage -Online
Le serveur RDS est en place, les utilisateurs de l'AD peuvent lancer leurs applications depuis n'importe quel poste via l'interface RDWeb. Côté infra : c'est plus léger que de déployer chaque appli sur chaque poste, et la gestion des licences se centralise.