Итак, мы уже рассматривали, как настроить удаленный рабочий стол на Windows 7 и как подключаться к компьютеру удаленно. Однако по умолчанию Windows 7 позволяет работать только одному пользователю. Иными словами, если вы подключаетесь к компьютеру через удаленный рабочий стол, то работа непосредственно за компьютером или через другое соединение удаленного рабочего стола будет невозможна, даже если все пользователи заходят под своими учетными записями.
Это ограничение носит исключительно лицензионный характер. То есть технических возможностей достаточно, и блокируется одновременное подключение нескольких пользователей на уровне операционной системы. Физически количество одновременных подключений ограничено только ресурсами компьютера.
Для того чтобы снять ограничение на количество одновременных сессий пользователей и позволить им работать одновременно на компьютере под управление Windows 7, нужно убрать существующее лицензионное ограничение. Для этого необходимо внести изменения в файл termsrv.dll, расположенный в папке %SystemRoot%System32 (обычно это C:/Windows/System32/).
Используем универсальный патч, разработанный командой DeepXW. Патч подойдет для следующих ОС: Windows XP (SP2, SP3), Windows Vista (SP1, SP2), Windows 7 (x86, x64), Windows Server 2008 (SP1, SP2).
Скачать патч для удаленного рабочего стола
Скачиваем и распаковываем архив (потребуется архиватор). Пароль на архив: 123. Для 32-разрядной системы запускаем UniversalTermsrvPatch-x86.exe, для 64-разрядной — UniversalTermsrvPatch-x64.exe.
Внимание! Запускать файлы обязательно нужно от имени администратора. Для этого кликаем на файл правой кнопкой мыши и выбираем в контекстном меню Запустить от имени администратора.
В открывшемся окне нажимаем кнопку Patch для снятия ограничения одновременных сеансов удаленного рабочего стола. При этом файл termsrv.dll будет заменен на пропатченный. Для того чтобы изменения вступили в силу, компьютер необходимо будет перезагрузить.
Оригинальный файл можно также восстановить в любой момент. Для этого в окне программы нужно нажать Restore. Резервная копия файла храниться в C:/Windows/System32/termsrv.dll.backup.
Все. Вот таким нехитрым способом получаем возможность использовать компьютер одновременно несколькими пользователями. Один человек может работать за компьютером физически и еще несколько – через удаленные рабочие столы. Фактически число одновременных сессий пользователей будет ограничиваться только ресурсами компьютера.
Примечание. Если Windows 7 обновился, то пачт перестает работать. В таком случае патч необходимо установить повторно.
Оцените статью. Вам не сложно, а автору приятно
Как известно, на рабочих станциях под управлением операционной системы Windows (не серверные варианты) подключиться по протоколу RDP можно только одному пользователю. При попытке подключения вторым пользователем будет выдано предупреждение об ограничении и первого пользователя просто «выбросит» из системы.
Для обхода ограничения на количество одновременных сессий на ОС Windows всех актуальных версий (кроме серверных) существует проект RDP Wrapper.
Для начинающих IT’шников возникают некоторые сложности с запуском службы и обновлением данных после обновления самой операционной системы.
Поэтому разбираем по шагам:
ПРЕДУПРЕЖДЕНИЕ: указанные в инструкции действия необходимо выполнять на локальной машине. При первоначальной конфигурации вас выбросит из сесии RDP
1) Скачать архив с названием «RDPWrap-v1.6.2.zip» со страницы https://github.com/stascorp/rdpwrap/releases/tag/v1.6.2
ПРИМЕЧАНИЕ: в браузере Chrome архив RDPWrap-v1.6.2.zip может блокироваться как нежелательный. Либо используйте другой браузер, либо отключите безопасность в хроме.
2) Необходимо распаковать содержимое архива, например в папку «RDWrap» на диске «C:/»
3) Начинаем установку путем запуска файла «install«. Установка происходит в тихом режиме.
4) Переходим в каталог с программой «C:\RDPWrap» и запускаем утилиту RDPConf
Сразу после установки конфигуратор покажет вам различие в версии конфигурации и отсутствие поддержки вашей системы:
5) Обновляем данные конфигуратора: переходим в каталог «C:\Program Files\RDP Wrapper«, открываем в режиме администратора файл «rdpwrap.ini»
Содержимое файла (стрелкой указана дата конфигурации):
Теперь открываем самую последнюю конфигурацию: https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini
Копируем содержимое нового файла (вкладка слева) и полностью заменяем содержимое в нашем локальном файле (вкладка справа):
Сохраняем и проверяем утилитой конфигуратора (слева старая версия, справа — новая) — необходимо добиться всё в зеленом цвете:
ВАЖНО: после каждого обновления операционной системы необходимо обновлять данные конфигурации заново!
ДЛЯ ИНФОРМАЦИИ: в случае автоматического обновления ОС Windows может сложиться ситуация, когда после обновления (обычно по вторникам) вы не сможете организовать подключение нескольких пользователей по RDP — необходимо учитывать администратору сети и, либо отключить обновления ОС, либо своевременно обновлять.
ИСТОЧНИКИ:
1) RDP Wrapper Library by Stas’M (официальный github разработчика приложения RDPWrap)
2) Разрешить несколько одновременных RDP сеансов в Windows 10 и 11 (сайт winitpro.ru)
Удаленные пользователи могут подключаться к своим компьютерам 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. У каждого из этих способов есть свои преимущества и недостатки. Какой из них использовать — решать вам.
У настольных операционных систем Microsoft есть некоторые ограничения, связанные с работой службы удаленных рабочих столов. Так во первых, поддержка серверной части (RDP Host) есть только в старших редакциях Windows (не ниже Professional). В домашних редакциях этот функционал отключен, поэтому подключиться к младшим версиям Windows по RDP невозможно.
И во вторых, количество параллельных RDP-сессий ограничено. Допускается только одно одновременное подключение по RDP, а при попытке открыть вторую RDP-сессию система выдаст сообщение о том, что в системе уже находится один пользователь и предложит его выкинуть завершить его сеанс.
Обойти эти ограничения позволит проект RDP Wrapper Library by Stas’M. RDP Wrapper работает как прослойка между менеджером служб (Service Control Manager, SCM) и службой удаленных рабочих столов. При этом, в отличии от других решений подобного рода, он не подвергает изменениям файл termsrv.dll (библиотека, используемая службой Remote Desktop Services), что позволяет не опасаться обновлений Windows.
Судя по официальному сайту, проект активно живет и развивается. На данный момент выложена версия 1.5 от 2014.12.11, для которой заявлена поддержка новейших ОС, включая Windows 10 Technical Preview. Также доступны исходники, так что при желании можно самостоятельно собрать проект.
Загрузить RDP Wrapper можно со страницы программы в репозитории GitHub. В архив входят следующие компоненты:
• RDPWinst.exe — инсталлятор, с помощью которого производится установка и удаление RDP Wrapper;
• RDPConf.exe — утилита для настройки параметров подключения;
• RDPCheck.exe — утилита для локальной проверки работы RDP;
• install.bat и uninstall.bat — bat-файлы для удобства установки\удаления программы.
Для установки программы надо открыть командную строку с правами администратора, перейти в директорию с распакованными файлами и запустить install.bat. Все остальное, включая настройку исключений на файерволле, установщик сделает сам.
Дополнительно можно запустить утилиту RDPConf.exe, которая позволяет включать\отключать доступ, а также настраивать основные параметры подключения (порт, количество сессий на пользователя, тип аутентификации и пр.).
Ну и в качестве проверки я открыл на компьютер с установленной Windows 7 Home Basic две RDP-сессии для двух разных пользователей.
Что еще можно сказать. Проект однозначно полезный, в некоторых ситуациях даже незаменимый. Из минусов же — используя RDP Wrapper вы скорее всего нарушаете лицензионное соглашение.
Дополнение 04.05.2019.
Для корректной работы на Windows 10 1809 требуется обновить файл конфигурации rdpwrap.ini. В него надо добавить следующие строчки:
[10.0.17763.292]
; Patch CEnforcementCore::GetInstanceOfTSLicense
LocalOnlyPatch.x86=1
LocalOnlyOffset.x86=AFAD4
LocalOnlyCode.x86=jmpshort
LocalOnlyPatch.x64=1
LocalOnlyOffset.x64=77A11
LocalOnlyCode.x64=jmpshort
; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled
SingleUserPatch.x86=1
SingleUserOffset.x86=4D665
SingleUserCode.x86=nop
SingleUserPatch.x64=1
SingleUserOffset.x64=1322C
SingleUserCode.x64=Zero
; Patch CDefPolicy::Query
DefPolicyPatch.x86=1
DefPolicyOffset.x86=4BE69
DefPolicyCode.x86=CDefPolicy_Query_eax_ecx
DefPolicyPatch.x64=1
DefPolicyOffset.x64=17F45
DefPolicyCode.x64=CDefPolicy_Query_eax_rcx
; Hook CSLQuery::Initialize
SLInitHook.x86=1
SLInitOffset.x86=5B18A
SLInitFunc.x86=New_CSLQuery_Initialize
SLInitHook.x64=1
SLInitOffset.x64=1ABFC
SLInitFunc.x64=New_CSLQuery_Initialize
И в конец ini файла дополнительно надо добавить строки:
[10.0.17763.292-SLInit]
bInitialized.x86 =CD798
bServerSku.x86 =CD79C
lMaxUserSessions.x86 =CD7A0
bAppServerAllowed.x86 =CD7A8
bRemoteConnAllowed.x86=CD7AC
bMultimonAllowed.x86 =CD7B0
ulMaxDebugSessions.x86=CD7B4
bFUSEnabled.x86 =CD7B8
bInitialized.x64 =ECAB0
bServerSku.x64 =ECAB4
lMaxUserSessions.x64 =ECAB8
bAppServerAllowed.x64 =ECAC0
bRemoteConnAllowed.x64=ECAC4
bMultimonAllowed.x64 =ECAC8
ulMaxDebugSessions.x64=ECACC
bFUSEnabled.x64 =ECAD0
В конце файла обязательно пустая строка.
Взято отсюда: https://github.com/stascorp/rdpwrap/issues/699
ServerWatch content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.
Microsoft offers the Remote Desktop Protocol (RDP) in Windows Server to allow remote desktop connections for multiple users, and while most versions of Windows include a RDP client, only the Professional, Ultimate and Server editions of Microsoft Windows offer the RDP server to accept incoming connections.
Unlike the server editions of Windows, Microsoft limits the client editions of Windows to one concurrent user, whether remote or local, preventing multiple remote desktop connections. So if a remote desktop connection is made, no one physically at the PC can use it or even see the desktop without first kicking off the remote user.
Remote Desktop for Multiple Users on Windows 7 Solution
Fortunately, there is a workaround that will enable multiple RDP sessions on a Windows 7 operating system that only requires a few simple steps. Developer Deepxw created a handy unofficial modification called the Universal Termsrv.dll Patch that will override this setting to allow multiple remote desktop sessions on Windows 7 computers (this solution will also work for earlier versions of Windows). Users will even be able to use the same applications simultaneously.
Note: Before starting this process, it is important to note that using this workaround is a violation of the Microsoft License Agreement.
Applying the multiple RDP users patch
After downloading the file, start by creating a backup of termsrv.dll before you apply this patch. The program will automatically create a backup file but there’s no harm in creating another one for some added security and peace of mind.
You will find the file in the C:WindowsSystem32 directory. To undo the Registry changes it makes, you can save the .reg file that’s included with the download and manually edit the Registry to remove the changes shown in the .reg file.
After creating a manual backup, follow these steps:
-
After downloading the Universal Termsrv.dll Patch and creating a backup (file download link updated 8/20/2020 with correct download) extract the ZIP file. Deepxw lists 32-bit (x86) and 64-bit (x64) OS support for the patch on Windows XP SP2 SP3, Windows Vista SP1 SP2, and Windows 7 operating systems. You can find more information on this patch on Deepxw’s blog.
-
Find the patch program you should run based upon your processor. For 32-bit (x86) it’s UniversalTermsrvPatch-x86.exe, and for 64-bit (amd64) it’s UniversalTermsrvPatch-x64.exe.
Figure 1. Screen capture from deepxw.blogspot.com: 3 clients and 1 local console connect to Windows 7 RC 6.1.7100.0.
For Windows 7 and Windows Vista, you will want to save the vista.reg. For users still operating Windows XP, you’ll want to save the xp.reg file.
-
Right-click on the patch program and select to Run as administrator.
-
On the program, click the Patch button and it will replace the Termsrv.dll file and perform the Registry modification. It will also save a backup so you can later undo the modification if desired.
-
Next, restart your computer for the modification to take effect
Now you just need to enable incoming remote desktop connections. Here’s how to do so with Windows 7 or Vista:
-
Right-click on Computer from the Start Menu and select properties.
-
Click Remote settings on the left.
-
Under Remote Desktop, select one of the three options.
-
Administrators on the computer will automatically be added to the list of remote users but if you need to add standard users, click Select Users.
Now you should be able to connect multiple user remote sessions to your pc with ease.
Securing Connections for Multiple Remote Desktop Sessions in Windows
Windows should automatically configure Windows Firewall to allow the RDP traffic to pass through. However, if you’re using a third-party firewall on your PC, you may be required to manually configure the firewall to allow the traffic.
It’s also vital to note that when remotely connecting over the internet, you must configure your router to forward incoming RDP connections to the desired PC. And unless you perform other RDP settings modifications to change the RDP ports in the Windows Registry, you will be limited to configuring one PC on the network for incoming connections via the internet.
What are Windows Remote Desktop Sessions?
For those unfamiliar with Remote Desktop sessions, using a standard RDP available on Windows 7 gives a single remote user unrestricted control over the mouse and keyboard, as well as all the programs and resources on the physical, or “host”, computer. It will appear and feel as if you were sitting right at your work PC.
So what happens when you need to access the host computer even though the machine is currently being operated by someone else either physically in the office or by another user logging in remotely?
The issue with multiple RDP Sessions on Windows 7
If a user attempts to log in remotely to a Windows 7 machine that is currently in use, the person physically using the machine or one that is logged in remotely will be kicked out of their session. The PC will bring up a message saying, “Logged on remotely from ‘computer name,’” followed by the prompt:
“Your Remote Desktop Session has ended. Another user connected to the remote computer, so your connection was lost. Try connecting again, or contact your network administrator or technical support group.”
The solution is Multiple Remote Desktop sessions, also known as concurrent sessions. This functionality offers the advantage of allowing multiple users to log in to the same computer without disturbing others who are already logged in and operating the machine.
In this article, we’ve largely covered the issues associated with enabling multiple user remote desktop sessions on Windows 7 and earlier versions of the OS. For users who have upgraded to later versions of Windows and are interested in setting up multiple user Remote Desktop sessions, check out our article which details how to solve this issue on Windows 8 and Windows 10.
Eric Geier is the founder of NoWiresSecurity, a cloud-based Wi-Fi security service, and On Spot Techs, an on-site computer services company. He is also a freelance tech writer — become a Twitter follower or visit his Facebook Fan Page to keep up with his writings.
Follow ServerWatch on Twitter and on Facebook