Обновлено 08.12.2022
Добрый день! Уважаемые читатели и гости, IT блога Pyatilistnik.org. В прошлый раз мы с вами поговорили, про отложенный запуск служб в Windows, сегодня я хочу вам показать еще один не приятный момент в работе терминальных служб удаленного рабочего стола, а именно ошибка подключения «Произошла внутренняя ошибка«, после чего подключение разрывается. Такое я встречал уже в Windows Server 2012 R2 и 2016. Давайте разбираться в чем дело.
Описание проблемы
Есть сервер с операционной системой Windows Server 2012 R2, сотрудник пытается к нему подключиться, через классическую утилиту «Подключение к удаленному рабочему столу», в момент авторизации, выскакивает окно с ошибкой «Произошла внутренняя ошибка».
В английском варианте ошибка звучит вот так:
An internal error has occurred
После этого у вас разрывается соединение. Когда мы видели моргающий экран по RDP, там хотя бы вы попадали на сервер и могли открыть диспетчер устройств, тут сразу все обрубается на корню. Давайте смотреть, что можно сделать.
🆘 Что есть в логах?
Если посмотреть журналы событий на удаленном сервере, куда вы пытаетесь подключиться, то там порядок событий будет такой:
События нужно искать в журнале Microsoft-Windows-RemoteDesktopServices-RdpCoreTS/Operational
- 1️⃣ Первым будет идти событие ID 131 «The server accepted a new TCP connection from client IP-адрес:60050.». Тут вы увидите IP-адрес с которого идет попытка входа.
- 2️⃣ Далее событие ID 65 «Connection RDP-Tcp#11 created «.
- 3️⃣ Затем событие 141 «PerfCounter session started with instance ID 11». Тут сессии будет назначен ID.
- 4️⃣ За ним будет идти ID 142 «TCP socket READ operation failed, error 1236».
- 5️⃣ Потом вы увидите ID 72 «Interface method called: OnDisconnected»
- 6️⃣ И же после этого вам покажут, что сервер разорвал подключение: «ID 102 The server has terminated main RDP connection with the client.»
- 7️⃣ В событии ID 145 так же появляются подробности «During this connection, server has not sent data or graphics update for 0 seconds (Idle1: 0, Idle2: 0).».
- 8️⃣ Могут быть события с ID 148 «Channel rdpinpt has been closed between the server and the client on transport tunnel: 0.» или «Channel rdpcmd has been closed between the server and the client on transport tunnel: 0.» или «Channel rdplic has been closed between the server and the client on transport tunnel: 0.»
- 9️⃣ Ну и вишенка на торте, ошибка ID 227 «‘Failed to get property Disconnect Reason’ in CUMRDPConnection::Close at 2212 err=[0x80070057]»
Исправляем ошибку «Произошла внутренняя ошибка»
Так как по RDP подключиться не получается, то первым делом нужно проверить отвечает ли порт, по умолчанию это 3389. О том, как проверить порт на удаленном сервере я вам описывал, там все сводилось к выполнению команды Telnet, ознакомьтесь. Если порт отвечает, то делаем следующее.
Нужно удаленно перезапустить службу на этом сервере, чтобы сам сервер не перезагружать, так как в этот момент, он может выполнять важные задачи, можно использовать утилиту «Управление компьютером». Открыть ее можно через команду вызова оснастки, вызываем окно «Выполнить», через одновременное нажатие клавиш WIN и R, в котором пишем:
В открывшейся оснастке, щелкните в самом верху по пункту «Управление компьютером» правым кликом мыши, и выберите пункт «Подключиться к удаленному компьютеру».
Выберите пункт «Другим компьютером» и укажите его DNS имя, или найдите его через кнопку обзор.
Когда вы подключитесь к нужному серверу, перейдите в пункт «Службы и приложения — Службы», в списке сервисов найдите службу удаленных рабочих столов (Remote Desktop Services), и перезапускаем ее. После этого ошибка подключения по RDP «Произошла внутренняя ошибка», у вас должна пропасть.
Так же вы можете использовать оболочку PowerShell запущенную от имени пользователя, у которого есть права на удаленный сервер, где будет перезапускаться служба RDP. Выполните:
Get-Service TermService -ComputerName Имя сервера | Restart-Service –force –verbose
Дополнительные методы решения
Если вам не помог первый метод, перезапускающий службу удаленных рабочих столов, то можно попробовать выполнить правку реестра. Открываете редактор реестра Windows, если у вас физического доступа к серверу нет или он далеко и вам лень до него идти, то можно попробовать подключиться к реестру удаленного сервера.
Для этого в окне «Редактор реестра» пункт меню «Файл — Подключить сетевой реестр».
В открывшемся окне «Выбор компьютера» указываем его DNS-имя или ip-адрес и нажимаем ок. У вас будет установлено подключение к удаленному реестру сервера, что испытывает проблемы.
Находим ключ CheckMode по пути
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl Session ManagerCProIntegrityCheckMode
Перед любыми правками реестра, обязательно сделайте выгрузку нужной ветки, чтобы можно было восстановить все в оперативном режиме
Выставляем ему значение о, чтобы отключить у программы КриптоПРО CSP проверку контрольных сумм. Еще один важный момент, если у вас старая версия КриптоПРО, то это так же может быть источником, проблем, недавний пример, это ошибка «Windows installer service could not be accessed». Для этого удаляем правильно КриптоПРО CSP и ставим последнюю доступную версию.
Еще можно попробовать изменить значение вот такого ключа реестра:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl Session ManagerMemory ManagementSessionImageSize
Найдите ключ SessionImageSize и задайте ему значение 0x00000020.
Дополнительные настройки RDP клиента
Например ошибка «An internal error has occurred» у меня встретилась на Windows Server 2022 и там мне помогло в настройках клиента RDP отключение некой опции. Перейдите в дополнительные настройки клиента для удаленного подключения, где н вкладке «Experiens (Взаимодействие)» вам нужно убрать галку с опции «Восстановить подключение при разрыве (Reconnect if the connection is droped)«
На каких-то сайтах предлагалось именно активировать данный пункт.
Удаление кэша подключений
Еще одним методом решения внутренней ошибки подключения по RDP может выступать поврежденный кэш, который хранится на локальном компьютере пользователя. Для его отображения вам необходимо включить отображение скрытых папок и удалить содержимое папки:
C:Usersимя пользователяAppDataLocalMicrosoftTerminal Server Client
Обновление 07.12.2022
В декабре я вновь столкнулся с внутренней ошибкой, она еще стала проявлять себя вот так:
Не удается подключиться к удаленному компьютеру
Произошла внутренняя ошибка. Код ошибки: 0x4. Расширенный код ошибки: 0x0
В логах сервера очень много ошибок:
Она возникает, при каждой попытке войти на рабочий стол, это и есть проблема в моем конкретном случае. Устраните ее, и ошибка с подключекнием уйдет. Перезагрузка не нужна.
Данная ошибка говорит, что на тот сертификат, что использует удаленный сервер, нет прав у самого сервера, подробности выше по ссылке
На клиентской машине откуда я пытался произвести подключение было три события:
ID 1024: Выполняется подключение RDP ClientActiveX к серверу (ter104)
ID 1105: Мультитранспортное подключение разорвано.
ID 1028: Отключение RDP ClientActiveX (Причина= 2308)
Код 2808 — Ваш сеанс служб удаленных рабочих столов завершен. Соединение с удаленным компьютером было потеряно, возможно, из-за проблем с сетевым подключением. Попробуйте снова подключиться к удаленному компьютеру. Если проблема не исчезнет, обратитесь к сетевому администратору или в службу технической поддержки.
Так как у меня это была виртуальная машина, то я смог легко подключиться через консоль. В случае с ошибкой «Отключение RDP ClientActiveX (Причина= 2308)«, я отключил на сервере и клиенте autotuninglevel:
netsh interface tcp set global autotuninglevel=disabled
Не забываем перезагрузиться.
Это не помогло, далее я выполнил еще несколько рекомендаций. Я установил на сервер валидный SSL сертификат для RDP сессии. В ошибке 0x907, RDP соединение разрывалось, так как клиентская система не доверяла самоподписному сертификату удаленного сервера. Это нужно поправить, ссылку я указал, обязательно проверьте, кто сейчас выступает в роли активного:
Get-WmiObject «Win32_TSGeneralSetting» -Namespace rootcimv2terminalservices -Filter «TerminalName=’RDP-tcp'»
Еще я создал параметр реестра MaxOutstandingConnections. В Windows по умолчанию есть ограничения на количество сетевых подключений, так например в серверной версии, это параметр равен 3000, в десктопной 100. Из-за нестабильной сети, они могут быстро забиваться. Одно из решений проблемы с внутренней ошибкой подключения, является увеличение этого значения. В командной строке в режиме администратора выполните:
REG ADD «HKLMSYSTEMCurrentControlSetControlTerminal Server» /v MaxOutstandingConnections /t REG_DWORD /d 65536
New-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetControlTerminal Server»
-Name MaxOutstandingConnections -Value 10000 -PropertyType DWORD -Force
После этого нужно перезагрузиться.
Временное решение
Пока вы не уберете ошибку «Код ошибки, возвращенный модулем шифрования: ошибка 0x8009030D», описанную выше, вы можете понизить уровень безопасности вот такими манипуляциями, это устранит «An internal error has occurred».
На обычном сервере все это помогло, а вот на ноде RDSH ошибка оставалась. Тут я решил проверить догадку с уровнем безопасности «Configure security settings». На моей ферме был уровень «Согласования (Negotiate)«
Я пошел на сервер, где были проблемы подключения и решил проверить один параметр локальной политики gpedit.msc.
Конфигурация компьютера — Административные шаблоны- Компоненты Windows — Службы удаленных рабочих столов — Узел сеансов удаленных рабочих столов — Безопасность — Требовать использование специального уровня безопасности для удаленных подключений по протоколу RDP
Тут попробуйте выставить уровень RDP. В результате у меня после этих настроек все заработало. Теперь нужно понять, что изменилось. В настройках RDS фермы указано, что мы используем уровень согласование:
* Согласование: метод согласования принудительно применяет самый безопасный метод, поддерживаемый клиентом. Если поддерживается протокол TLS версии 1.0, то он используется для проверки подлинности сервера узла сеансов удаленных рабочих столов. Если протокол TLS не поддерживается, то для обеспечения безопасности взаимодействий используется собственное шифрование протокола удаленного рабочего стола (RDP), но проверка подлинности сервера узла сеансов удаленных рабочих столов не выполняется. В отличие от SSL-шифрования, использовать собственное шифрование RDP не рекомендуется.
Если и это вам не помогло, то нужно смотреть вариант в сторону обновления или переустановки драйверов на сетевую карту, тут вы определяете модель вашей карты или материнской платы, если в нее все интегрировано и обновляете. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.
Дополнительные ссылки
- https://serverfault.com/questions/934026/windows-10-pro-rdp-server-an-internal-error-has-occurred
- https://social.technet.microsoft.com/Forums/en-US/e1d60cc0-0096-4859-a0e7-eb7f11905737/remote-desktop-v10-error-0x4-from-mac?forum=winRDc
- https://learn.microsoft.com/en-us/answers/questions/108219/can-not-rdp-to-2012-r2-standard-server-after-septe.html
- https://serverfault.com/questions/541364/how-to-fix-rdp-on-windows-server-2012
-
Главная
-
Инструкции
-
Windows
-
Ошибка при подключении по RDP
RDP – это протокол, предназначенный для удаленного подключения к серверу с ОС Windows. Процесс подключения по RDP довольно прост и был уже детально описан в одной из наших инструкций.
Иногда у пользователя могут возникнуть трудности при очередной попытке входа на удаленный сервер с помощью RDP. Система в момент подключения выдает ошибку и ее краткое описание. Однако для обычного пользователя информации в системном окне ошибки недостаточно, чтобы решить проблему.
В статье мы рассмотрим наиболее частые пользовательские ошибки, которые возникают при попытке входа на удаленный сервер, и опишем, как их устранить.
Ошибка №1. «Произошла внутренняя ошибка»
Во время подключения по RDP с помощью штатной утилиты Windows пользователь может получить окно с ошибкой в момент входа на сервер.
Вот ее пример:
Как видно на картинке, описание ошибки нам ничего не объясняет. Причин у нее может быть множество. Например, она может возникнуть из-за неправильной настройки подключения или настройки безопасности протокола.
Ниже рассмотрим список причин и возможных решений, которые помогли другим пользователям избавиться от ошибки.
Решение №1. Проверка работы порта
Первое, что нужно сделать – это проверить, что прослушиватель протокола RDP настроен на работу по порту 3389 как на сервере, так и на локальной машине. Для этого будем использовать системное приложение «Редактор реестра».
Перед тем, как приступать к исправлению ошибки, следует создать резервную копию реестра.
- Нажимаем сочетание кнопок WIN+R и запускаем
regedt32
, используя поле ввода. - Создаем резервную копию. Для этого в окне реестра нажимаем вкладку «Файл», а затем «Экспорт». После выбираем место, где будут храниться файлы реестра. Если после внесенных изменений возникнут какие-либо ошибки, реестр можно будет восстановить («Файл» → «Импорт»).
- Далее открываем папку «RDP-Tcp». Для этого воспользуемся поиском, как показано на рисунке ниже.
- Для продолжения поиска используем кнопку F3. Нажимать ее нужно до тех пор, пока адрес папки не совпадет с адресом на картинке ниже.
- В найденной папке ищем параметр, который называется «PortNumber». В ситуации, когда его значение не равно 3389, его следует поменять.
- Теперь нужно повторить предыдущий шаг, только для удаленного сервера.
- После проверки портов следует выполнить перезапуск служб. Подробнее — в описании решения №2.
- Выполняем повторный вход на сервер.
Решение №2. Перезапуск служб удаленных рабочих столов
Если порт прошел проверку в предыдущем решении или был настроен правильно, то переходим к перезапуску служб удаленных рабочих столов. Чтобы не перезагружать устройства, которые могут находиться в работе, воспользуемся утилитой «Управление компьютером».
- Воспользуемся сочетанием кнопок WIN+R и запускаем
compmgmt.msc
, используя поле ввода. - Далее переходим во вкладку «Службы и приложения», а затем открываем «Службы».
- Находим «Службы удаленных рабочих столов» и кликаем «Перезапустить службу», как показано на картинке ниже.
- Далее снова выполняем предыдущие 2 шага, но в этот раз для сервера. Чтобы это сделать, нужно для начала нажать правой кнопкой мыши по вкладке «Управление компьютером», а затем нажать «Подключиться к другому компьютеру».
- После успешного подключения повторяем шаги 2 и 3.
- Пробуем заново подключиться к серверу.
Решение №3. Проверка статуса протокола на сервере
Чтобы проверить статус работы протокола RDP на сервере, воспользуемся системным приложением «Редактор реестра» из Решения №1.
- Нажимаем сочетание кнопок WIN+R и запускаем
regedt32
, используя поле ввода. - Теперь выполняем подключение к сетевому реестру, как показано на картинке ниже.
- Далее переходим в 2 папки, которые называются Terminal Server и Terminal Services. Для этого воспользуемся поиском (сочетание клавиш CTRL+F).
Переключаться между найденными папками можно с помощью клавиши F3. Нажимаем ее до тех пор, пока адрес папки не совпадет с адресом на картинке ниже.
То же самое выполняем для папки Terminal Services. Ее адрес при поиске должен совпасть со следующим.
В двух найденных выше папках ищем fDenyTSConnections
. Искомый параметр может принимать два значения: либо 0, либо 1. Первое указывает на успешную работу протокола RDP. Второе предполагает, что он отключен.
- Изменяем значения параметров на 0.
- Пробуем заново выполнить вход на сервер.
Решение №4. Изменение настроек подключения
Отдельным пользователям удалось проблему благодаря корректировкам настроек подключения к удаленному серверу. Опишем ниже пошаговое решение:
- В программе «Подключение к удаленному рабочему столу» открываем дополнительные параметры подключения.
- Среди всех вкладок выбираем «Взаимодействие» и кликаем на нее.
- Далее в поле, указанном на картинке ниже, следует установить или убрать галочку, в зависимости от того, в каком состоянии оно находится сейчас.
- Теперь пробуем заново выполнить подключение.
Решение №5. Очистка кэша подключений
Кроме перечисленных выше решений, можно попробовать очистить кэш подключений. Для этого выполним следующие шаги:
- Для начала следует включить отображение скрытых папок. Для этого устанавливаем галочку в соответствующем поле, как показано на картинке ниже.
- Далее переходим в папку Cache, которая расположена по адресу
C:Users%Имя_пользователя%AppDataLocalMicrosoftTerminal Server Client
, и удаляем все, что в ней находится. - Теперь заходим в системное приложение «Редактор реестра», о котором говорилось ранее, и переходим к вкладке Servers (HKEY_CURRENT_USER → Software → Microsoft → Terminal Server Client). Здесь также удаляем все записи.
- Перезагружаем компьютер и выполняем повторное подключение к удаленному серверу.
Решение №6. Увеличение лимита на количество подключений
Внутренняя ошибка подключения по RDP может быть также решена за счет увеличения параметра реестра, отвечающего за ограничение количества сетевых подключений. Данный параметр по умолчанию в сетевых версиях равен 3000, а в десктопных всего 100. Он может очень быстро забиться, вследствие чего у пользователя и возникают трудности с входом.
Для исправления проблемы следует увеличить размер параметра MaxOutstandingConnections
. Чтобы это сделать, достаточно запустить терминал (обязательно в режиме администратора) и выполнить специальную команду:
REG ADD "HKLMSYSTEMCurrentControlSetControlTerminal Server" /v MaxOutstandingConnections /t REG_DWORD /d 65536
Результат выполнения команды продемонстрирован на картинке ниже.
Теперь перезагружаем службы удаленных рабочих столов и пробуем заново выполнить вход на сервер.
Ошибка №2 «CredSSP: ошибка при проверке подлинности»
Ошибка проверки подлинности при подключении по RDP возникает на этапе авторизации.
Как видно по картинке выше, система указывает пользователю на возможную причину ошибки, связанную с CredSSP.
CredSSP – это протокол Windows, который служит для безопасной передачи учетных данных от локальной машину к серверу. Он защищает пользователя от DDoS-атак или несанкционированного доступа к серверу.
Ошибка проверки подлинности зачастую возникает у пользователей из-за отсутствия обновлений безопасности на пользовательском компьютере, либо на самом удаленном сервере.
Ниже подробно опишем решение ошибки CredSSP во время подключения по RDP для Windows версий Home и Professional.
Скачать обновление безопасности после удачного входа пользователя на сервер возможно с официального сайта Microsoft либо в разделе «Центр обновления Windows» в параметрах вашей системы.
Решение №1. Windows Home
Описанное ниже решение ориентировано на пользователей с ОС Windows Home.
- Для начала открываем на пользовательском компьютере терминал, запущенный от имени администратора.
- Далее вводим команду в строку терминала:
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 2
Используемая команда вносит корректировки в реестр Windows, добавляя ключ, отвечающий за изменение политики безопасности CredSSP. Значение 2 устанавливает самый низкий уровень защиты.
- Перезагружаем устройство.
- Пробуем заново подключиться к серверу.
- Далее на сервере следует обязательно установить необходимые обновления безопасности.
- По завершении обновлений нужно вернуть начальные настройки безопасности, используя команду из шага №2. Только вместо 2 на конце, нужно ввести 0.
Решение №2. Windows Professional
Предложенное ниже решение подойдет тем пользователям, кто пользуется профессиональной версией Windows.
- Для начала открываем системное приложение «Редактор локальной групповой политики». Используем сочетание кнопок WIN+R и открываем
gpedit.msc
, используя поле ввода. - В открывшейся системе переходим в папку «Передача учетных данных» (Конфигурация компьютера → Административные шаблоны → Система → Передача учетных данных).
- Среди всех параметров выбранной папки ищем «Защита от атак с использованием криптографического оракула». Щелкаем по нему дважды.
- В открывшемся окне включаем использование выбранного параметра, а также устанавливаем такой же уровень защиты, как на картинке ниже.
- Перезагружаем устройство.
- Пробуем заново подключиться к серверу.
- Далее следует сразу перейти к установке всех обновлений безопасности.
- По завершении обновлений рекомендуется сразу возвратить параметр «Защита от атак с использованием криптографического оракула» в первоначальное состояние.
Заключение
Мы рассмотрели 2 популярные ошибки подключения по RDP. Это внутренняя ошибка подключения и ошибка при проверки подлинности. К каждой из ошибок мы подобрали решения, которые в большинстве случаев помогут пользователям исправить их.
Как настроена работа терминального сервера
Терминальный сервер служит для организации работы по следующему сценарию — приложение запущено на удаленном компьютере (сервере), на нем же производятся все основные, требующие ресурсов операции и вычисления, а на клиентском устройстве выполняется только ввод и вывод данных.
Неоспоримые преимущества сервера терминалов:
- Производительность — можно использовать такие приложения, для работы которых у клиентского устройства не хватает ресурсов. Например, часто так используют сервер терминалов 1С.
- Упрощение администрирования — не нужно устанавливать приложение каждому сотруднику, достаточно поставить его на сервере.
- Легко добавлять новые рабочие места в существующую конфигурацию.
- Установка терминального сервера обеспечит стабильную работу даже при низкой пропускной способности сети, ведь по ней будет передаваться минимум данных
- Экономия на стоимости ПО и оборудования — терминальные лицензии на ПО обычно стоят дешевле стандартных, а приобретение одного сервера скорее всего потребует меньше средств, чем обновление всего парка компьютеров и ноутбуков в компании.
Однако в использовании терминальных серверов есть и свои сложности:
- Во-первых, для настройки сервера терминалов и поддержки работы терминальной сети требуется системный администратор со специфическими знаниями именно в области управления терминальными серверами.
- Во-вторых, для поддержки нескольких интерактивных сеансов пользователей терминальный сервер на Windows обычно предъявляет более высокие требования к “железу”, чем аналогичный сервер Windows, обеспечивающий работу того же количества пользователей по традиционному сценарию “клиент/сервер”.
- И в-третьих, ошибка такого сервера остановит работу сразу всех подключенных к нему пользователей, так что критически важна его отказоустойчивость. Этот аспект мы и рассмотрим в данной статье — какие бывают ошибки терминального сервера и как с ними бороться.
Типичные ошибки и проблемы в терминал сервере
- Одна из самых типичных ошибок в терминал-сервере — не установлен сервер лицензирования или не настроено лицензирование сервера терминалов. В таком случае в первую очередь убедитесь, что сервер лицензирования существует, что он активирован и клиентские лицензии есть в наличии. Иногда достаточно будет очистить кэш клиентской лицензии: зайти на рабочую станцию, у которой возникли проблемы с лицензированием, с правами администратора и в реестре вручную удалить ключ лицензии.
- Вторая частая проблема терминального сервера тоже связана с лицензированием — когда Windows server терминалов и сервер лицензий физически развернуты на разных машинах, они могут не найти друг друга. Например, маршрутизатор или брандмауэр могут этому помешать. Убедитесь, что сервер лицензий в сети и к нему физически можно подключиться, что настроена роль терминального сервера, проверьте настройки области обнаружения сервера лицензирования, удостоверьтесь, что операционная система для терминального сервера совместима с сервером лицензирования. Если автоматически подключиться не получается, попробуйте задать путь к серверу лицензирования вручную.
- Ошибка “Для сервера терминалов достигнуто максимальное число подключений”. Скорее всего есть неактивные пользовательские сеансы, которые забыли закрыть. Отключите такие сеансы вручную, а в дальнейшем рекомендуем настроить сервер терминалов так, чтобы бездействующие сеансы сами отключались через определенное время.
- Пользователь не подключается к серверу терминалов? Проверьте, действительно ли служба терминалов запущена, открыты нужные порты сервера, у учетной записи пользователя есть все необходимые права доступа.
- Не работает установка программ на терминальном сервере. Проверьте в настройках конфигурации, что для администратора включено разрешение устанавливать ПО из терминальной сессии и что групповые политики безопасности это позволяют.
- Терминальный сервер не сохраняет пароли. Необходимо включить разрешение сохранять пароли для данного компьютера в настройках локальной групповой политики.
Оставьте заявку на консультацию
Что делать, если не работает терминальный сервер
Когда не работает терминальный сервер, зависает терминальный сервер, можно сразу вызвать специалиста или попытаться провести первичную диагностику и устранить неполадки своими силами:
- отключить неиспользуемое ПО, особенно то, которое запускается автоматически
- обновить серверную ОС и драйвера устройств до последних версий
- проверить лог подключений на предмет слишком частых подключений из подозрительных локаций, возможно, идет попытка DDos-атаки, из-за которой и тормозит терминальный сервер
Как предотвратить проблемы с терминальным сервером
Наши рекомендации тут предельно просты — чтобы свести число ошибок к минимуму, необходимо профилактическое обслуживание. Оно должно включать мониторинг терминального сервера, регулярную очистку терминального сервера от временных файлов и другого “мусора”, контроль интернет-трафика терминального сервера, дефрагментацию, соблюдение политик безопасности (например, регулярную смену пользовательских паролей), физическую чистку оборудования от пыли и замену термопасты, проверку антивирусным ПО с актуальными базами. Антивирус для терминального сервера рекомендуем выбрать из тех, которые специально разработаны для работы с серверами, обычно на это указывает наличие в названии Server Edition.
Есть несколько полезных приемов защиты терминального сервера, которые помогут обеспечить безопасность сервера терминалов:
- сменить стандартный порт RDP
- запретить подключения учетных записей с пустым паролем, настроить блокировку после нескольких попыток входа с неправильным паролем
- использовать протокол SSL/TLS, если подключение к терминальному серверу идет не по VPN
Специалисты ГК Интегрус готовы бесплатно проконсультировать вас по любым вопросам, связанным с использованием терминальных серверов.
Также мы квалифицированно выполняем все работы по внедрению, настройке и обслуживанию терминального сервера. В нашу компетенцию входят:
- проект терминального сервера, установка и настройка, создание серверной “под ключ”
- аудит, профилактическое обслуживание и обновление терминальных серверов
- срочный ремонт, восстановление данных после сбоя терминального сервера
- сброс и удаление сервера терминалов при модернизации ИТ-инфраструктуры.
Присоединяйтесь к нам, чтобы каждую неделю получать полезные и рабочие материалы для улучшения вашего бизнеса.
Кейсы и стратегии от экспертов рынка.
Присоединяйтесь к нам, чтобы каждую неделю получать полезные и рабочие материалы для улучшения вашего бизнеса.
Кейсы и стратегии от экспертов рынка.
- Remove From My Forums
Из-за ошибки безопасности клиент не смог подключиться к серверу терминалов. Убедитесь в том, что вы вошли в сеть, и повторите попытку подключения к серверу
-
Вопрос
-
Был куплен новый сервер под управлением windows server 2012 Foundation. Основная роль «Сервер удаленных рабочих столов»:
1C-SERVER Лицензирование удаленных рабочих столов
Служба ролей Службы удаленных рабочих столовЛицензирование удаленных рабочих столов
1C-SERVER Веб-доступ к удаленным рабочим столам
Служба ролей Службы удаленных рабочих столовВеб-доступ к удаленным рабочим столам
1C-SERVER Службы удаленных рабочих столов
Роль Службы удаленных рабочих столов
1C-SERVER Узел сеансов удаленных рабочих столов
Служба ролей Службы удаленных рабочих столовУзел сеансов удаленных рабочих столов10 старых тонких клиентов на winCE. до сегодняшнего дня (неделю) подключались нормально. Сегодня решили удалить роль Вэб сервера за ненадобностью (вместе с ней удалилась служба Вэб-доступа к удаленным рабочим столам. После перезагрузки
сервера, клиенты перестали подключаться с ошибкой, сформулированной в заголовке («Из-за ошибки безопасности клиент не смог подключиться к серверу терминалов. Убедитесь в том, что вы вошли в сеть, и повторите попытку подключения
к серверу»). Клиент с ХР тоже перестал подключаться. Непонятно, связано ли это с удалением роли, но её восстановление не помогло. При этом клиент под маком и клиент с winsrv2008 подключаются.Флаг «Разрешить подключение только с копьютеров, на которых работает удаленный рабочий стол с проверкой подлинности на уровне сети» снят.
Извините, что так подробно все описал, но где же эта политика безопасности? Про 2012 сервер нигде не нашел ничего…
Доброго времени суток! Иногда при подключении у к серверу терминалов через клиент «Подключение к удаленному рабочему столу», может возникнуть ошибка: «Удаленный сеанс отключен, поскольку отсутствуют клиентские лицензии удаленного рабочего стола.» В данной статье я хочу описать причины возникновения данной ошибки и предложу возможные решения этой проблемы.
Итак, при подключению к серверу терминалов по протоколу RDP возникает ошибка: «Удаленный сеанс отключен, поскольку для данного компьютера отсутствуют клиентские лицензии удаленного рабочего стола.»
Данное сообщение можно увидеть в следующих случаях:
- Для службы удаленных рабочих столов на сервере терминалов не настроен сервер лицензирования.
- На сервере лицензирования не осталось клиентских лицензий доступа (CAL).
Рассмотрим эти ситуации более подробно, а также обозначим способы их устранения .
1. Настройка сервера лицензирования
Об установке сервера терминалов, а также о настройке сервера лицензирования удаленных рабочих столов и об активации лицензий можно прочитать в статьях:
- Установка сервера терминалов в Windows Server 2012 R2
- Установка сервера терминалов в Windows Server 2008 R2
Если прежде подключение через удаленный рабочий стол к серверу терминалов работало, то возможно данному клиенту была выдана временная лицензия на 180 дней, и срок этой лицензии уже истек. Для того чтобы заново получить временную лицензию необходимо на клиентской машине удалить из реестра сведения о действующей просроченной лицензии.
Запускаем редактор реестра. Сделать это можно выполнив команду regedit.exe («Пуск» — «Найти программы и файлы», либо «Пуск» — «Выполнить» или нажать комбинацию клавиш Win+R и вписать имя команды в окне «Выполнить»).
Настоятельно рекомендуется при любом изменении реестра делать его копию, для восстановления работоспособности Windows либо программ в случае возникновении проблем.
В запустившемся редакторе реестра необходимо удалить следующий каталог:
HKEY_LOCAL_MACHINESoftwareMicrosoftMSLicensing
После удаления, нужно обязательно запустить клиента «Подключение к удаленному рабочему столу» с правами «Администратора», для того чтобы в реестре прописалась новая временная лицензия.
2. Нехватка CAL-лицензий
Если на сервере лицензирования, который лицензирует данный сервер терминалов, закончились лицензии, необходимо дождаться пока кто-либо освободит лицензию, либо приобрести и активировать необходимое число CAL-лицензий.
Просмотреть общее, занятое и доступное количество лицензий можно в оснастке «Лицензирование сервера терминалов». Чтобы открыть данную оснастку в MS Windows Server 2008 нужно последовательно зайти в меню «Пуск» — «Администрирование» — «Службы удаленных рабочих столов» — «Диспетчер лицензирования удаленных рабочих столов»
Далее следует выбрать свой сервер лицензирования, нажать «Действие» и «Создать отчет». Этот отчет покажет:
- дату и время создания отчета;
- область отчета, например Domain, OU=Sales или All trusted domains;
- число Клиентских лицензий служб удаленных рабочих столов «на пользователя», установленных на сервере лицензирования;
- число Клиентских лицензий служб удаленных рабочих столов «на пользователя», выданных сервером лицензирования с учетом заданной области отчета.
Созданные отчеты отображаются на вкладке «Отчеты» в Диспетчере лицензирования удаленных рабочих столов.
Содержание
- Способы устранения ошибки
- Способ 1: Удаление веток реестра
- Способ 2: Копирование веток реестра
- Заключение
- Вопросы и ответы
При использовании RDP на компьютере под управлением операционной системы Windows по некоторым причинам может возникать ошибка об отсутствии клиентских лицензий удаленного рабочего стола. Далее в статье мы расскажем о причинах и методах устранения подобного сообщения.
Способы устранения ошибки
Возникает рассматриваемая ошибка вне зависимости от версии ОС из-за отсутствия лицензий на клиентском компьютере. Иногда то же самое сообщение можно увидеть из-за невозможности получения новой лицензии, так как ранняя была кэширована.
Способ 1: Удаление веток реестра
Первый метод заключается в удалении определенных ключей реестра, связанных с лицензиями RDP. Благодаря данному подходу можно обновить временные лицензии и вместе с тем избавиться от проблем по части кэширования устаревших записей.
- На клавиатуре воспользуйтесь комбинацией клавиш «Win+R» и введите следующий запрос.
regedit
- В реестре разверните ветку «HKEY_LOCAL_MACHINE» и переключитесь к разделу «SOFTWARE».
- На 32-битной ОС перейдите в папку «Microsoft» и пролистайте ее вниз до директории «MSLicensing».
- Кликните правой кнопкой мыши по строке с указанной папкой и выберите пункт «Удалить».
Примечание: Не забывайте делать копию изменяемых ключей.
- Процесс удаления необходимо подтвердить вручную.
- В случае с 64-битной ОС единственное отличие заключается в том, что после перехода к разделу «SOFTWARE», вам необходимо дополнительно раскрыть директорию «Wow6432Node». Остальные действия полностью аналогичны вышеописанному.
- Прежде чем перейти к запуску, выполните перезагрузку компьютера.
Читайте также: Как перезагрузить ПК
- Теперь, чтобы избежать повторного возникновения ошибки, запустите клиент «От имени администратора». Это необходимо сделать только в первый раз.
Если вы все сделали правильно, стабильная работа RDP будет восстановлена. В противном случае переходите к следующему разделу статьи.
Способ 2: Копирование веток реестра
Первый способ исправления проблемы с отсутствием клиентской лицензии удаленного рабочего стола является действенным не на всех версиях ОС Windows, что в особенности относится к десятке. Исправить ошибку можно путем переноса веток реестра с машины под управлением Windows 7 или 8 на ваш компьютер.
Читайте также: Включение RDP 8/8.1 в Windows 7
- В соответствии с инструкцией из первого способа на ПК с Win 7 откройте реестр и найдите ветку «MSLicensing». Кликните по данному разделу правой кнопкой мыши и выберите пункт «Экспортировать».
- Укажите любое удобное место сохранения файла, на свой выбор введите название и нажмите кнопку «Сохранить».
- Переместите созданный файл на ваш основной компьютер и дважды кликните по нему.
- Через окно с уведомлением подтвердите импорт, нажав кнопку «Да».
- В случае успеха вы получите уведомление и теперь компьютер нужно перезапустить.
Примечание: Несмотря на различия в версиях ОС, ключи реестра работают должным образом.
После выполнения описанных в данной инструкции действий ошибка должна исчезнуть.
Заключение
Рассмотренные способы позволяют избавиться от ошибки отсутствия клиентских лицензий в большинстве случае, но все же не всегда. Если настоящая статья не помогла вам с решением проблемы, оставляйте свои вопросы нам в комментариях.
Еще статьи по данной теме:
Текст ошибки:
Подключение к удалённому рабочему столу
Удалённый сеанс отключен, поскольку для данного компьютера отсутствуют клиентские лицензии удалённого рабочего стола.
Обратитесь к администратору сервера.
Гугление проблемы выдает решение почистить ветку реестра HKLMsoftwaremicrosoftMslicensing
с последующим запуском RDP от администратора. Пробовал в различных вариантах — всё без толку.
На удаленной машине 1 общая лицензия. Коллеги подключаются без проблем. На моей машине данная ошибка наблюдается только с данным подключением. К другим машинам по RDP подключаюсь без проблем.
Моя ОС — Win10 Pro.
Собственно вопрос: Как исправить проблему с подключением?
Arhadthedev
11.4k8 золотых знаков39 серебряных знаков69 бронзовых знаков
задан 18 ноя 2016 в 7:17
2
После удаления ветки
HKLMsoftwaremicrosoftMslicensing
перезгружались сразу?
После перезагрузки не подключаясь, сразу можно зайти в реестр и посмотреть, есть ли эта ветка. ЕЕ там не должно быть до первого подключения к RDP. Возможно она у вас по факту не удаляется.
Так же как вариант можно выполнить
reg delete "HKLMSOFTWAREMicrosoftMSLicensingStoreLICENSE000" /f
Поправьте ключ под свой номер только.
Ну и стоило бы глянуть, как сервер раздает лицензии, возможно с его стороны какой-то косяк с кешем.
UP. так же можно попробовать в качестве эксперимента запустить RDP из под сеанса другого пользователя.
ответ дан 21 ноя 2016 в 12:00
DofriDofri
1,0702 золотых знака11 серебряных знаков26 бронзовых знаков
5
По какой-то, не совсем мне понятной, причине после удаления ветки HKLMsoftwaremicrosoftMslicensing
она не восстанавливалась полностью в том виде, в котором была до удаления (не создавалась папка LICENSE000). Любые комбинации перезагрузки/запуска от администратора и тп. результатов не давали.
Что в итоге помогло: поднял виртуалку, на ней РДП подключился без проблем, после скопировал полностью ветку HKLMsoftwaremicrosoftMslicensing
с виртуальной машины на рабочую. Далее перезагрузка и запуск RDP от администратора и подключение прошло успешно. Ещё пару запусков не от админстратора вылетала ошибка сертификата, но после повторной перезагрузки и запуска от адм. исчезла.
ответ дан 28 ноя 2016 в 6:48
AlexeyAlexey
1,6182 золотых знака13 серебряных знаков28 бронзовых знаков
По поводу 1 общая лицензия: у Вас на сервере лицензирования какая лицензия активирована на пользователя или на устройство, какое количество?
Если приобреталась лицензия на устройство, то необходимо проверить в ‘Диспетчер лицензирования удаленных рабочих столов’ к какому ПЭВМ привязана лицензия, с сколько свободных.
Лицензия на устройство не может быть использована для подключения к серверу с двух разных ПЭВМ.
Ну и как уже говорили, если у Вас отсутствуют права администратора, обратитесь к администратору сервера терминалов.
Общие рекомендации:
- Проверить количество доступных лицензий терминального подключения.
в зависимости от версии сервера способы могут отличаться, но в общем случае:
a. зайти на сервер терминальных лицензий (чаще всего данная роль установлена на том же сервере что и сервер терминалов).
b. Вызвать ‘Диспетчер лицензирования удаленных рабочих столов’ (%windir%system32licmgr.msc
).
c. Выбрать в открывшейся консоли сервер лицензий. Посмотреть установленные лицензии, проверить статус сервера лицензий (активирован или нет); - для подключения к серверу в режиме ‘консоль’ выполнить с повышением прав от имени администратора:
mstsc /v:[TERMINAL_SERVER] /admin
; подключение к серверу терминалов выполнять от пользователя с правами администратора терминального сервера/администратора домена;- вместо [TERMINAL_SERVER] указать имя сервера. пробовать подключаться с полным доменным именем и/или ip-адресом
- В дополнение к приведенным действия по удалению ключей лицензии на проблемной рабочей станции после очистки запустить mstsc c повышенными правами+правами администратора.
ответ дан 24 ноя 2016 в 11:12
4 g4 g
614 бронзовых знака
На некоторых Windows 10 удаление «MSLicensing» не работает, если использовать утилиту «Подключение к рабочему столу». Хоть за удаляйся «MSLicensing». Проверял на лицензионной Windows 10 Pro подключаться к Windows Server 2012, с купленными лицензиями на удаленный доступ. В таких случаях на Windows 10 нужно использовать утилиту «Удаленный рабочий стол» как тут (https://windowstips.ru/udalennyj-rabochij-stol-v-windows-10-i-8-1), вот на ней всё начинает работать, после удаления MSLicensing.
ответ дан 16 фев 2018 в 2:16
При работе через компьютер с удалёнными рабочими столами нередко происходят неполадки с подключением. Одна из частых ошибок – «удаленный сеанс отключен, поскольку отсутствуют клиентские лицензии». Причин у подобной неисправности достаточно много, и устраняются они разными способами.
Что за ошибка, почему возникает?
Ошибка с отсутствием клиентских лицензий удаленного рабочего стола возникает при попытке соединения по протоколу RDP. Проблема может находиться как на компьютере (ПК) клиента, так и на сервере. В первой ситуации нужно лишь произвести удаление информации о лицензии из кэша и затем получить новую. А во втором случае уже потребуется обращение к системному администратору.
Если зайти в просмотр событий системы (Панель управления — Администрирование – просмотр событий), то в момент возникновения ошибки иногда можно найти информационное сообщение, которое расшифрует причину неисправности. В зависимости от этого и выбираются дальнейшие действия. Чаще всего встречаются всего 2 разновидности проблем с удаленными сеансами.
Однако приступать к поиску ошибки стоит только в том случае, если пользователь уверен, что лицензии действительно есть и их хватает для работы.
Сервер лицензирования удалённых рабочих столов недоступен
Подобный вид ошибки может сопровождаться сообщениями о том, что отсутствуют доступные серверы или серверы лицензирования. В этом случае требуется выполнить ряд несложных действий:
- Подсоединитесь к RDP-серверу по IP-адресу вместо DNS-имени. Если ошибка возникает на этапе проверки логина и пароля, то используйте не доменные, а локальные учетные данные.
- Далее следует установить, распознаёт ли DNS-сервер FQDN название RDP-сервера. Запустите командную строчку и пропишите: «Nslookup rdpserver», где вместо rdpserver пишем имя сервера. Удостоверьтесь, что отобразился IP-адрес сервера.
- Если команда возвратила неверные данные, тогда произведите сброс кэша DNS (ipconfig/flushdns в командной строке) на клиенте и разрешите наименование RDP-сервера, воспользовавшись снова «Nslookup».
- Если «Nslookup» всё так же будет указывать неверные данные, проверьте файл «hosts» командой: «Notepad C:WindowsSystem32driversetchosts».
- Если в файле не присутствуют статические записи для RDP-сервера, можно попытаться внести их самостоятельно, добавив строчку формата: «IP-адрес сервера rdpserver.xxx.ru», где rdpserver.xxx.ru – имя сервера.
- Если неполадка исправится — причина в DNS-сервере. Проведите проверку записей на нём, либо уведомите о неполадке администратора DNS. Убедитесь, имеется ли доступ к RDP-серверу, используя «ping rdpserver.xxx.ru».
- Убедитесь, что с клиента на сервере имеется доступ к RDP-порту 3389 с применением «PowerShell». Введем команду «Test—NetConnection rdpserver —port 3389».
- Если команда возвращает «TcpTestSucceeded: False», значит RDP-служба на удалённом ПК не запущена либо соединение запрещается межсетевым экраном или брандмауэром.
Также, если сервер лицензирования удаленных рабочих столов недоступен, можно выполнить ряд рекомендаций:
- Произведите обновление RDP-клиента.
- Воспользуйтесь альтернативным RDP-клиентом, например Remote Desktop Manager.
- Отключите защитные программы у клиента и сервера и проверьте подключение.
- Если подключение происходит с клиента Windows XP, а на сервере запущена опция NLA, то у клиента XP необходимо запустить поддержку NLA через реестр.
- Проверьте, что для учётной записи определён пароль.
- Если ошибка «Удалённый рабочий стол не сумел отыскать ПК» появилась при попытке выполнить RDP-подключение со странички «RD Web Access», в опциях RDP-соединения нужно ввести верный адрес сервера RD Gateway (подключение через RDWebAccess осуществляется через 443 порт HTTPS) и попытаться подключиться. Если получилось, значит неверные настройки сервера RDWebAccess.
Чтобы ликвидировать неполадку, запустите консоль IIS на сервере «RDWebAccess». Переходите в Sites – Default Web Site — RDWeb — Pages, запустите «Application Settings» и в «DefaultTSGateway» указывайте внешнее DNS-имя сервера «RD Gateway».
Нет клиентской лицензии удалённого рабочего стола
Для исправления подобной ошибки можно использовать несколько способов.
В первом случае потребуется удалить определённые ключи реестра, которые связаны с лицензиями RDP:
На 32-битной ОС нужно перейти в папку «Microsoft» и дойти до «MSLicensing».
Затем щёлкните правой клавишей мышки по строке с данной папкой и нажмите на «Удалить».
Процедуру удаления нужно подтверждать вручную.
В ситуации с 64-битной ОС особенность в том, что после перехода к блоку «SOFTWARE», нужно добавочно раскрывать «Wow6432Node».
После проделанных процедур перезапустите ПК.
Во избежание вторичного возникновения ошибки, откройте клиент «От имени администратора». Это нужно проделать лишь в первый раз.
Если всё сделано верно, стабильная работа RDP восстановится.
Во втором случае можно скопировать ветки реестра, однако делать это нужно между одинаковыми версиями системы. Процедура устранения проблем с отсутствием лицензий следующая:
- Запустите реестр и отыщите «MSLicensing» (как в предыдущем случае). Щёлкните по блоку правой клавишей мышки и нажмите на опцию «Экспортировать».
- Указывайте директорию сохранения документа, на собственный выбор задайте наименование и щёлкните по «Сохранить».
- Необходимо переместить созданный файл на другой ПК и 2 раза щёлкнуть по документу.
- В окне уведомления согласитесь на импорт, нажимая на «Да».
- При успешном выполнении процедуры появится уведомление, и тогда ПК можно перезагрузить.
Проверка лицензии на стороне сервера
Необходимо запустить утилиту «Диспетчер лицензирования удалённых рабочих столов». Её возможно открыть через окошко «Администрирование». Она появляется после назначения ролей.
В утилите потребуется выбрать наименование сервера и сформировать отчёт о работе. В нём будут отражены данные о времени и дате создания, количестве клиентских служб, области отчёта и т. д. Эти сведений позволят выяснить число нужных и имеющихся CAL-лицензиях на сервере.
В этой статье мы рассмотрим несколько распространенных ошибок, связанных с RDS лицензированием, когда RDP удаленные клиенты не могут подключится к терминальным серверам Windows Server с ролью Remote Desktop Services Host.
Ошибки лицензирования при подключении RDP клиентов к RDS хосту могут появляться, если:
- На хосте Remote Desktop Services не указан сервер RDS лицензирования, с которого нужно получить клиентские лицензии (RDS CAL);
- На сервере RDS Licensing закончились доступные клиентские лицензии;
- Клиент пытается подключиться с истекшей временной RDS лицензией;
Содержание:
- Удаленный сеанс отключен, поскольку для данного компьютера отсутствуют клиентские лицензии удаленного рабочего стола
- Удаленный сеанс отключен, поскольку отсутствуют доступные серверы лицензирования удаленных рабочих столов, которые могли бы провести лицензирование
- RDS Licensing Grace Period Has Expired (L$RTMTIMEBOMB)
Удаленный сеанс отключен, поскольку для данного компьютера отсутствуют клиентские лицензии удаленного рабочего стола
Сначала рассмотрим ошибку, связанную с получением клиентами лицензий (RDS CAL) с сервера лицензирования.
Remote session was disconnected because there are no Remote Desktop client access licenses available for this computer
Удаленный сеанс отключен, поскольку для данного компьютера отсутствуют клиентские лицензии удаленного рабочего стола
В первую очередь вам нужно подключиться к RDSH серверу в административном режиме (
mstsc.exe /admin
) и запустить утилиту RD Licensing Diagnoser. Если у вас все настроено правильно, вы должны увидеть имя сервера лицензирования RDS, и тип лицензии (Per User/Per Device).
С помощью консоли RD Licensing Manager (
licmgr.exe
) подключитесь к серверу RDS лицензий и проверьте, что в вам доступны свободные лицензии нужного типа (Per User/Per Device). Если свободные лицензии закончились, нужно приобрести новый пакет CAL, дождаться пока кто-нибудь освободит лицензию или отозвать неиспользуемые лицензии прямо из консоли (Revoke License).
В данном примере видно, что RDS CAL есть, и они выдаются пользователям (Issued = 44).
Совет. Если ваш сервер RDSH развернут в рабочей группе (не в домене), то на нем нельзя использовать лицензии RDS CAL Per User. При подключении ваши пользователю всегда будут получать временную лицензию Per Device.
Скорее всего в этом случае клиентский компьютер пытается подключиться к вашему RDSH серверу со временной RDP лицензией с истекшим сроком (если при первом подключении клиента ваш RDS Licensing сервер был недоступен, клиенту была выдана временная лицензия на 180 дней). В этом случае нужно на клиенте сбросить эту просроченную лицензию в реестре.
На клиентском компьютере (в этом примере Windows 10), выполните следующее:
- Запустите редактор реестра
regedit.exe
; - Удалите ветку реестра HKEY_LOCAL_MACHINESoftwareMicrosoftMSLicensing;
- Закройте редактор реестра и запустите mstsc.exe (Remote Desktop Connection) с правами администратора;
- Потом подключитесь к вашему RDS серверу. При этом ветка MSLicensing автоматически пересоздастся, и компьютер получит новую лицензию.
Если вы не запустили
mstsc.exe
с правами администратора, то при любом RDP подключении будет появляться ошибка:
The remote computer disconnected the session because of an error in the licensing protocol. Please try connecting to the remote computer again or contact your server administrator.
Удаленный сеанс отключен, поскольку отсутствуют доступные серверы лицензирования удаленных рабочих столов, которые могли бы провести лицензирование
У одного из заказчиков появилась другая проблема с фермой терминальных серверов Remote Desktop Services на базе. По какой-то причине RDS сервер перестал выдавать терминальные лицензии пользователям, хотя роль сервера лицензий RDS установлена и настроена, а RDP CAL активированы.
Когда пользователь пытается подключится к терминальному серверу по RDP, появляется ошибка:
The remote session was disconnected because there are no Remote Desktop License Servers available to provide a license. Please contact the server administrator.
В русской версии Windows ошибка выглядит так:
Удаленный сеанс отключен, поскольку отсутствуют доступные серверы лицензирования удаленных рабочих столов, которые могли бы провести лицензирование.
Подключитесь к консоли сервера в административном режиме (
mstsc /admin
). Запустите Server Manager, откройте настройки RDS (Remote Desktop Services -> Deployment Overview -> Tasks -> Edit Deployment Properties ) и проверьте что в конфигурации RDSH указан правильный сервер лицензирования (Remote Desktop License Server) и тип RDS CAL (Per Device или Per User).
Также можно проверить настройки сервера RDS лицензирования из PowerShell:
Get-RDLicenseConfiguration
Как мы видите, LicenseServer в конфигурации указан, и используется тип лицензирования PerUser.
Проверьте, что следующие порты не блокируются межсетевыми экранами при доступе с RDSH хоста до RDS LicenseingServer:
TCP:135, UDP:137, UDP:138, TCP:139, TCP:445, TCP:49152–65535 (RPC range)
. Если RDS License сервер не доступен, в окне License Diagnoser будет ошибка:
License server rdslic_hostname is not available. This could be caused by network connectivity problems, the Remote Desktop Licensing service is stopped on the license server, or RD Licensing isn't available.
RDS Licensing Grace Period Has Expired (L$RTMTIMEBOMB)
Внимательно посмотрите события в Event Viewer на RDS хосте. Возможно там есть такая ошибка:
EventID: 1128 Source: TerminalServices-RemoteConnectionManagerThe RD Licensing grace period has expired and the service has not registered with a license server with installed licenses. A RD Licensing server is required for continuous operation. A Remote Desktop Session Host server can operate without a license server for 120 days after initial start up.
В RD License Diagnoser скорее всего также будет отображаться ошибка:
The grace period for the Remote Desktop Session Host server has expired, but the RD Session Host server hasn't been configured with any license servers. Connections to the RD Session Host server will be denied unless a license server is configured for the RD Session Host server.
Это означает, что ваш льготный период работы RDSH сервера (grace) истек, и вам нужно продлить grace режим, либо активировать хост на полноценном сервере лицензий RDS.
Количество дней до окончания RDS Grace Period можно узнать из
cmd.exe
с правами администратора командой:
wmic /namespace:rootCIMV2TerminalServices PATH Win32_TerminalServiceSetting WHERE (__CLASS !="") CALL GetGracePeriodDays
Обратите внимание, что
DaysLeft = 0
. Это означает, что на RDSH хосте истек Grace Period.
Чтобы продлить grace период в RDS нужно на сервере удалить параметр реестра, в котором задается время отсчета льготного периода лицензирования (grace period licensing). Дата, определяющая время окончания работы RDSH в режиме grace хранится в reg_binary параметре реестра L$RTMTIMEBOMB (довольно забавное имя –TIME BOMB …. ;), находящемся в ветке:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerRCMGracePeriod
Вам нужно удалить из реестра параметр L$RTMTIMEBOMB. Однако, у администратора недостаточно прав для этого.
Unable to delete all specified values.
Чтобы удалить этот параметр реестра, нужно открыть разрешения родительской ветки и предоставить своей учетной записи права владельца на ветку. Затем дайте себе права RW на ветку (не буду подробно описывать сам процесс).
Теперь щелкните правой кнопкой по параметру L$RTMTIMEBOMB и удалите его.
Перезагрузите RDSH сервер и подключитесь к нему с клиента по RDP.
С помощь консоли Remote Desktop Licensing Manager проверьте, что RDS CAL лицензия выдана.
Если RDS CAL не получен, проверьте есть ли в журнале событие:
Event ID : 1130 Source : TerminalServices-RemoteConnectionManager The Remote Desktop Session Host server does not have a Remote Desktop license server specified. To specify a license server for the Remote Desktop Session Host server, use the Remote Desktop Session Host Configuration tool.
С помощью следующей PowerShell команды проверьте, задан ли сервер RDS лицензирования:
$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting
$obj.GetSpecifiedLicenseServerList()
Как вы видите, сервер лицензирования RDS не задан (список
SpecifiedLSList
пуст). Следующая команда принудительно задаст адрес сервера лицензий RDS.
$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting
$obj.SetSpecifiedLicenseServerList("msk-rdslic.winitpro.ru")
Также можно задать имя сервера лицензирования и тип лицензии с помощью GPO. Если вы используете локальную политику, запустите gpedit.msc и перейдите в раздел Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Licensing и настройте два параметра:
- Use the specified Remote Desktop license servers
- Set the Remote licensing mode
Теперь RDS хост сможет получать лицензии от сервера RDS Licensing и выдавать их вашим RDP пользователям.
-
Настройка сервера лицензирования
-
Проверка CAL – лицензий
Во всех версиях Windows, начиная с XP, есть стандартный RDP-клиент (Remote Desktop Protocol), который используется для подключения к службе удаленных рабочих столов. Иногда, при подключении к серверу терминалов через клиент удаленного рабочего стола возникает ошибка: “удаленный сеанс отключен поскольку отсутствуют клиентские лицензии”.
Это сообщение может возникнуть в двух случаях:
- На сервере терминалов не настроен сервер лицензирования для службы удаленных рабочих столов.
- Сервер лицензирования не выделил клиентские лицензии доступа (CAL).
Детальнее рассмотрим оба случая.
Настройка сервера лицензирования
Ошибка чаще возникает через некоторое время в уже настроенных подключениях, спустя 120 или 180 дней. Вероятно, что при создании подключения, клиенту была выдана временная лицензия на данный период времени. Чтобы получить новую временную лицензию, необходимо на клиентской машине удалить сведения о просроченной лицензии из реестра. Для этого:
- Нажмите Win+R и выполните команду regedit.
- Сделайте бэкап реестра.
- Нажмите “Файл” → “Экспорт” → “Диапазон (Весь реестр)” → Присвойте имя файла → “Сохранить”.
- Откройте ветку: HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSLicensing и удалите MSLicensing.
- Затем откройте подключение к удаленному рабочему столу с правами администратора. При открытии, новая лицензия пропишется в реестре.
Проверка CAL – лицензий
Возможен такой вариант событий, что на сервере лицензирования сервера терминалов закончились лицензии. Для этого, просто подождите пока освободится лицензия, либо приобретите и активируйте нужное количество CAL – лицензий.
Чтобы проверить доступные и занятые CAL, воспользуйтесь «Лицензированием сервера терминалов» на серверной Windows:
- Откройте «Пуск» → «Администрирование» → «Службы удаленных рабочих столов» → «Диспетчер лицензирования удаленных рабочих столов».
- Выберите свой сервер лицензирования.
- В открывшемся окне нажмите “Действие” → “Создать отчет”.
В отчете будет отображено число клиентских лицензий служб удаленных рабочих столов «на пользователя» которые:
- установлены на сервере лицензирования;
- выданы сервером лицензирования с учетом заданной области отчета.
Совет! Вы можете оптимизировать клиентскую Windows 10, отключив ненужные службы. Ознакомится со списком служб можно в статье: “Повышаем производительность компьютера”.
У пользователей, которые регулярно работают через компьютер с удаленными рабочими столами, возникают периодические проблемы с подключением. Иногда это выражается в бесконечной процедуре соединения, а в некоторых ситуациях сопровождается ошибкой. В данной статье мы рассмотрим окно с текстом «Удаленный сеанс отключен, поскольку отсутствуют клиентские лицензии удаленного рабочего стола». Поговорим о том, какие причины влияют на появление данной ошибки, и как ее устранить.
Содержание
- Что означает ошибка
- Сброс лицензии через редактор реестра
- Проверка лицензии на стороне сервера
- Видеоинструкция
- Заключение
Что означает ошибка
Хоть текст сообщения и написан простыми словами, не каждый пользователь сможет догадаться о самой поломке. Данная ошибка возникает при попытке подключения к удаленному серверу. Каждая попытка установить соединение приводит к подобному уведомлению.
Причина может скрываться на компьютере клиента и на сервере. В первом случае вы сможете легко исправить проблему. Для этого необходимо удалить данные о лицензии из кэша, после чего получить новую. А во втором случае со стороны клиента решить вопрос не получится – придется обращаться к администратору сервера.
Сброс лицензии через редактор реестра
Сначала поговорим о том, каким методом можно обновить сведения о лицензии на стороне клиентского компьютера. Дело в том, что терминал-сервер выдает временные лицензии на 180 дней, если у вас пиратская или непроверенная копия. По истечению данного срока удаленное соединение блокируется, если вы не купили постоянную лицензию или не обновили временный доступ. На эту причину намекает то, что ранее у вас работал доступ без каких-либо проблем, но через некоторое время стала появляться ошибка.
Для обновления лицензии необходимо воспользоваться функционалом редактора реестра. Запустить его можно с помощью поисковой строки на панели задач. Введите название утилиты и запустите приложение. Сделать это нужно с администраторскими правами.
Также программу можно открыть через окно «Выполнить». В строке необходимо ввести «regedit» и запустить выполнение команды кнопок «ОК» или нажатием на [knopka]Enter[/knopka].
Мнение эксперта
Василий
Руководитель проекта, эксперт по модерированию комментариев.
Задать вопрос
Перед тем, как вносить изменения в записи реестра, рекомендуется сделать резервную копию. Это позволит вам восстановить работоспособность системы в экстренном случае.
Теперь необходимо открыть раздел MSLicensing, путь до которого вы можете увидеть на представленном скриншоте окна редактора реестра. Найдите папку, выделите ее и сотрите через вспомогательное меню.
После этого необходимо обязательно активировать соединение с удаленным рабочим столом от имени администратора, чтобы данная ветка в файле реестра создалась заново. Если дополнительных проблем не возникнет, то временная лицензия обновится, а соединение будет установлено. Если этого не произошло, то попробуйте удалить ветку еще раз и до удаленного подключения перезагрузите компьютер. Затем проверьте присутствие раздела MSLicensing. Возможно, он попросту не удалился, поэтому обновить лицензию не удалось.
Проверка лицензии на стороне сервера
Но не во всех случаях представленный метод может сработать. Дальнейшие действия нужно выполнять на серверном компьютере. Для управления потребуется утилита «Диспетчер лицензирования удаленных рабочих столов», которую можно запустить через окно «Администрирование». В приложении выберите название вашего сервера и создайте отчет о работе. В отчете будет информация о дате и времени создания, области отчета, числа клиентских служб и так далее. С помощью этой информации можно узнать количество необходимых и имеющихся CAL-лицензии на сервере.
Видеоинструкция
Мы рассмотрели ошибку и ее способы устранения. А если вам нужно больше информации, то посмотрите наш ролик.
Заключение
Итак, теперь вы сможете устранить ошибку с текстом «Удаленный сеанс отключен, поскольку отсутствуют клиентские лицензии удаленного рабочего стола» со стороны клиентского компьютера. Если проблема не поддается исправлению, то обратитесь к специалистам и администраторам сервера для настройки. А если у вас возникли проблемы или вопросы после прочтения инструкции, то пишите об этом в комментариях.
Источник:
http://www.mmouse.ru/2012/06/29/oshibka-rdp-udalennyj-seans-otklyuchen-poskolku-dlya-dannogo-kompyutera-otsutstvuyut-klientskie-licenzii-udalennogo-rabochego-stola/ |
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
Если при запуске терминального соединения вы получили ошибку: Удаленный сеанс отключен, поскольку для данного компьютера отсутствуют клиентские лицензии удаленного рабочего стола. Это означает, что у вас отсутствует, либо просрочена клиентская лицензия терминала. Такое может случиться когда у вас установлен пиратский терминал-сервер, или не активированный терминал — сервер. В этом случае терминал-сервер выдаёт временные лицензии со временем жизни три месяца. Для того, чтобы обновить информацию о лицензиях терминала и решить проблему Удаленный сеанс отключен, поскольку для данного компьютера отсутствуют клиентские лицензии необходимо удалить текущую лицензию из кэша,и получить новую. Для удаления лицензии RDP с клиентского компьютера, откройте ветку реестра HKEY_LOCAL_MACHINESoftwareMicrosoftMSLicensing и удалите все подразделы. После этого перезагрузитесь и повторите подключение к серверу RDP. Update: Возможно, в первый раз нужно будет запустить RDP клиента от имени Андминистратора. |