Nach der Neuinstallation und erfolgreich durchlaufenen Aktivierung eines Remotedesktop- bzw. Terminalservers unter Windows Server 2019 bin ich auf das folgende Problem gestoßen: Es erscheint die Meldung: „Der Remotedesktop-Lizensierungsmodus ist nicht konfiguriert“. Zudem wir eine Grace-Period für die nachzuholende Aktivierung angezeigt, nach deren Ablauf die Remotedesktopservices den Betrieb einstellen bzw. keine Verbindung mehr annehmen.
Die Remotedesktoplizensierungs-Diagnose meldet ebenfalls zwei Fehler:
1. Der Lizenzierungsmodus für den Remotedesktop-Sitzungshostserver ist nicht konfiguriert.
2. Der Remotedesktop-Sitzungshostserver befindet sich innerhalb des Aktivierungszeitraums, aber der Remotedesktop-Sitzungshostserver ist nicht mit Lizenzservern konfiguriert“
Die Ursache für das Problem ist, dass der Server den Lizenzserver nicht findet, da dieser aus Sicht des Windows Servers nicht richtig konfiguriert ist. Um diese Konfiguration vorzunehmen gibt es zwei Möglichkeiten:
1. Konfiguration des Lizenzservers mittels einer Gruppenrichtlinie (GPO) . Gute Anleitungen dazu gibt es bspw. hier und hier. Diese Vorgehensweise ist insb. dann von Vorteil, wenn man mehrere Terminalserver konfigurieren will. Sie skaliert dann deutlich besser. Ich wollte allerdings für einen einzelnen, relativ isolierten Terminalserver nicht diesen Weg gehen. und habe die zweite Option gewählt, die
2. Manuelle Konfiguration mittels zweier relativ einfacher Schritte: a) Definieren des Lizenzservers mittels Powershell und b) setzen des Lizenzmodus mittels Registry. Die Schritte im Einzelnen:
a) Definieren des Lizensservers mittels Powershell
Start -> powershell -> Rechs //Powershell als Administrator starten
$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting
$obj.GetSpecifiedLicenseServerList() //Auslesen der LIzenzserverliste
$obj.SetSpecifiedLicenseServerList("FQDN des Terminalservers") //Bitte "FQDN des eigenen Lizenzservers für die Terminal Services eingetragen. Bspw. meinlizenzserver.meinedomaene.local
-
$obj.GetSpecifiedLicenseServerList() //Auslesen der Lizenzserverliste und überprüfen, ob der FQDN richtig gesetzt ist.
Die Powershell kann nun geschlossen werden.
b) Setzen des Lizenzierungsmodus in der Registry
Start -> Ausführen -> RegEdit //RegistryEditor Starten
Zum Pfad HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\Licensing Core navigieren.
Dort findet sich der DWORD Key: LicensingMode //falls der Schlüssel nicht existiert, dann diesen erstellen (DWORD).
Den Parameter der von 5 ändern. Entweder in
2 - wenn die Lizenzierung per Device CAL erfolgen soll
4 - wenn die Lizenzierung per User CAL erfolgen soll
Nun muss noch der Terminalserver bzw. die Remotedesktopdienste neu gestartet werden und die Lizenzierungsprobleme sollten behoben sein. Denkt bitte daran, dass Ihr Euch ggf. vom Server ausschließen könnt, wenn Ihr per RDP verbunden seid und dann die Remotedesktopdienste neu startet. Denkt also an einen alternativen Weg, um auf den Server zuzugriefen (physischer Zugang, TeamViewer, etc.).
Viel Spaß bzw. Erfolg mit der Anleitung, die wie immer ohne Gewähr ist. Euer Feedback ist sehr willkommen und hilft bei der Verbesserung!
Tolle Anleitung, wenn du jedoch planst mehr als einen Terminalserver zu installieren, kann ich dir nur diese Anleitung hier empfehlen. https://kosilov.de/der-remotedesktop-lizenzierungsmodus-ist-nicht-konfiguriert
Guter Hinweis – Danke dafür! Ich habe den Text oben entsprechend ergänzt.
Hallo,
Habe alles genau so gemacht wie beschrieben. Bei mir geht es immer noch nicht. Wenn ich versuche zu verbinden, wird die Verbindung direkt wieder getrennt. Alle Dienste lauifen aber soweit
Hi,
das klingt nach einem etwas anderen/weiteren Fehlerbild als oben beschrieben. Von daher könnte ich im Moment nur raten. Was sagt denn das Eventlog auf Client- bzw. Serverseite?
Schöne Grüße
Lars
…hat perfekt geklappt – besten Dank und schönen Gruß Chris
…perfekt und einfach, wenn man weiß, wie es geht!
Vielen Dank.
Freut mich, wenn es geklappt hat!
Vielen Dank, war mir eine große Hilfe !
Grüße
Freut mich, das zu hören!
Vielen Dank!! Hat geklappt, aber erst beim dritten Versuch. Hatte bei dem Befehl >>>$obj.SetSpecifiedLicenseServerList(„FQDN des Terminalservers“) //Bitte „FQDN des eigenen Lizenzservers für die Terminal Services eingetragen. Bspw. meinlizenzserver.meinedomaene.local<<<
die "" bei dem Servernamen übersehen ^^
Dadurch kam ein Fehler. Mit "meinlizenzserver.meinedomaene.local" hats dann funktioniert 😉
Hat auf Anhieb geklappt und war mir eine große Hilfe. Vielen herzlichen Dank!
Freut mich zu hören!