How To Enable RDP In Windows 7 Home Premium
The Remote Desktop Protocol allows you to access your computer running windows over port 3389 securely and easily. Although, there are numerous programs out there such as TeamViewer, LogMeIn, JoinMe BUT they are all paid and does not provide the feel that RDP does. Once it’s enabled, it stays enabled and as long as the windows computer is set to allow Remote Connections via RDP (Remote Desktop Protocol) is turned on you can connect to it from any part of the world using any Windows-based computer or a Mac (How to RDP from a Mac OS X).
By default, RDP uses the port 3389 which can be a security risk because vulnerability scanners are set to scan default ports to exploit vulnerabilities, imaging that a vulnerability for RDP comes out, and you have system running RDP hosting sensitive data (such as medical records); a hacker may be able to exploit it and gain access using the default port. Therefore, i highly recommend changing RDP Port once it’s setup. (see steps here)
Windows has limited the use and setup of RDP to their professional versions only, which means Home, Starter, and Basic versions of Windows will not be able to setup RDP.
The aim of this guide is to help you setup RDP on versions where Windows limits them.
To enable Remote Desktop where available, you can go to Control Panel -> System -> Advanced System Settings -> and Click on the Remote tab.
There’s a small bit to understand here, which can leave you scratching your head in trying to troubleshoot RDP if it’s not setup correctly, at the initial stage and that is Authentication. When setting up RDP, you have two choices under the Remote Desktop option, they are “Allow connections from computers running any version of Remote Desktop” and “Allow connections only from computers running Remote Desktop with Network Level Authentication“, if the computer you are enabling RDP on is the same version from where you will connect, then you choose the second option, which is the Network Level Authentication, otherwise, you will need to choose the first option which is to allow connections from any version of Remote Desktop because of the way windows treats authentication protocols.
Now coming back to the objective of this guide and as discussed earlier, the Remote Desktop option is limited to Professional versions and above, but there is a patcher known as Concurrent RDP Patcher which serves two purposes, allowing concurrent connections and enabling RDP in the versions where it is not available. Concurrent RDP Patcher was released at The Green Buttons forum which is the official Windows Media Center Community forum.
Method 1: Using the W7-SP1-RTM-RDP
Download W7-SP1-RTM-RDP from here. Open the downloaded folder and extract it to your desktop. In it there will be a file named Install.cmd. Right click on it and click Run as Administrator. Click Yes to User Account Control warning message.
Command Prompt will launch, and execute the instructions in the file. Once done, follow the steps above to Enable RDP. If this method doesn’t work, then try Method 2.
Method 2: Concurrent RDP Patcher
Download the Concurrent RDP Patcher from here. Extract the downloaded file, and execute Concurrent RDP Patcher file. Click the Patch button. Once done, you should be able to enable RDP and also be able to allow concurrent connections to it.
An update by Windows KB3003743 was released, which reverts the changes made by RDP Patcher. If this is the case, then follow Method 3 to make the patch work.
Method 3: Undo KB3003743
A Microsoft update KB3003743 was released on 11 November 2011 which reverts changes made by the above patcher, leaving RDP Disabled.
To undo these changes, we will use an update patch made specifically for fixing it. Download the updated patcher from here. Open the downloaded folder and Double click on Concurrent RDP Patcher to run it. Click the Patch button. This will revert changes made by the update to disable RDP Patcher.
Запускаем RDP на Windows 7 и 10 для нескольких пользователей
RDP — это такой протокол удаленного доступа к одному компьютеру (серверу терминалов), который позволяет нескольким пользователям работать одновременно. Прикиньте, у каждого будет свой рабочий стол в режиме реального времени.
Но есть загвоздка. Работает такая штука только на редакциях Windows 7/10 версий Pro и выше. То есть релизы, обозначенные как Home, курят в сторонке.
Но и это еще не все. Многопользовательский режим на законных основаниях вообще недоступен в ОС, рассчитанных для клиентских машин (не серверных).
Более того, если во время работы локального пользователя на компьютере, например, с Win 10 Pro будет осуществлено подключение терминального, то система попросит «выкинуть» первого из сессии, выдав сообщение.
В систему вошел другой пользователь. Если вы продолжите, он будет отключен. Вы все равно хотите войти в систему?
То есть по факту работать может только один человек: локальный (он же консольный), либо терминальный. Двое одновременно не уживаются никак. Отсюда вопрос.
Почему RDP на Windows 7/10 не работает для нескольких пользователей
Это решение компании Microsoft, которое основывается на приобретении платных лицензий на каждого подключающегося в таком режиме пользователя. А продаются такие лицензии только для серверных операционных систем.
Но для домашних пользователей выход есть и он хорошо показал себя на практике. Главное понять, что в дальнейшем делать с моральным стыдом и угрызениями совести, поскольку такая схема идет вразрез с интересами вышеназванной корпорации.
Знакомьтесь с решением, которые поможет-таки организовать сервер терминалов на Windows 7 и 10 в многопользовательском режиме. Это RDP Wrapper Library . Оно прекрасно подойдет для небольшого офиса, где количество рабочих мест около десятка.
Данное ПО очень простое в настройке, что всегда хорошо воспринимается техническими специалистами на местах. Есть информация на форумах, что даже Home версии Windows поддерживаются, но я лично не проверял.
Давайте переходить к делу и распаковывать скачанный архив. В нем мы видим следующее.
Исправляем недостатки RDP с помощью RDP Wrapper Library
У настольных операционных систем 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
В конце файла обязательно пустая строка.