Содержание
- Способ 1: Замена файла конфигурации
- Способ 2: Настройка в «Редакторе групповых политик»
- Не работает RDP в целом
- Вопросы и ответы
Подключение по протоколу RDP в Виндовс 10 активно используется как некоторыми рядовыми пользователями, так и профессионалами. Для обхода системного ограничения последние использует программу RDP Wrap. Увы, но после обновлений системы этот софт перестаёт работать, и сегодня мы поможем вам решить эту проблему.
Способ 1: Замена файла конфигурации
Проблемы с работой рассматриваемой программы возникают вследствие обновлений системной библиотеки termsrv.dll. Под каждую её версию RDP Wrap нужно конфигурировать заново. К счастью, разработчики приложения заботятся об этом сами и после каждого мажорного апдейта выпускают новый конфигурационный файл. Алгоритм его замены выглядит следующим образом:
- Перейдите по ссылке в репозиторий приложения на GitHub.
Репозиторий на GitHub
- Откройте каталог res двойным щелчком левой кнопки мыши. Найдите внутри ссылку с именем rdpwrap.ini и кликните по ней правой кнопкой мыши. Выберите пункт «Сохранить ссылку как…» (в других браузерах – «Сохранить объект как…» или похожее по смыслу).
Сохраните файл rdpwrap.ini в любое подходящее место на компьютере.
- Теперь откройте утилиту «Выполнить» сочетанием Win+R, введите в неё запрос
services.msc
и нажмите «ОК».
После запуска списка служб найдите запись «Службы удалённых рабочих столов», выделите её и нажмите «Остановить службу».
Подтвердите остановку.
- Далее откройте «Проводник» и перейдите по следующему адресу:
C:\Program Files\RDP Wrapper
Скопируйте полученный ранее rdpwrap.ini и вставьте в эту папку.
Подтвердите замену файла.
- Перезагрузите компьютер, после чего откройте монитор враппера с именем RDConfig.
Проверьте строку «Listener» – если надпись в ней гласит «Fully supported», проблема устранена.
Данный метод является предпочтительным, и к следующему следует прибегать только в случае отсутствия его эффективности.
Способ 2: Настройка в «Редакторе групповых политик»
Пользователи Windows 10 редакций Профессиональная и Корпоративная могут решить рассматриваемую проблему настройкой определённого параметра в «Редакторе групповых политик».
- Вызовите средство «Выполнить» (шаг 3 Способа 1), в котором введите запрос gpedit.msc.
- Перейдите по следующему пути:
Конфигурация компьютера/Административные шаблоны/Компоненты Windows/Службы удаленных рабочих столов/Узел сеансов удаленных рабочих столов/Подключения
- Дважды кликните по политике «Ограничить количество подключений».
Установите положение «Включено», после чего измените значение максимального количество подключений на
999999
. Сохраните изменения последовательным нажатием на кнопки «Применить» и «ОК». - Закройте «Редактор групповых политик» и перезагрузите компьютер.
Описанная выше манипуляция позволит решить проблему, но является потенциально небезопасной, поэтому используйте её в самом крайнем случае.
Порой вышеприведённые действия не приводят к желаемому результату. В этом случае отметим, что скорее всего дело уже не во враппере и библиотеке. Действуйте так:
- Сначала проверьте параметры брандмауэра, как системного, так и стороннего, и разрешите в нём соединение по РДП.
Урок: Настройка брандмауэра на Windows 10
- Также стоит проверить состояние портов – не исключено, что требуемый для работы нужного протокола просто закрыт.
Подробнее: Как открыть порты на Windows 10
- Ещё раз проверьте редакцию целевой «десятки» – подключение по RDP не поддерживается в Windows 10 Home.
-
Рассматриваемый тип соединения может не работать из-за повреждений соответствующих системных файлов. Для начала проверьте, не завёлся ли в вашей системе вирус.
Подробнее: Борьба с компьютерными вирусами
После этого проверьте целостность компонентов ОС и восстановите их одним из возможных способов, если в этом появится необходимость.
Урок: Проверка целостности и восстановление системных файлов в Windows 10
Теперь вам известно, как нужно действовать в ситуации, когда RDP Wrapper перестал работать после обновления Windows 10, и что делать, если подключение по этому протоколу не работает в целом.
Еще статьи по данной теме:
Помогла ли Вам статья?
Hello, thanks for sharing the wrapper. Unfortunately the solution doesn’t work for me. Details are as follows:
Edition: Windows 10 Home
Version: 21H1
OS Build: 19043.1237
This is what I see on running rdpconf (as an administrator)
Wrapper state: Installed ver. 1.5.0.0
Service state: Running ver. 10.0.19041.1202
Listener state: Not listening [Not supported]
Any suggestion?
Hi, All! @priyanparida, thank you opened this issue!
my case is completely similar, except for:
Edition: Windows 10 Home Single language
Version: 20H2
OS Build: 19042.1237
«Not listening [Not supported]» after Windows update:
September 14, 2021—KB5005565 (OS Builds 19041.1237, 19042.1237, and 19043.1237)
this is a common problem after updating Terminal Services (termsrv.dll) version with windows update,
it’s fixed by updating the file rdpwrap.ini to latest version e.g. RDP Wrapper & Autoupdate project
after updating the auto update version my file rdpwrap.ini — was found and updated successfully, I recommend this solution as the easiest
good luck!
After replacing the rdpwrap.ini it goes fully supported but i can’t connect with second computer, it make me login off from main computer what can be the problem?
Hi, All! @priyanparida, thank you opened this issue!
my case is completely similar, except for:
Edition: Windows 10 Home Single language
Version: 20H2
OS Build: 19042.1237«Not listening [Not supported]» after Windows update:
September 14, 2021—KB5005565 (OS Builds 19041.1237, 19042.1237, and 19043.1237)
this is a common problem after updating Terminal Services (termsrv.dll) version with windows update,
it’s fixed by updating the file rdpwrap.ini to latest version e.g. RDP Wrapper & Autoupdate projectafter updating the auto update version my file rdpwrap.ini — was found and updated successfully, I recommend this solution as the easiest
good luck!
Try this version of rdpwrap rdpwrap.zip
I happen to have the same version but it works for me.
Hi, All! @priyanparida, thank you opened this issue!
my case is completely similar, except for:
Edition: Windows 10 Home Single language
Version: 20H2
OS Build: 19042.1237«Not listening [Not supported]» after Windows update:
September 14, 2021—KB5005565 (OS Builds 19041.1237, 19042.1237, and 19043.1237)
this is a common problem after updating Terminal Services (termsrv.dll) version with windows update,
it’s fixed by updating the file rdpwrap.ini to latest version e.g. RDP Wrapper & Autoupdate projectafter updating the auto update version my file rdpwrap.ini — was found and updated successfully, I recommend this solution as the easiest
good luck!
Hello @clever-tech, thank you for your response. I have tried both the options i.e. autoupdate as well as manually replacing the file you gave. None worked, unfortunately. Refer attached documents for details of the steps I followed along with screenshots.
-Priyan
RDP Wrapper Issue (Replace rdpwrap-ini file).pdf
RDP Wrapper Issue (run autoupdate project).pdf
Hi, All! @priyanparida, thank you opened this issue!
my case is completely similar, except for:
Edition: Windows 10 Home Single language
Version: 20H2
OS Build: 19042.1237
«Not listening [Not supported]» after Windows update:
September 14, 2021—KB5005565 (OS Builds 19041.1237, 19042.1237, and 19043.1237)
this is a common problem after updating Terminal Services (termsrv.dll) version with windows update,
it’s fixed by updating the file rdpwrap.ini to latest version e.g. RDP Wrapper & Autoupdate project
after updating the auto update version my file rdpwrap.ini — was found and updated successfully, I recommend this solution as the easiest
good luck!Try this version of rdpwrap rdpwrap.zip
I happen to have the same version but it works for me.
No luck! Still the same error
Does not matter Home or Pro, on build 19043.1237, ini file and autoupdater does not work
Hello friends, mine is working however, I can’t make multiple simultaneous connections does anyone have an idea?
Hello friends, mine is working however, I can’t make multiple simultaneous connections does anyone have an idea?
which file are you using, which version of the OS build you have,?
Olá amigos, o meu está funcionando no entanto, eu não posso fazer múltiplas conexões simultâneas alguém tem uma ideia?
qual arquivo você está usando, qual versão da compilação do SISTEMA OPERACIONAL você tem,?
AND I AM RUNNING VIA VM PERFECTLY BUT ONLY ONE CONNECTION AT A TIME
Olá amigos, o meu está funcionando no entanto, eu não posso fazer múltiplas conexões simultâneas alguém tem uma ideia?
qual arquivo você está usando, qual versão da compilação do SISTEMA OPERACIONAL você tem,?
Hello @philipejapa, can you please share your rdpwrap.ini file?
Olá amigos, o meu está funcionando no entanto, eu não posso fazer múltiplas conexões simultâneas alguém tem uma ideia?
qual arquivo você está usando, qual versão da compilação do SISTEMA OPERACIONAL você tem,?
rdpwrap.TXT
Hello @philipejapa, can you please share your rdpwrap.ini file?
of course i’m sent now
Please help, this is my rdp and my winver is different, the remote desktop service started it but it stops automatically, what should I do?
ok, 1st download the .txt file I sent and change it to .ini extension with the same name will be rdpwrap.ini
2nd disconnect any network connection
3rd copy the rdpwrap.ini in the folder that you installed the application where the rdpconf.exe is
4th restart the computer and check if it worked
ok, 1st download the .txt file I sent and change it to .ini extension with the same name will be rdpwrap.ini
2nd disconnect any network connection
3rd copy the rdpwrap.ini in the folder that you installed the application where the rdpconf.exe is
4th restart the computer and check if it worked
if it doesn’t work, try to check in the advanced windows firewall if the port released in rdpconf.exe is the same as in the remote desktop inside the advanced firewall
Please help, this is my rdp and my winver is different, the remote desktop service started it but it stops automatically, what should I do?
cara se vc for brasileiro me chama no gmail philipejapa@gmail.com
@philipejapa, thank you for sharing the file. That did not work for me, unfortunately. However, the good thing is that I found a solution on this thread:
#1520
The file from cahebebe along with steps suggested by flybeye did the trick! Finally!!!
I am summarizing everything below, hope some of you can benefit from this!
Note: The rdpwrap.ini seems to be tightly coupled with Windows OS version / Remote Desktop Services version. What worked for me might not work for another person. That’s just the way it is, I suppose.
This is my windows version (locate this in Settings, the fix is dependent on this to a large extent)
Edition: Windows 10 Home
Version: 21H1
OS build: 19043.1237
Pre-requisites
- You should have already installed RDP Wrapper Library v1.6.2. If not, you can find the same here:
https://github.com/stascorp/rdpwrap/releases/tag/v1.6.2 - Turn of Windows Defender or keep third party antivirus disabled for the duration of this change.
- You will need admin rights.
Steps
- Use this file (change the extension to .ini)
rdpwrap.txt - Stop Remote Desktop Service, termservice, via Services.msc, or command line with admin, net stop termservice
- Replace rdpwrap.ini in %PROGRAMFILES%\RDP Wrapper folder with the version from Step 1.
- Start Remote Desktop Service, termservice, via Services.msc, or command line with admin, net start termservice
- Now you can connect to your Windows laptop remotely using the Host Name (get it from command line: hostname). You can also check the connectivity using RDPCheck.
Finish up
Turn on Windows Defender (or enable third party antivirus) and whitelist all the files related to RDP Wrapper typically found in %PROGRAMFILES%\RDP Wrapper and %SystemRoot%\System32
I have fully support in all fields but RDP not work for me.
Привет друзья, мой работает, однако я не могу установить несколько одновременных подключений, есть ли у кого-нибудь идея?
какой файл вы используете, какая у вас версия сборки ОС?
rdpwrap.ini.txt
use this file
even if all the fields are green, it still does not allow creating more than one connection
Hi, All! @priyanparida, thank you opened this issue!
my case is completely similar, except for:
Edition: Windows 10 Home Single language
Version: 20H2
OS Build: 19042.1237«Not listening [Not supported]» after Windows update:
September 14, 2021—KB5005565 (OS Builds 19041.1237, 19042.1237, and 19043.1237)
this is a common problem after updating Terminal Services (termsrv.dll) version with windows update,
it’s fixed by updating the file rdpwrap.ini to latest version e.g. RDP Wrapper & Autoupdate projectafter updating the auto update version my file rdpwrap.ini — was found and updated successfully, I recommend this solution as the easiest
good luck!
Thanks worked a treat. Thanks
I downloaded the ini file linked above, Copied it over the old one as couldn’t delete or rename the old one as in use. Copy over by new one worked. Then renamed rdpwrap_new.ini to rdpwrap_new_old.ini and copied new rd[wrap.ini to rdp_wrap_new.ini so both same contents.
Ran the autoupdate bat file, rebooted and Viola!
good afternoon. Please I need your help, this is my rdp wrapper, it worked perfectly, I have done almost all the procedures, I think the problem persists is that the remote service when I start it automatically stops it does not start permanently, please can you help me solve ? I thank you very much.
Windows 10 Pro
20H2
19042.867
Windows Feature Experience Pack 120.2212.551.0
Any suggestion? Please help.
I have fully support in all fields but RDP not work for me.
Привет друзья, мой работает, однако я не могу установить несколько одновременных подключений, есть ли у кого-нибудь идея?
какой файл вы используете, какая у вас версия сборки ОС?
rdpwrap.ini.txt use this file even if all the fields are green, it still does not allow creating more than one connection
This file worked for me. Thank you
Удаленные пользователи могут подключаться к своим компьютерам с ОС Windows 10 и Windows 11 через службы удаленных рабочих столов (RDP). Достаточно включить RDP в настройках устройства и подключиться к компьютеру с помощью любого клиента удаленного рабочего стола, такого как MSTSC. Но существует ограничение на количество одновременных сеансов RDP – одновременно может работать только один удаленный пользователь. Если вы попытаетесь открыть второй сеанс RDP, появится предупреждение с просьбой отключить сеанс первого пользователя.
Изменения от 04.07.2023 г.
Настройка службы RDP на Windows 10
RDP работает только на Windows 10/11 Pro, в Home версии отключены нужные системные компоненты. Кроме этого, потребуется защитить паролем вашу учетную запись.
Включение доступа и добавление пользователей.
Откройте Пуск и нажмите на шестеренку Параметры.
Откройте раздел с настройкой системы.
Далее перейдите к настройке удаленного рабочего стола.
Включить удаленный рабочий стол.
Перейти в настройки электропитания, отключить переход компьютера в спящий режим.
Далее необходимо пользователей, которым будет предоставлен доступ к RDP По умолчанию доступ предоставлен администратору компьютера.
Добавляем еще пользователей.
Если вы попытаетесь открыть второй сеанс RDP, появится предупреждение с просьбой отключить сеанс первого пользователя.
На самом деле, количество одновременных подключений RDP в системе Windows ограничено лицензией, а не каким-либо техническим аспектом. Таким образом, это ограничение не позволяет создать терминальный RDP-сервер на базе компьютера с системой Windows 10/11. Логика компании Microsoft проста, если вам нужен сервер терминалов – купите лицензию Windows Server, RDS CALs, установите и настройте роль сервера сеансов удаленного рабочего стола.
Но технически, любая версия Windows, с достаточным объемом оперативной памяти может поддерживать одновременную работу нескольких удаленных пользователей. В среднем, для одного сеанса пользователя, требуется около 200 МБ оперативной памяти (без учета запущенных приложений). Т.е. максимальное количество одновременных сеансов RDP теоретически ограничено только компьютерными ресурсами.
Рассмотрим два способа разрешить одновременные RDP-подключения в Windows 10/11:
- с помощью RDP Wrapper
- исправления библиотеки termsrv.dll
RDP Wrapper
Проект RDP Wrapper – ПО с открытым исходным кодом, позволяет включить несколько сеансов RDP в Windows 10 без замены файла termsrv.dll. Этот инструмент работает как связующее звено между SCM (Service Control Manager) и службами удаленного рабочего стола. RDPWrap позволяет включить не только поддержку нескольких одновременных RDP-подключений, но и создать RDP-сервер в Windows Home. RDP Wrapper не вносит никаких изменений в termsrv.dll файл, это просто загрузка библиотеки termsrv с измененными параметрами.
Таким образом, RDPWrap будет работать даже в случае изменения файла termsrv.dll. Это позволяет не бояться обновлений Windows.
Вы можете загрузить RDP Wrapper из репозитория GitHub https://github.com/binarymaster/rdpwrap/releases (последняя доступная версия библиотеки RDP-оболочки — v1.6.2).
В RDPWrap-v1.6.2.zip содержит несколько файлов:
- RDPWinst.exe — библиотека-оболочка RDP для установки/удаления программы
- RDPConf.exe — инструмент настройки оболочки RDP
- RDPCheck.exe — утилита проверки RDP (Local RDP Checker)
- Install.bat, uninstall.bat, update.bat — пакетные файлы для установки, удаления и обновления оболочки RDP
Для установки оболочки необходимо запустить файл Install.bat с правами администратора.
RDPWrap не работает в Windows 10
После завершения установки запустите RDPConfig.exe . Скорее всего, сразу после установки инструмент покажет, что оболочка RDP запущена (установлена, запущена), но не работает. Обратите внимание на красное предупреждение [not supported]. В нем сообщается, что эта версия Windows 10 (версия 10.0.19041.1387) не поддерживается оболочкой RDP.
Дело в том, что для каждой версии Windows 10/11 должно быть описание в конфигурационном файле rdpwrap.ini. В текущем конфигурационном файле просто нет никаких настроек для вашей сборки Windows.
Текущую версию файла rdpwrap.ini можно загрузить здесь: https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini
Во всех источниках в интернете находятся советы, что необходимо скопировать новый файл rdpwrap.ini в “C:\Program Файл Files\RDP Wrapper\rdpwrap.ini” и перезапустить службу TermService. Но у меня это ни разу не получилось, ввиду того, что при перезапуске службы, оригинальный файл rdpwrap.ini восстанавливался на место нового.
Немного поискав решение этой проблемы, наткнулся на файл автоматического обновления rdpwrap.ini:
- С сайта GitHub
- С нашего сайта
Необходимо скопировать файлы RDPWinst.exe, RDPConf.exe, RDPCheck.exe и autoupdate.bat в каталог C:\Program Файл Files\RDP Wrapper\ и запустить autoupdate.bat.
После завершения установки запустите RDPConfig.exe
Все работает!
Обновление Параметров Групповой политики
Количество подключений к компьютеру может быть ограничено правилами групповой политики.
В этом случае вы можете использовать редактор локальной групповой политики (gpedit.msc), чтобы включить политику “Ограничить количество подключений” в разделе Конфигурация компьютера -> Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Узел сеансов удаленных рабочих столов -> Подключения –> Ограничить количество подключений.
Измените его значение на 999999.
Модификация Termsrv.dll
Второй, более трудозатратный метод – изменение файла Termsrv.dll.
для этого нужно сделать копию файла, затем нужно стать владельцем файла.
Для начала, остановите службу удаленного рабочего стола (TermService) из командной строки:
Net stop TermService
Чтобы изменить владельца файла с TrustedInstaller на локальную группу администраторов нужно выполнить команду:
takeown /F c:\Windows\System32\termsrv.dll /A
Теперь предоставьте локальной группе администраторов разрешения на полный контроль над termsrv.dll файл с использованием icacls.exe:
icacls c:\Windows\System32\termsrv.dll /grant Администраторы:F
Затем откройте termsrv.dll файл с использованием любого шестнадцатеричного редактора (например, WinHex). В зависимости от вашей сборки Windows вам необходимо найти и заменить строку в соответствии с приведенной ниже таблицей:
Версия Windows | Строка поиска |
Windows 11 RTM (21H2 – 22000.258) |
39 81 3C 06 00 00 0F 84 4F 68 01 00 |
Windows 10 x64 22H2 19045.2486 |
39 81 3C 06 00 00 0F 84 DB 61 01 00 |
Windows 10 x64 21H2 |
39 81 3C 06 00 00 0F 84 85 45 01 00 |
Windows 10 x64 21H1 |
39 81 3C 06 00 00 0F 84 2B 5F 01 00 |
Windows 10 x64 20H2 |
39 81 3C 06 00 00 0F 84 21 68 01 00 |
Windows 10 x64 2004 |
39 81 3C 06 00 00 0F 84 D9 51 01 00 |
Windows 10 x64 1909 |
39 81 3C 06 00 00 0F 84 5D 61 01 00 |
Windows 10 x64 1903 |
39 81 3C 06 00 00 0F 84 5D 61 01 00 |
Windows 10 x64 1809 |
39 81 3C 06 00 00 0F 84 3B 2B 01 00 |
Windows 10 x64 1803 |
8B 99 3C 06 00 00 8B B9 38 06 00 00 |
Windows 10 x64 1709 |
39 81 3C 06 00 00 0F 84 B1 7D 02 00 |
Строка замены
B8 00 01 00 00 89 81 38 06 00 00 90
Данную таблицу я нашел на просторах интернета. Проверка данного метода в полевых условиях привела к тому, что я не нашел данную последовательность в своем файле termsrv.dll.
Но если понять суть, то все решается достаточно легко. Необходимо искать последовательность: 39 81 3C 06 00 00 0F 84, последние 4 байта не особо важны.
Я нашел последовательность 39 81 3C 06 00 00 0F 84 73 55 01 00
Замена на
B8 00 01 00 00 89 81 38 06 00 00 90
Обновление от 27.01.2023 г.
Вышло новое обновление Windows 10 22H2 версия сборки: 19045.2486 и 19045.2604
Версия файла termsrv.dll: 10.0.19041.2075
Открываем файл в WinHex, находим исходную последовательность: 39 81 3C 06 00 00 0F 84 85 45 01 00.
Меняем на строку замены.
Обновление от 04.07.2023 г.
Скачать измененный файл termsrv.dll для конкретной версии Windows 10 можно в данной таблице.
Версия Windows | Скачать termsrv.dll |
Windows 10 x64 22H2 сборка 19045.2486 и 19045.2604 |
termsrv.dll |
Windows 10 x64 22H2 сборка 19045.3086 |
termsrv.dll |
Сохраните модифицированный файл и запустите службу TermService.
Если что-то пойдет не так, остановите службу и замените измененный termsrv.dll файл с оригинальной версией.
В моем случае модификация файла помогла включить несколько сеансов RDP.
Преимущество метода включения нескольких сеансов RDP в Windows 10 или 11 путем замены termsrv.dll файл заключается в том, что антивирусы на него не реагируют, в отличие от RDPWrap, который обнаруживается многими антивирусами как вредоносное ПО.
Основным недостатком является то, что вам придется вручную редактировать termsrv.dll файл при каждом обновлении сборки Windows 10/11. И если вы используете RDPWrap, вам также потребуется обновить файл rdpwrap.ini после установки обновлений Windows.
После выхода обновлений для windows 10, от 18 марта 2020 года у многих моих пользователей перестала работать библиотека RDP WRAPPER. И если запустить утилиту rdpconf.exe, в ней будет написано not supported и соответственно не работает удаленный рабочий стол.
Что бы исправить данное недоразумение, у меня ушел час, пока нашел исправленную библиотеку, которая будет корректно работать на обновленной десятке. Сегодня я поделюсь знаниями, для тех кто так же столкнулся с такой проблемой. Надеюсь запись будет полезна и ты, дорогой читатель сэкономишь время на поисках решений!
- Для начала необходимо удалить старую библиотеку rdp wrapper, запустив файл uninstall.bat по пути c:\Program Files\RDP Wrapper\ После того как пройдет удаление, полностью удаляем данную папку из program files со всеми файлами в ней.
- Скачиваем исправленную библиотеку по ссылке или напрямую с гитхаба и распаковываем архив.
- Запускаем файл install.bat от имени администратора и ждем пока завершится процесс установки.
- Копируем все файлы из распакованного архива в c:\Program Files\RDP Wrapper\ с заменой файлов в этой папке.
- Открываем утилиту rdpconf.exe и смотрим статус, если not supported идем далее…
- В этой версии библиотеки rdpwrap исправлено автообновление компонентов, запускаем файл autoupdate.bat от имени администратора и ждем завершения процесса.
- Скачиваем rdpwrap_ini_updater от 18.05.2020 года.
- Распаковываем, копируем в папку c:\Program Files\RDP Wrapper\ и запускаем rdpwrap_ini_updater.bat от имени администратора, дожидаемся процесса установки.
- Запускаем rdpconf.exe и наблюдаем радостную картину 🙂
На этом установка завершена и можно пробовать подключаться с других рабочих станций! 🙂
Системные администраторы делятся на тех, кто еще не делает бэкап, и тех, кто их уже делает. Народная мудрость.
Удаленные пользователи могут подключаться к своим компьютерам Windows 10 или 11 через службу удаленных рабочих столов (RDP). Достаточно включить удаленный рабочий стол (Remote Desktop), разрешить RDP доступ для пользователя и подключиться к компьютеру с помощью любого клиента удаленного рабочего стола. Однако в десктопных версия Windows есть ограничение на количество одновременных RDP сессии. Разрешается только один активный Remote Desktop сеанс пользователя.
Если вы попробуете открыть вторую RDP сессию, появится предупреждение с запросом отключить сеанс первого пользователя.
В систему вошел другой пользователь. Если вы продолжите, он будет отключен. Вы все равно хотите войти в систему?
В английской версии предупреждение такое:
Another user is signed in. If you continue, they’ll be disconnected. Do you want to sign in anyway?
Содержание:
- Ограничения на количество RDP сессий в Windows
- RDP Wrapper: разрешить несколько RDP сеансов в Windows
- Не работает RDP Wrapper в Windows
- Модификация файла termsrv.dll для снятия ограничений RDP в Windows 10 и 11
- Встроенная поддержка нескольких RDP сессий в редакции Windows 10 Enterprise Multi-session
Ограничения на количество RDP сессий в Windows
Во всех десктопных версиях Windows 10 и 11 есть ряд ограничений на использование служб удаленного рабочего стола
- Разрешено удаленно подключаться по RDP только к редакциям Windows Professional и Enterprise. В домашних редакциях (Home/Single Language) RDP доступ запрещен;
- Поддерживается только одно одновременное RDP подключение. При попытке запустить вторую RDP-сессию, пользователю будет предложено завершить активный сеанс;
- Если пользователь работает за консолью компьютера (локально), то при удаленном подключении по RDP, его локальный сеанс будет отключен (заблокирован). Также завершается и удаленный RDP сеанс, если пользователь входит в Windows через консоль компьютера.
Ограничение на количество одновременных RDP подключений в Windows является не техническим, но программным и лицензионным. Таким образом Microsoft запрещает создавать терминальный RDP сервер на базе рабочей станции для одновременной работы нескольких пользователей.
Если ваши задачи требуют развертывание терминального сервера, Microsoft предлагает пробрести Windows Server (по умолчанию разрешает 2 активных RDP подключения). Если вам нужно большее количество одновременных сессий пользователей, нужно приобрести лицензии RDS CAL, установить и настроить роль Remote Desktop Session Host (RDSH) или полноценную RDS ферму.
Технически любая редакция Windows при наличии достаточного ресурсов оперативной памяти и CPU может обслуживать одновременную работу нескольких десятков удаленных пользователей. В среднем на одну RDP сессию пользователя требуется 150-200 Мб памяти (без учета запускаемых приложений). Т.е. максимальное количество одновременных RDP сессий в теории ограничивается только ресурсами компьютера.
В этой статье мы покажем три способа убрать ограничение на количество одновременных RDP подключений в Windows 10 и 11:
- Использование RDP Wrapper
- Модификации системного файла termsrv.dll
- Апгрейд до редакции Windows 10/11 Enterprise for virtual desktops (multi-session)
Примечание. Все модификации операционной системы, описанные в этой статье, считаются нарушением лицензионного соглашения Windows, и вы можете использовать их на свой страх и риск.
Прежде, чем продолжить, проверьте что в настройках Windows включен протокол Remote Desktop.
- Откройте панель Settings -> System —> Remote Desktop -> включите опцию Enable Remote Desktop;
- Либо воспользуйтесь классической панель управления: выполните команду SystemPropertiesRemote -> Перейдите на вкладку Remote Settings (Удаленный доступ), включите опцию Allow remote connection to this computer (Разрешить удалённые подключения к этому компьютеру).
RDP Wrapper: разрешить несколько RDP сеансов в Windows
Open-source утилита RDP Wrapper Library позволяет разрешить конкурентные RDP сессии в Windows 10/11 без замены системного файла termsrv.dll.
RDP Wrapper работает в качестве прослойки между менеджером управления службами Service Control Manager, SCM) и службой терминалов (Remote Desktop Services). RDP Wrapper не вносит никаких изменений в файл termsrv.dll, просто загружая termsrv с изменёнными параметрами.
Важно. Перед установкой RDP Wrapper важно убедится, чтобы у вас использовалась оригинальная (непропатченная) версия файл termsrv.dll. Иначе RDP Wrapper может работать не стабильно, или вообще не запускаться.
Вы можете скачать RDP Wrapper из репозитория GitHub: https://github.com/binarymaster/rdpwrap/releases (последняя доступная версия RDP Wrapper Library v1.6.2). Утилита не обновляется с 2017 года, но ее можно использовать на всех билдах Windows 10 и 11. Для работы утилиты в современных версиях Windows достаточно обновить конфигурационный файл rdpwrap.ini.
Большинство антивирусов определяют RDP Wrapper как потенциально опасную программу. Например, встроенный Microsoft Defender антивирус классифицирует программу как PUA:Win32/RDPWrap (Potentially Unwanted Software) с низким уровнем угрозы. Если настройки вашего антивируса блокируют запуск RDP Wrapper, нужно добавить его в исключения.
Архив RDPWrap-v1.6.2.zip содержит несколько файлов:
- RDPWinst.exe —программа установки/удаления RDP Wrapper Library;
- RDPConf.exe — утилита настройки RDP Wrapper;
- RDPCheck.exe — Local RDP Checker — утилита для проверки RDP доступа;
- install.bat, uninstall.bat, update.bat — пакетные файлы для установки, удаления и обновления RDP Wrapper.
Чтобы установить RDPWrap, запустите файл
install.bat
с правами администратора.
После окончания установки запустите RDPConfig.exe.
Скорее всего сразу после установки утилита покажет, что RDP wrapper запущен (Installed, Running, Listening), но не работает. Обратите внимание на красную надпись. Она сообщает, что данная версий Windows 10 (ver. 10.0.19041.1949) не поддерживается ([not supported]).
Причина в том, что в конфигурационном файле rdpwrap.ini отсутствует секция с настройками для вашего версии (билда) Windows. Актуальную версию файла rdpwrap.ini можно скачать здесь https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini
Вручную скопируйте содержимое данной страницы в файл «C:\Program Files\RDP Wrapper\rdpwrap.ini». Или скачайте файл с помощью PowerShell командлета Invoke-WebRequest (предварительно нужно остановить службу Remote Desktop):
Stop-Service termservice -Force
Invoke-WebRequest https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini -outfile "C:\Program Files\RDP Wrapper\rdpwrap.ini"
alert] Можно создать задание планировщика для проверки изменений в файле rdpwrap.ini и его автоматического обновления [/alert]
На данном скриншоте видно, что на компьютере установлена свежая версия файла rdpwrap.ini (Updated=2023-06-26).
Перезагрузите компьютер, запустите утилиту RDPConfig.exe. Проверьте, что в секции Diagnostics все элементы окрашены в зеленый цвет, и появилось сообщение [Fully supported]. На скриншоте ниже показано, что RDP Wrapper с данным конфигом успешно запущен в Windows 11 22H2.
Теперь попробуйте установить несколько одновременных RDP сессий с этим компьютером под разными пользователями (воспользуйтесь любым RDP клиентом: mstsc.exe, RDCMan, mRemoteNG и т.д.).
Можете проверить что на компьютере активны одновременно две RDP сессии (или более) с помощью команды:
qwinsta
rdp-tcp#0 user1 1 Active rdp-tcp#1 user2 2 Active
Утилита RDPWrap поддерживается во версиях Windows (включая домашние редакции Windows Home), таким образом из любой клиентской версии Windows можно сделать полноценный сервер терминалов.
В интерфейсе RDP Wrapper доступны следующие опции:
- Enable Remote Desktop — включить/отключить Remote Desktop в Windows доступ
- RDP Port — можно изменить стандартный номера порта удаленного рабочего стола TCP 3389
- Опция Hide users on logon screen позволяет скрыть список пользователей на экране приветствия;
- Single session per user —разрешить несколько одновременных RDP сессий под одной учетной записью пользователя. Эта опция устанавливает параметр реестра fSingleSessionPerUser = 0 в ветке HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server). Также этот параметр настраивается через опцию GPO Restrict Remote Desktop Services to a single Remote Desktop Services session в разделе Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections.
- В секции Session Shadowing Mode вы можете настроить режим теневого подключения к рабочему столу пользователей Windows .
Не работает RDP Wrapper в Windows
В некоторых случая утилита RDP Wrapper не работает как ожидается, и вы не можете использовать несколько RDP подключений.
Во время установки обновлений Windows может обновиться версия файла termsrv.dll. Если в файле rdpwrap.ini отсутствует описание для вашей версии Windows, значит RDP Wrapper не может применить необходимые настройки. В этом случае в окне RDP Wrapper Configuration будет указан статус [not supported].
В этом случае нужно обновить файл rdpwrap.ini как описано выше.
Если RDP Wrapper не работает после обновления файла rdpwrap.ini, попробуйте открыть файл rdpwrap.ini и найти в нем описание для вашей версии Windows.
Как понять, есть ли поддержка вашей версии Windows в конфиг файле rdpwrapper?
На скриншоте ниже показано, что для моей версии Windows 11 (10.0.22621.317) есть две секции с описаниями:
[10.0.22621.317] ... [10.0.22621.317-SLInit] ...
Если в конфигурационном файле rdpwrap соответствующая секция отсутствует для вашей версии Windows, попробуйте поискать в сети строки rdpwrap.ini для вашего билда. Добавьте найденные строки в самый конец файла.
Если после установки обновлений безопасности или после апгрейда билда Windows 10, RDP Wrapper не работает, проверьте, возможно в секции Diagnostics присутствует надпись Listener state: Not listening.
Попробуйте обновить ini файл, и затем переустановить службу:
rdpwinst.exe -u
rdpwinst.exe -i
Бывает, что при попытке второго RDP подключения под другим пользователем у вас появляется надпись:
Число разрешенных подключений к этому компьютеру ограничено и все подключений уже используются. Попробуйте подключиться позже или обратитесь к системному администратору.
The number of connections to this computer is limited and all connections are in use right now. Try connecting later or contact your system administrator.
В этом случае нужно с помощью редактора групповых политики gpedit.msc в секции Конфигурация компьютера –> Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Узел сеансов удаленных рабочих столов -> Подключения включить политику “Ограничить количество подключений” и изменить ее значение на 999999 (Computer Configuration -> Administrative Templates -> Windows Components ->Remote Desktop Services ->Remote Desktop Session Host -> Connections-> Limit number of connections).
Перезагрузите компьютер для обновления настроек GPO и применения новых параметров.
Модификация файла termsrv.dll для снятия ограничений RDP в Windows 10 и 11
Чтобы убрать ограничение на количество RDP подключений пользователей в Windows без использования rdpwrapper нужно заменить файл termsrv.dll. Это файл библиотеки, которая используется службой Remote Desktop Services. Файл находится в каталоге C:\Windows\System32.
Прежде, чем править или заменять файл termsrv.dll желательно создать его резервную копию. Это поможет вам в случае необходимости можно будет вернуться к исходной версии файла. Запустите командную строку с правами администратора и выполните команду:
copy c:\Windows\System32\termsrv.dll termsrv.dll_backup
Затем нужно стать владельцем файла. Проще всего это сделать из командной строки. Чтобы сменить владельца файла с TrustedInstaller на группу локальных администраторов с помощью команды:
takeown /F c:\Windows\System32\termsrv.dll /A
Должно появится сообщение: «SUCCESS: The file (or folder): «c:\Windows\System32\termsrv.dll» now owned by the administrators group».
Теперь с помощью icacls.exe предоставьте группе локальных администраторов полные права на файл termsrv.dll (Full Control):
icacls c:\Windows\System32\termsrv.dll /grant Administrators:F
(или
Администраторы
в русской версии Windows).
Должно появится сообщение: «processed file: c:\Windows\System32\termsrv.dll Successfully processed 1 files; Failed processing 0 files«.
Теперь нужно остановить службу Remote Desktop Service (TermService) из консоли services.msc или из командной строки:
Net stop TermService
Вместе с ней останавливается служба Remote Desktop Services UserMode Port Redirector.
Чтобы узнать номер билда вашей Windows, выполните команду winver или следующую команды PowerShell:
Get-ComputerInfo | select WindowsProductName, WindowsVersion
В моем случае установлена Windows 10 билд 22H2.
Затем откройте файл termsrv.dll с помощью любого HEX редактора (к примеру, Tiny Hexer). В зависимости от билда нужно найти и заменить строку:
Версия Windows | Найти строку | Заменить на |
Windows 11 22H2 | 39 81 3C 06 00 00 0F 84 75 7A 01 00 |
B8 00 01 00 00 89 81 38 06 00 00 90 |
Windows 10 22H2 | 39 81 3C 06 00 00 0F 84 85 45 01 00 | |
Windows 11 RTM ( 21H2 22000.258) | 39 81 3C 06 00 00 0F 84 4F 68 01 00 | |
Windows 10 x64 21H2 | 39 81 3C 06 00 00 0F 84 DB 61 01 00 | |
Windows 10 x64 21H1 | 39 81 3C 06 00 00 0F 84 2B 5F 01 00 | |
Windows 10 x64 20H2 | 39 81 3C 06 00 00 0F 84 21 68 01 00 | |
Windows 10 x64 2004 | 39 81 3C 06 00 00 0F 84 D9 51 01 00 | |
Windows 10 x64 1909 | 39 81 3C 06 00 00 0F 84 5D 61 01 00 | |
Windows 10 x64 1903 | 39 81 3C 06 00 00 0F 84 5D 61 01 00 | |
Windows 10 x64 1809 | 39 81 3C 06 00 00 0F 84 3B 2B 01 00 | |
Windows 10 x64 1803 | 8B 99 3C 06 00 00 8B B9 38 06 00 00 | |
Windows 10 x64 1709 | 39 81 3C 06 00 00 0F 84 B1 7D 02 00 |
Редактор Tiny Hexer не позволяет редактировать файл termsvr.dll напрямую из папки system32. Скопируйте его на рабочий стол, а после модификации замените исходный файл.
Например, для самой редакции Windows 10 x64 22H2 19045.2006 (версия файла termsrv.dll — 10.0.19041.1949) нужно открыть файл termsrv.dll в Tiny Hexer. Затем найдите строку:
39 81 3C 06 00 00 0F 84 85 45 01 00
И замените ее на:
B8 00 01 00 00 89 81 38 06 00 00 90
Сохраните файл и запустите службу TermService.
Если что-то пошло не так, и у вас возникнут проблемы со службой RDP, остановите службу и замените модифицированный файл termsrv.dll исходной версией:
copy termsrv.dll_backup c:\Windows\System32\termsrv.dll
Преимущество способа отключения ограничения на количество RDP сессий в Windows путем замены файла termsrv.dll в том, что на него не реагируют антивирусы. В отличии от утилиты RDPWrap, которую многие антивирусов считают Malware/HackTool/Trojan. Основной недостаток — вам придется вручную править файл после каждого обновления билда Windows (или при обновлении версии файла termsrv.dll в рамках ежемесячных кумулятивных обновлений).
Встроенная поддержка нескольких RDP сессий в редакции Windows 10 Enterprise Multi-session
Недавно Microsoft выпустило специальные Enterprise редакции Windows multi-session (ранее назывались Windows 10 Enterprise for Remote Sessions и Windows 10 Enterprise for Virtual Desktops).
Редакция Enterprise multi-session доступна как для Windows 10, так и для Windows 11.
Главная особенность этой редакции – она поддерживает множественные одновременные RDP сессии пользователей прямо из коробки. Несмотря на то, что редакцию Windows multi-session разрешено запускать только в виртуальных машинах Azure, вы можете вам установить эту редакцию в on-premises сети и использовать данный компьютер терминальный сервер (хотоя это будет нарушением лицензионной политики Microsoft).
Далее мы покажем, как обновить компьютер с Windows 10 Pro до Windows 10 Enterprise for Virtual Desktop и использовать его для одновременного подключения нескольких пользователей.
Откройте командную строку и проверьте текущую редакцию Windows (Professional в этом примере):
DISM /online /Get-CurrentEdition
Обновите вашу редакцию Windows с Pro до Enterprise:
Changepk.exe /ProductKey NPPR9-FWDCX-D2C8J-H872K-2YT43
Теперь установить GVLK ключ для Windows 10 Enterprise for Remote Sessions:
slmgr.vbs /ipk CPWHC-NT2C7-VYW78-DHDB2-PG3GK
Проверьте, что теперь ваша редакция Windows 10 изменилась на
ServerRdsh
(Windows 10 Enterprise for Virtual Desktops).
Активируйте вашу копию Windows Enterprise Multi-Session на вашем KMS сервере:
slmgr /skms msk-man02.winitpro.local:1688
slmgr /ato
Откройте редактор локальной GPO
(gpedit.msc
) и включите Per-User режим лицензирования в параметре Set the Remote Desktop licensing mode (Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Licensing).
После активации нужно перезагрузить Windows. Теперь попробуйте подключиться к компьютеру по RDP под несколькими пользованиями. Как вы видите, Windows 10 Enterprise multi-session одновременные RDP подключения поддерживаются прямо из коробки.
Get-ComputerInfo | select WindowsProductName, WindowsVersion, OsHardwareAbstractionLayer
Windows 10 Enterprise for Virtual Desktops 2009 10.0.19041.2728
qwinsta
В этой статье мы рассмотрели способы, позволяющие снять ограничение на количество одновременных RDP подключений пользователей, и запустить бесплатный терминальный сервер на клиентской Windows 10 или 11. У каждого из этих способов есть свои преимущества и недостатки. Какой из них использовать — решать вам.