RDS Windows Server 2022 : remettre en service vos licences CAL après réinstallation (procédure complète)

Après une réinstallation de Windows Server 2022, vos CAL RDS « Retail » semblent actives mais ne sont plus utilisées ? Suivez ce guide pas‑à‑pas pour remettre à zéro ou transférer le serveur de licences, réactiver le pack de 500 CAL et permettre à nouveau l’ouverture de sessions RDP.

Sommaire

Vue d’ensemble de la question

Un écran bleu a conduit à une réinstallation (ou un ré‑approvisionnement) d’un serveur Windows Server 2022 qui faisait office de serveur de licences Remote Desktop Services. Dans le Gestionnaire de licences, le pack « Retail » de 500 CAL apparaît toujours installé/activé, mais aucune session RDP ne consomme de licence. Les causes les plus fréquentes sont :

  • Le rôle “Service des licences” n’a pas été réinstallé/activé (ou il a été réinstallé mais jamais « activé » auprès du Clearinghouse).
  • Le mode de licences de l’hôte de sessions RD n’est pas défini (ou ne correspond pas au type de CAL achetées : « Par utilisateur » vs « Par périphérique »).
  • Les hôtes de sessions ne connaissent pas le serveur de licences (découverte AD non fonctionnelle, GPO manquante, noms DNS incorrects).
  • Permissions AD manquantes pour le suivi Per User (le serveur de licences doit être membre du groupe AD Terminal Server License Servers).
  • Base locale corrompue (TLSLic.edb) ou service en échec.
  • Pare‑feu ou filtrage RPC/Dynamic RPC qui empêche la communication entre RDSH et serveur de licences.

La solution tient en huit étapes : désactiver/libérer, sauvegarder (si possible), réinstaller, activer, réinstaller/associer les CAL, configurer les RDSH, appliquer et diagnostiquer.

Réponse & solution pas‑à‑pas

ÉtapeActionDétails utiles
1. Désactiver le serveur de licences avant de formaterDans le Gestionnaire de licences Bureau à distance (licmgr.exe) :
Serveur → Gérer les licences → Désactiver le serveur.
Libère officiellement le pack CAL au « Clearinghouse » pour réémission ultérieure.
2. Sauvegarder ou supprimer la base de données localeBase : C:\Windows\System32\LServer\TLSLic.edb.La conserver si vous gardez le même matériel ; la supprimer si vous repartez de zéro. Arrêter le service Remote Desktop Licensing (TermServLicensing) avant de copier.
3. Réinstaller le rôle “Service des licences”Gestionnaire de serveur → Ajouter des rôles/fonctionnalités → Services Bureau à distance → Service des licences.Aucun CAL n’est réinstallé ici ; seul le service est remis en place.
4. Réactiver le serveurDepuis licmgr.exe, clic droit sur le serveur → Activer (Internet, téléphone ou site Web).Crée un nouvel ID de serveur de licences. Nécessaire même si les fichiers locaux existent.
5. Réinstaller / réattribuer les CALServeur → Installer des licences puis saisir :
• clé/licence « Retail » ou
• ID de contrat Open/Volume.
Si l’ancienne base a été conservée et que le matériel n’a pas changé, les CAL peuvent réapparaître automatiquement.
6. Régler le mode & le serveur de licences sur l’hôte de sessions RDSur chaque RDSH :
GPO : Configuration ordinateur → Modèles d’administration → Composants Windows → Services Bureau à distance → Hôte de session Bureau à distance → Licences.
Le mode Par utilisateur ou Par périphérique doit correspondre au type de CAL détenues. Spécifier la/les FQDN du ou des serveurs de licences.
7. Redémarrer les services / appliquer les GPOgpupdate /force puis redémarrage,
ou redémarrage du service TermService.
Garantit la prise en compte immédiate du nouvel appairage RDSH ⇄ Licence.
8. Vérifier avec RD Licensing DiagnoserGestionnaire de serveur → Outils → Diagnostiqueur de licences Bureau à distance.0 erreur = OK. Les CAL Per User ne s’affichent pas comme « consommées » par défaut : c’est normal (conformité contractuelle à votre charge).

Checklist express (avant toute manipulation)

  • Identifiants de licence à portée de main (clé Retail, ID de contrat, Product ID du serveur si activation téléphonique).
  • Nom DNS/FQDN planifié pour le serveur de licences, IP fixe et enregistrement DNS à jour.
  • Accès au domaine et appartenance du serveur de licences au groupe AD Terminal Server License Servers.
  • Ouverture des flux réseau : RDP (3389) pour l’admin, RPC (135) + ports RPC dynamiques (49152‑65535 par défaut) entre RDSH et serveur de licences.
  • Snapshot/sauvegarde du dossier C:\Windows\System32\LServer si le serveur est encore accessible.

Procédures détaillées

1) Désactiver proprement (si possible)

Si le serveur d’origine répond encore, ouvrez le Gestionnaire de licences Bureau à distance (licmgr.exe) puis : Serveur → Gérer les licences → Désactiver le serveur. Cela « rend » officiellement le pack CAL au Clearinghouse, évitant tout blocage lors de la réinstallation.

Cas extrême : si la machine est irrécupérable et que vous n’avez pas désactivé le serveur, la réactivation du pack nécessitera la réémission via le Centre d’appel Clearinghouse (assistant d’activation → mode téléphone → numéro affiché). Munissez‑vous de vos informations d’achat.

2) Sauvegarder/retirer la base locale

La base de licences locale se trouve dans C:\Windows\System32\LServer\TLSLic.edb. Pour sauvegarder :

# À exécuter en PowerShell en tant qu'administrateur
Stop-Service TermServLicensing
Copy-Item 'C:\Windows\System32\LServer' 'D:\Backup-LServer' -Recurse
Start-Service TermServLicensing

Conservez cette copie si vous réinstallez sur le même matériel (même ID matériel). Si vous repartez sur un matériel/clonage différent, mieux vaut repartir d’une base propre puis réinstaller officiellement les CAL.

3) Réinstaller le rôle “Service des licences”

Via l’interface (Gestionnaire de serveur → Ajouter des rôles/fonctionnalités → Services Bureau à distance → Service des licences) ou en PowerShell :

Install-WindowsFeature RDS-Licensing -IncludeManagementTools
# Vérifier
Get-WindowsFeature RDS-Licensing

4) Activer le serveur de licences

Ouvrez licmgr.exe → clic droit sur le serveur → Activer le serveur. Choisissez Internet (le plus simple), ou Téléphone si le serveur n’a pas d’accès sortant. L’activation génère un nouvel ID de serveur de licences reconnu par le Clearinghouse.

5) Réinstaller / réattribuer les CAL

Toujours dans licmgr.exeServeur → Installer des licences : entrez la clé Retail du pack 500 CAL ou l’ID de contrat. Si vous avez restauré TLSLic.edb sur le même matériel, les CAL peuvent réapparaître automatiquement ; sinon, réinstallez‑les.

Important : un serveur de licences peut héberger plusieurs versions de CAL (ex. 2019 et 2022). Assurez‑vous d’installer la version qui correspond à vos hôtes et à votre contrat.

6) Configurer chaque RD Session Host (RDSH)

Par GPO (recommandé) :

  1. Éditez une GPO liée aux OU contenant vos RDSH.
  2. Allez à : Configuration ordinateur → Modèles d’administration → Composants Windows → Services Bureau à distance → Hôte de session Bureau à distance → Licences.
  3. Activez Utiliser les serveurs de licences Bureau à distance spécifiés et renseignez la/les FQDN du serveur (ex. rdlic01.contoso.local).
  4. Activez Définir le mode de licences du serveur Hôte de session Bureau à distance et sélectionnez Par utilisateur ou Par périphérique selon vos CAL.

Via PowerShell (WMI) sur un RDSH :

$servers = @('rdlic01.contoso.local','rdlic02.contoso.local') # optionnellement plusieurs
$ts = Get-WmiObject -Namespace 'root\CIMV2\TerminalServices' -Class 'Win32_TerminalServiceSetting'
# 4 = Per User, 2 = Per Device
$null = $ts.ChangeMode(4)
$null = $ts.SetSpecifiedLicenseServerList(($servers -join ','))
Restart-Service TermService

Via le Registre (si nécessaire) :

  • HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\Licensing Core\LicensingMode (DWORD) : 4 = Par utilisateur, 2 = Par périphérique.
  • HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\LicenseServers : créer un sous‑dossier par serveur (FQDN) pour les déclarer.

Déploiement RDMS (avec Broker) : si vous avez un déploiement géré (Collections, Broker), définissez les paramètres dans Propriétés de déploiement → RD Licensing. Les hôtes héritent alors de la configuration via RDMS.

7) Appliquer et redémarrer

Forcez l’application des stratégies puis redémarrez le service RDS :

gpupdate /force
Restart-Service TermService

Dans les environnements verrouillés, un redémarrage du serveur RDSH accélère la prise en compte.

8) Diagnostiquer

Ouvrez le Diagnostiqueur de licences Bureau à distance (Gestionnaire de serveur → Outils). Vous devez obtenir :

  • Le mode de licences du serveur Hôte de session Bureau à distance est correctement configuré.
  • Au moins un serveur de licences valide a été découvert.
  • Aucune erreur critique (Grace period expirée, Mode non défini, Aucun serveur découvert).

Note : en mode Par utilisateur, la consommation n’est pas strictement suivie sur le serveur de licences ; l’outil peut n’indiquer que la capacité installée.

Scénarios de remise en service : choisissez le vôtre

ContexteAction recommandéeCommentaires
Même machine, OS réinstallé, vous avez pu sauvegarder LServerRéinstaller le rôle → Activer → Remettre TLSLic.edblicmgr.exe pour vérifierLe pack réapparaît souvent automatiquement.
Nouvelle machine (matériel différent)Activer le nouveau serveur → Installer des licences avec la clé/ID → Configurer les RDSH vers ce serveurLa copie brute de TLSLic.edb n’est pas supportée entre matériels différents.
Ancien serveur irrécupérable, désactivation impossibleActivation par téléphone → réémission du pack par le ClearinghousePréparez preuve d’achat et informations de contrat.
Plusieurs serveurs de licences en parallèleInstaller/activer les deux → Répartir les CAL ou déclarer les deux serveurs côté RDSHHaute disponibilité (sans réplication de base) : les CAL sont « hébergées » par serveur.

Pare‑feu, réseau et Active Directory

  • RPC/ports dynamiques : le RDSH contacte le serveur de licences via RPC (135) puis un port dynamique (49152‑65535). Ouvrez ces flux (sens RDSH → serveur de licences) dans le pare‑feu et dans tout équipement intermédiaire.
  • Règles Windows : activez les règles intégrées Remote Desktop Licensing, WMI‑in, Remote Service Management si vous gérez à distance.
  • DNS & temps : FQDN résolvables et synchronisation NTP. Un écart d’horloge important peut perturber la découverte AD.
  • Groupe AD requis : ajoutez le compte ordinateur du serveur de licences au groupe Terminal Server License Servers dans Active Directory pour le suivi Per User.

Vérifications rapides après bascule

  1. Sur un RDSH, exécutez qwinsta & quser pour constater les sessions actives.
  2. Dans licmgr.exe, vérifiez l’État du serveur (activé) et la présence du pack 500 CAL.
  3. Dans le Diagnostiqueur, confirmez aucune erreur.
  4. Ouvrez une session RDP depuis un poste de test ; pour les CAL Par périphérique, observez l’attribution d’une licence au poste (liste « Émises »).

Erreurs fréquentes & corrections

SymptômeCause probableCorrectif
« Le serveur Hôte de session RD n’a pas de mode de licences configuré »GPO/registre non définiDéfinir le mode (Per User/Per Device) via GPO ou WMI, puis gpupdate /force.
« Aucun serveur de licences n’a été découvert »Découverte AD échouée, pare‑feu ou DNSSpécifier explicitement les serveurs (GPO/WMI), vérifier flux RPC, DNS et appartenance AD.
CAL Per User non « consommées »Comportement attenduLe suivi est déclaratif. Assurez la conformité contractuelle et les permissions AD pour un comptage indicatif.
Le pack reste « bloqué » après réinstallationAncienne activation non désactivéeActiver par téléphone et demander la réémission du pack au Clearinghouse.
Clients RDP refusés après fin de période de grâceServeur de licences non joignableVérifier GPO, pare‑feu, flux RPC, et que le serveur est activé dans licmgr.exe.

Scripts prêts à l’emploi (exemples)

Configurer un RDSH en “Per User” vers deux serveurs de licences :

$servers = @('rdlic01.contoso.local','rdlic02.contoso.local')
$ts = Get-WmiObject -Namespace 'root\CIMV2\TerminalServices' -Class 'Win32_TerminalServiceSetting'
$null = $ts.ChangeMode(4)                          # 4 = Per User ; 2 = Per Device
$null = $ts.SetSpecifiedLicenseServerList(($servers -join ','))
gpupdate /force
Restart-Service TermService

Installer le rôle “Service des licences” et lancer le Gestionnaire :

Install-WindowsFeature RDS-Licensing -IncludeManagementTools
Start-Process -FilePath "licmgr.exe"

Journalisation et où regarder

  • Journaux d’applications et de servicesMicrosoft > Windows :
    • TerminalServices-LocalSessionManager (LSM) : ouverture/fermeture de sessions.
    • TerminalServices-RemoteConnectionManager (RCM) : connexions RDP.
    • TerminalServices-Licensing : événements liés à la découverte/attribution de licences.
  • Service : Remote Desktop Licensing (TermServLicensing) doit être En cours d’exécution.
  • Gestionnaire de licences (licmgr.exe) : état du serveur et packs installés.

Bonnes pratiques pour éviter la panne au prochain incident

  • Avant maintenance : désactivez le serveur de licences (si arrêt prolongé) et conservez un export du dossier LServer.
  • Documentez : FQDN, version de CAL, quantité, ID de contrat, capture d’écran du Gestionnaire de licences.
  • Deux serveurs de licences lorsque c’est possible, avec répartition des CAL et déclaration des deux côtés RDSH.
  • GPO dédiées aux RDSH (évite les oublis) et vérification régulière avec le Diagnostiqueur.
  • Sauvegarde du System State et du dossier LServer plus snapshot VM avant mise à jour majeure.

Questions fréquentes (FAQ)

Q : Peut‑on « désinstaller » une licence RDS ?
R : Il n’existe pas d’option « désinstaller la licence ». On supprime le rôle dans le Gestionnaire de serveur, ce qui supprime également la base locale.

Q : Si je réinstalle sur la même machine sans désactiver, suis‑je bloqué ?
R : Souvent non, car l’ID matériel reste identique et le pack reste utilisable. Toutefois, si l’activation échoue, passez par le Clearinghouse pour réémettre le pack.

Q : Comment « voir » la consommation en Per User ?
R : Le serveur ne l’applique pas strictement. Assurez‑vous des permissions AD (groupe Terminal Server License Servers) pour un suivi indicatif et pilotez votre conformité par inventaire interne.

Q : J’ai des CAL 2019 et des serveurs 2022, est‑ce compatible ?
R : Les versions de CAL doivent être au moins la version du serveur hôte. Vérifiez que vous avez bien des CAL adaptées à la version la plus récente de vos RDSH.

Q : Les clients reçoivent « La période de grâce a expiré » ?
R : Cela signifie que le RDSH n’a pas pu contacter un serveur de licences valide pendant la période de grâce. Vérifiez le mode, le serveur de licences, le réseau et que le serveur de licences est activé.

Plan de retour en service en 15 minutes (modèle opératoire)

  1. Rôle : Install-WindowsFeature RDS-Licensing -IncludeManagementTools.
  2. Activation : licmgr.exeActiver.
  3. CAL : Installer des licences (clé Retail/ID contrat).
  4. GPO : définir Mode + Serveur(s) de licences sur les RDSH.
  5. Application : gpupdate /force puis Restart-Service TermService sur chaque RDSH.
  6. Validation : Diagnostiqueur = 0 erreur, test d’ouverture RDP depuis un poste.

Récapitulatif visuel des éléments à contrôler

ÉlémentDoit être
Service Remote Desktop Licensingservices.mscEn cours d’exécution
Activation du serveur de licenceslicmgr.exeActivé
Pack 500 CALlicmgr.exeInstallé (quantité correcte)
Mode de licences RDSHGPO / WMI / RegistreCorrespond au type de CAL
Serveur(s) de licences déclaré(s)GPO / WMI / RegistreFQDN valides
Flux RPC / pare‑feuPare‑feu Windows / réseauOuverts entre RDSH et serveur de licences
Groupe ADActive DirectoryTerminal Server License Servers contient le serveur de licences

Conclusion

En appliquant rigoureusement les huit étapes ci‑dessus — désactivation/activation officielles, réinstallation du rôle, réapplication des CAL, configuration explicite des RDSH et vérification via le Diagnostiqueur — vous rétablissez un chemin de licences sain : vos 500 CAL RDS sont de nouveau opérationnelles, et les utilisateurs peuvent à nouveau ouvrir des sessions RDP sans interruption.

Sommaire