Comment installer le rôle RDS et les CAL sur Windows Server 2019 ?

Comment installer le rôle RDS et les CAL sur Windows Server 2019 ?

Dans cet article, nous allons examiner l’installation, la configuration et l’activation du rôle bureau à distance sur Windows Server 2019. Nous verrons aussi l’installation et l’activation des licences d’accès client (CAL) RDS.

Après installation du rôle RDS, les utilisateurs ne peuvent l’utiliser que pendant les 120 jours d’une période d’essai. Et les utilisateurs ne peuvent pas se connecter à un hôte RDS par la suite. Selon les règles Microsoft, tous les utilisateurs ou appareils qui utilisent les fonctions RDS doivent avoir une licence. Remote Desktop License Server est un service qui enregistre et délivre les licences d’accès client Remote Desktop (RDS CALs).

Installer le rôle de licence de bureau à distance sur Windows Server 2019/2016

Vous pouvez déployer le service de licence Bureau à distance sur n’importe quel serveur de domaine. Il n’est pas nécessaire de l’installer sur l’un des serveurs de la ferme RDSH.

Avant de commencer l’installation, ajoutez un nouveau serveur au groupe de sécurité du domaine Terminal Server License Servers. Sinon le serveur ne pourra pas délivrer de CAL RDS Per User aux utilisateurs du domaine.

Par exemple, vous pouvez installer la licence Bureau à distance à l’aide du Gestionnaire de serveur. Pour ce faire, sélectionnez le rôle Services Bureau à distance dans l’assistant Ajout de rôles et de fonctionnalités.

Comment installer le rôle RDS

Sélectionnez Remote Desktop Licensing comme service de rôle.

Comment installer le rôle RDS

Il reste à attendre que l’installation du rôle se termine.

Comment installer le rôle RDS

Le service RDS-Licensing se gère à l’aide de la console Remote Desktop Licensing Manager (licmgr.exe).

Dans Windows Server, il est plus facile d’installer des rôles et des fonctionnalités à l’aide de PowerShell. Pour installer RDS Licensing Service et RD Licensing Diagnoser, il suffit d’exécuter une commande :

Install-WindowsFeature RDS-Licensing –IncludeAllSubFeature -IncludeManagementTools

Pour répertorier les services RDS installés sur l’hôte, utilisez la commande :

Get-WindowsFeature -Name RDS* | Where installed
Comment installer le rôle RDS

Activation du serveur de licences RDS sur Windows Server

Afin de pouvoir délivrer des licences aux clients RDP, votre serveur de licences RDS doit être actif. Pour ce faire, ouvrez le Remote Desktop Licensing Manager (licmgr.exe). Puis cliquez avec le bouton droit de la souris sur le nom de votre serveur, puis sélectionnez Activer le serveur.

Remote Desktop Licensing Manager (licmgr.exe)

L’assistant d’activation du serveur de licence RDS démarre. Ici, vous devrez sélectionner la méthode d’activation que vous préférez. Le serveur se connecte automatiquement aux serveurs Microsoft et active le serveur de licences RDS. En l’asence de connexion, vous pouvez activer le serveur à l’aide d’un navigateur Web ou par téléphone.

Comment installer et activer

Vous devez ensuite remplir quelques informations sur votre entreprise (certains champs sont obligatoires).

Comment installer et activer

Il ne reste plus qu’à cliquer sur le bouton Terminer.

Terminer

Par un clic droit sur le nom du serveur et Review Configuration, vous pouvez vérifier que ce dernier est actif. Il peut alors servir à activer les clients RDSH.

  • Ce serveur de licences est membre du groupe Terminal Server License Servers dans Active Directory. Ce serveur de licences sera en mesure de délivrer des CAL RDS par utilisateur aux utilisateurs du domaine. Et vous pourrez suivre l’utilisation des CAL RDS par utilisateur.
  • Ce serveur de licences est enregistré comme point de connexion de service (SCP) dans les services de domaine Active Directory.
Récapitulatif

CALs RDS : Types de licences d’accès client de bureau à distance

Chaque utilisateur ou périphérique se connectant aux hôtes de la session Remote Desktop doit disposer d’une licence d’accès client (CAL). Il existe deux types de CAL RDS :

  • CAL par dispositif – est le type de licence permanente attribuée à un ordinateur qui se connecte au serveur RDS plus d’une fois. Ces licences ne sont pas concurrentes. C’est-à-dire que si vous avez 10 licences Per Device, seuls 10 hôtes peuvent se connecter à votre serveur RDS. La CAL OVL RDS actuelle s’appelle : WinRmtDsktpSrvcsCAL 2019 SNGL OLV NL Each AP DvcCAL ;
  • CAL par utilisateur – est le type de licence qui permet à un utilisateur de se connecter au serveur RDS à partir d’un nombre quelconque d’ordinateurs. Ce type de licence s’associe à un utilisateur Active Directory pour une période spécifique. La licence est valable pour une période de 52 à 89 jours (nombre aléatoire).  La licence Open Value actuelle de ce type est s’appelle WinRmtDsktpSrvcsCAL 2019 SNGL OLV NL Each AP UsrCAL.

Si vous utilisez la CAL par utilisateur de RDS 2019 dans un groupe de travail, le serveur RDSH mettra fin à une session utilisateur toutes les 60 minutes. Le message suivant apparaitra :  » Problème de licence de bureau à distance : Il y a un problème avec votre licence Bureau à distance, et votre session sera déconnectée dans 60 minutes ». Par conséquent, pour les serveurs RDS dans un environnement Workgroup, vous devez utiliser la licence uniquement pour les périphériques (Per Device RDS CALs).

Remote Desktop License Issue

. 

Remarque: Nous devons noter que la CAL RDS 2016 ne peut s’installer que sur un serveur de licence exécutant Windows Server 2016 ou 2019. Ainsi, l’installation de CAL RDS sur les versions précédentes de Windows Server n’est pas prise en charge. Aussi, vous ne pouvez pas installer de CAL RDS 2016 sur un hôte de licence Windows Server 2012 R2.

Lorsque vous essayez d’ajouter de nouvelles CAL RDS 2019 sur Windows Server 2016, une erreur apparaît :

RD Licensing Manager

Installation des CAL RDS sur Windows Server 2019/2016

Vous devez maintenant installer le pack de licences client Remote Desktop (RDS CAL) que vous avez acheté sur le serveur de licences.

Cliquez avec le bouton droit de la souris sur votre serveur dans Remote Desktop Licensing Manager et sélectionnez Installer les licences.

Install Licenses

Sélectionnez la méthode d’activation et le programme de licence (dans notre cas, il s’agit de l’accord d’entreprise).

De nombreux numéros d’accords d’entreprise pour RDS ont déjà été divulgués sur Internet. Je pense que ce ne sera pas un problème de trouver les numéros (4965437). Vous n’avez même pas besoin de chercher des cracks ou des activateurs de RDS.

License Program
Agreement Number

Les étapes suivantes de l’assistant dépendent du programme de licence que vous avez sélectionné. Dans le cas d’un Accord d’Entreprise, vous devez spécifier son numéro. Si vous avez choisi le pack de licences, saisissez la clé de produit à 25 caractères que vous avez obtenue.

Indiquez :

  • la version du produit (Windows Server 2019/2016),
  • le type de licence (RDS Per user CAL)
  • le nombre de licences à installer sur le serveur.
Product Version and License Type

Ensuite, le serveur peut délivrer des licences (RDS CAL) aux clients.

Vous pouvez convertir les CAL utilisateur RDS en CAL dispositif (et vice versa) en utilisant l’élément de menu Convertir les licences dans la console RD Licensing Manager.

Convert Licenses

En cas de manque, vous pouvez révoquer les CAL précédemment émises inutilisées à l’aide du script PowerShell suivant :

$RevokedPCName=”lon-bc1-123”
$licensepacks = Get-WmiObject win32_tslicensekeypack | where {($_.keypacktype -ne 0) -and ($_.keypacktype -ne 4) -and ($_.keypacktype -ne 6)}
$licensepacks.TotalLicenses
$TSLicensesAssigned = gwmi win32_tsissuedlicense | where {$_.licensestatus -eq 2}
$RevokePC = $TSLicensesAssigned | ? sIssuedToComputer -EQ $RevokedPCName
$RevokePC.Revoke()

Up to 20% of Per-Device RDS CALs can be revoked. Per-User CALs cannot be revoked.

Rapports d’utilisation de RDS CAL

Dans la console de licence RDS, vous pouvez générer un rapport sur l’utilisation des licences. Pour ce faire, sélectionnez Create Report -> CAL Usage dans le menu contextuel du serveur.

Rapport

Cependant, je préfère utiliser PowerShell pour signaler l’utilisation des CAL RDS. Le script suivant indique le nombre de licences restantes dans tous les packs CAL RDS :

Import-Module RemoteDesktopServices -ErrorAction Stop
Set-Location -Path 'rds:' -ErrorAction Stop
$licenses = (Get-Item -Path RDS:\LicenseServer\LicenseKeyPacks\* | Where-Object Name -Like "-Per User-*").Name
$total=0;
$issued=0;
foreach ($license in $licenses) {
$count=(Get-Item -Path RDS:\LicenseServer\LicenseKeyPacks\$license\TotalLicenses).CurrentValue
$total= $total + $count
$count2=(Get-Item -Path RDS:\LicenseServer\LicenseKeyPacks\$license\IssuedLicensesCount).CurrentValue
$issued= $issued + $count2
}
$available = $total - $issued
Write-Host "Total Licenses available: $available"

Vous pouvez exécuter ce script PowerShell via Zabbix et déclencher une alerte si le nombre de licences restantes est inférieur à 5, par exemple.

Le script Powershell suivant vous permettra de générer un rapport CAL par utilisateur :

Import-Module RemoteDesktopServices -ErrorAction Stop
Set-Location -Path 'rds:' -ErrorAction Stop
$path = “C:\Reports\RDS_CAL_Usage.csv”
$fileName = (Invoke-WmiMethod Win32_TSLicenseReport -Name GenerateReportEx).FileName
$fileEntries = (Get-WmiObject Win32_TSLicenseReport | Where-Object FileName -eq $fileName).FetchReportEntries(0,0).ReportEntries
$objArray = @()
foreach($entry in $fileEntries){
$objArray += $entry | select User, ProductVersion, CALType, ExpirationDate
$objArray[-1].User = $objArray[-1].User.Split('\') | select -Last 1
$time = $objArray[-1].ExpirationDate.Split('.') | select -first 1
$objArray[-1].ExpirationDate = [datetime]::ParseExact($time, "yyyyMMddHHmmss", $null)
}
$objArray | Export-Csv -Path $path -Delimiter ',' -NoTypeInformation

Comment supprimer les CAL RDS d’un serveur de licences RD ?

Si vous souhaitez déplacer vos packs de licences CAL RDS d’un serveur de licences Remote Desktop à un autre, vous pouvez supprimer le pack de licences CAL RDS installé du serveur de licences à l’aide de PowerShell.

À l’aide de la cmdlet suivante, vous pouvez répertorier tous les packs CAL RDS installés sur le serveur :

Get-WmiObject Win32_TSLicenseKeyPack|select-object KeyPackId,ProductVersion,TypeAndModel,AvailableLicenses,IssuedLicenses |ft
Get-WmiObject

Trouvez la valeur KeyPackId pour le paquet RDS CAL que vous voulez supprimer et exécutez la commande :

wmic /namespace:\\root\CIMV2 PATH Win32_TSLicenseKeyPack CALL UninstallLicenseKeyPackWithId yourKeyPackId

Vous pouvez également supprimer complètement toutes les CAL en recréant la base de données des licences RDS. Autrement dit, arrêtez le service de licences Remote Desktop :

Stop-Service TermServLicensing

Renommez le fichier C:\Windows\System32\lserver\TLSLic.edb en C:\Windows\System32\lserver\TLSLic.edb_bak et démarrez le service :

Start-Service TermServLicensing

Après cela, toutes les licences CAL RDS seront supprimées, et vous devrez les réactiver.

Configuration des licences RDS sur les hôtes de session RD

Par le gestionnaire de serveur

Dès que serveur de licences RDS activé, vous pouvez reconfigurer l’hôte de session RD pour obtenir des licences CAL. Ainsi, vous pouvez définir le type de licence et spécifier le nom du serveur de licences. Pour cela il y a 2 méthodes, à partir du Gestionnaire de serveur ou de la stratégie de groupe.

Pour modifier le nom/adresse du serveur de licences sur l’hôte RDS, ouvrez Server Manager -> Remote Desktop Services -> Collections. Dans le menu supérieur droit « Tasks », sélectionnez « Edit Deployment Properties ».

Comment installer le rôle RDS

Dans les propriétés de déploiement, allez à l’onglet RD Licensing, sélectionnez le mode de licence Remote Desktop, et définissez le serveur de licence RDS. Cliquez sur Ajouter -> Ok.

Comment installer le rôle RDS

Si le type de licence n’est pas défini sur le serveur RDSH, vous recevrez l’erreur « Licensing mode for the Remote Desktop Session Host is not configured ».

Vous pouvez modifier l’adresse du serveur de licences RDS et le type de CAL en utilisant PowerShell :

$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting

Spécifiez ensuite le type de licence dont vous avez besoin :

$obj.ChangeMode(4)

Remarque: Saisissez 4 si le serveur doit utiliser le type de licence Per User, et 2, s’il s’agit de Per Device. 

Indiquez ensuite le nom du serveur de licences RDS :

$obj.SetSpecifiedLicenseServerList("rdslic2016.woshub.com")

Et vérifiez les paramètres actuels :

$obj.GetSpecifiedLicenseServerList()

Par la stratégie de Groupe

Si vous souhaitez attribuer les paramètres du serveur de licences RDS via la stratégie de groupe, vous devez créer un nouveau GPO et le lier à l’OU avec les serveurs RDS (ou vous pouvez spécifier le nom du serveur de licences RDS en utilisant l’éditeur de stratégie de groupe local – gpedit.msc). Les paramètres de licence RDS sont situés dans la section suivante de la GPO : Configuration des ordinateurs -> Stratégies -> Modèles d’administration -> Composants Windows -> Services Bureau à distance -> Hôte de session Bureau à distance -> Licences.

Il y a deux paramètres du Bureau à distance que nous devons configurer :

  • Utiliser les serveurs de licence Remote Desktop spécifiés – l’adresse du serveur de licence est définie ;
  • Définir le mode de licence du Bureau à distance – sélectionner le type de licence CAL RDS.
Comment installer le rôle RDS

Les hôtes RDSH utilisent les ports réseau suivants pour obtenir une licence RDS depuis le serveur de licences RDS. Assurez-vous que le pare-feu ne bloque pas les ports suivants :

  • TCP/135 – RPC de Microsoft ;
  • UDP/137 – Service de datagramme NetBIOS ;
  • UDP/138 – Résolution de noms NetBIOS ;
  • TCP/139 – Service de session NetBIOS ;
  • TCP/445 – SMB ;
  • TCP/49152-65535 – Plage d’adresses dynamiques RPC

Avertissements

Vous pouvez vérifier les ports ouverts à l’aide de l’outil PortQry ou du cmdlet Test-NetConnection.

Essayez de vérifier l’état du serveur de licences RD et le nombre de licences émises à l’aide de l’outil Remote Desktop Licensing Diagnoser (lsdiag.msc ou Administrative Tools -> Remote Desktop Services -> RD Licensing Diagnoser). L’outil RD Licensing Diagnoser peut s’installer sur les serveurs RDSH à l’aide de Server Manager (Features -> Remote Server Administration Tools -> Role Administration Tools -> Remote Desktop Services Tools -> Remote Desktop Licensing Diagnoser Tools).

Si le serveur RDSH n’est pas configuré pour utiliser un serveur de licences RDS, les avertissements suivants apparaissent dans la console Licensing Diagnoser :

  • Les licences ne sont pas disponibles pour ce serveur Remoter Desktop Session Host, et RD Licensing Diagnose a identifié des problèmes de licence pour le RDSH.
  • Nombre de licences disponibles pour les clients : 0
  • Le mode d’octroi de licences pour le serveur hôte de session du bureau à distance n’est pas configuré.
  • Le serveur hôte de session du bureau à distance est dans sa période de grâce, mais le serveur hôte de session du bureau à distance n’a été configuré avec aucun serveur de licences.
Comment installer le rôle RDS

Si vous avez installé RDSH sur l’édition d’évaluation de Windows Server, n’oubliez pas de le convertir en version complète en suivant le guide. Sans conversion, les services RDSH sur un tel hôte ne fonctionneront que pendant 120 jours, même si vous le ciblez sur un serveur de licence RDS activé.

S’il n’y a pas d’avertissement et que le message « RD Licensing Diagnoser did not identify any licensing problems for the Remote Desktop Session Host server » s’affiche, le serveur RDSH peut recevoir des CAL RDS pour des utilisateurs et/ou des périphériques distants.

Comment installer le rôle RDS

Note: Dans notre cas, après avoir spécifié la nouvelle adresse du serveur de licence, l’erreur suivante a commencé à apparaître sur le client RDP : « La session à distance a été déconnectée parce qu’il n’y a pas de serveur de licences Remote Desktop disponible pour fournir une licence ». Le problème peut être résolu en supprimant la clé L$RTMTIMEBOMB du registre sur le serveur RDSH.

Retour en haut