Няколко едновременни RDP потребителски сесии в Windows 10

Отдалечените потребители могат да се свържат със своите компютри с Windows 10 чрез услугите за отдалечен работен плот (RDP) в изданията Pro и Enterprise (но не и на домашния / единния език). Но има ограничение за броя на едновременните RDP сесии - само един отдалечен потребител може да работи едновременно. Ако се опитате да отворите втора сесия RDP, се появява предупреждение с молба да прекъснете първата сесия на потребителя.

Влиза друг потребител. Ако продължите, тя ще бъде деактивирана. Все още искате да влезете?

В английската версия предупреждението е:

Влиза друг потребител. Ако продължите, те ще бъдат прекъснати. Искате ли да влезете в никакъв случай?

Помислете за основните ограничения за използване на услугата за отдалечен работен плот в Windows 10 (и всички предишни версии на работния плот на Windows):

  1. Можете да се свържете дистанционно чрез RDP само към по-стари издания на Windows (Професионални и по-нови). В домашните издания (Начало) достъпът до RDP е блокиран.
  2. Поддържа се само една едновременна RDP връзка. Когато се опитвате да стартирате втора RDP сесия, потребителят се подканва да прекрати съществуващата връзка.
  3. Ако потребителят работи на конзолата на компютъра (локално), тогава когато се свързва дистанционно чрез RDP, неговата локална сесия ще бъде изключена (блокирана). Обратното също е вярно: отдалечена RDP сесия се насилствено прекратява, ако потребителят влезе в системната конзола.

Всъщност ограничението за броя на едновременните RDP връзки не е техническо, а по-скоро лицензирано. Следователно Microsoft забранява създаването терминал RDP сървър, базиран на работна станция за едновременна работа на няколко потребители. Логиката на Microsoft е проста: ако имате нужда от терминален сървър - купете лиценз за Windows Server, RDS CAL, инсталирайте и конфигурирайте ролята на хоста на отдалечен работен стол (RDSH).

Въпреки че от техническа гледна точка, всяко издание на Windows с достатъчно количество RAM може да поддържа едновременната работа на няколко десетки отдалечени потребители. Средно са необходими 150-200 MB памет на RDP сесия на потребителя, без да се вземат предвид стартираните приложения. Т.е. максималният брой едновременни RDP сесии на теория е ограничен само от компютърни ресурси.

Ще разгледаме два начина за деактивиране на ограничението за броя на едновременните RDP връзки към Windows 10: използване на приложението ПРСР халат и с помощта на редактиране на файлове termsrv.DLL.

Съдържание:

  • RDP Wrapper: разрешаване на множество RDP сесии в Windows 10
  • RDP Wrapper не работи на Windows 10
  • Модификация на файла termsrv.dll за премахване на ограниченията за RDP в Windows 10

Важно е. Първоначално в първата версия на статията основната работеща опция за премахване на ограничението за броя на едновременните RDP връзки на потребителите в Windows беше начин за промяна и подмяна на файла termsrv.DLL в папката% SystemRoot% \ System32. Въпреки това, когато инсталирате нова версия на Windows 10 или някои актуализации на защитата, този файл се актуализира.

В резултат на това всеки път трябва да редактирате този шестнадесетичен файл с редактор, което е доста досадно. Следователно, помощната програма трябва да се разглежда като основен начин за организиране на безплатен терминален сървър на клиент Windows 10 RDP библиотека за опаковане.
забележка. Системните модификации, описани в тази статия, се считат за нарушение на лицензионното споразумение за Windows и можете да ги извършите на свой собствен риск.

RDP Wrapper: разрешаване на множество RDP сесии в Windows 10

Проект с отворен код ПРСР халат библиотека ви позволява да активирате конкурентни RDP сесии в Windows 10, без да замествате файла termsrv.dll. Тази програма действа като слой между Service Control Manager (SCM) и Remote Desktop Services. RDPWrap ви позволява да активирате не само поддръжка за няколко едновременни RDP сесии, но и да внедрите RDP сървъра в домашни издания на Windows 10. RDP Wrapper не прави никакви промени във файла termsrv.dll, просто зарежда termsrv с променените параметри.

По този начин RDPWrap ще работи дори и при актуализиране на версията на файла termsrv.dll, което ви позволява да не се страхувате от актуализации на Windows.

Важно е. Преди да инсталирате RDP Wrapper, важно е да се уверите, че използвате оригиналната (непазарна) версия на файла termsrv.dll. В противен случай RDP Wrapper може да не работи стабилно или изобщо да не се стартира..

Можете да изтеглите RDP Wrapper от хранилището на GitHub: https://github.com/binarymaster/rdpwrap/releases (най-новата налична версия на RDP Wrapper Library v1.6.2). Съдейки по информацията на страницата на програмиста, всички версии на Windows се поддържат. Windows 10 се поддържа до 1809 г. (въпреки че през 1909 г. всичко също работи добре, вижте по-долу).

Архивът RDPWrap-v1.6.2.zip съдържа няколко файла:

  • RDPWinst.Търсейки -Инсталатор / деинсталатор на библиотека на RDP Wrapper;
  • RDPConf.Търсейки - RDP Wrapper конфигурационна програма;
  • RDPCheck.Търсейки - Local RDP Checker - програма за проверка на RDP;
  • инсталирам.бухалка, деинсталиране.бухалка, актуализация.бухалка - пакетни файлове за инсталиране, деинсталиране и актуализиране на RDP Wrapper.

За да инсталирате RDPWrap, стартирайте файла install.bat с администраторски права.

След като инсталацията приключи, стартирайте RDPConfig.Търсейки. Проверете това в секцията Диагностика всички елементи са зелени.

Пуснете RDPCheck.exe и се опитайте да отворите втора сесия RDP (или свържете няколко RDP сесии от отдалечени компютри) Всичко се оказа! Сега вашият Windows 10 позволява на два отдалечени потребители едновременно да се свързват чрез RDP.

Помощната програма RDPWrap се поддържа в издания на Windows: Windows Vista, Windows 7, Windows 8, Windows 8.1 и Windows 10. По този начин терминален сървър може да бъде направен от всяка клиентска версия на Windows.

Също така от интересните характеристики на RDP Wrapper са:

  • опция Скрий потребители за влизане екран ви позволява да скриете списъка с потребители на екрана за добре дошли;
  • При деактивиране на опцията единичен сесия на потребител - ще бъдат разрешени множество едновременни RDP сесии в един акаунт (настройката на регистъра е зададена fSingleSessionPerUser = 0 в клона HKLM \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ fSingleSessionPerUser).
  • ПРСР порт - Можете да промените номерата на портовете на отдалечения работен плот от стандартния TCP 3389 към всеки друг;
  • В раздел Режим на засенчване на сесия можете да изберете режим на сянка за свързване към работния плот на потребителите на Windows 10.

RDP Wrapper не работи на Windows 10

Помислете какво да направите, ако не можете да използвате няколко RDP връзки в Windows 10 с инсталираната програма RDP Wrapper ...

В моя случай полезността RDConfig в прозореца на състоянието показа [не се поддържа]. Проблемът беше, че няма директен достъп до интернет на компютъра и програмата не може да изтегли последната версия на файла rdpwrap.ini от GitHub с настройките за най-новите версии на Windows (вижте по-долу как ръчно да актуализирате rdpwrap.ini).

Изтеглете файл rdpwrap.ini от ресурса на програмиста и го поставете в инсталационната директория (C: \ Program Files \ RDP Wrapper \ rdpwrap.ini). Рестартирайте TermService и се уверете, че [не се поддържа] е променен на [напълно поддържан].

Ако помощната програма RDP Wrapper не работи след актуализиране на файла rdpwrap.ini, може да имате нова версия на Windows 10. Опитайте да изтеглите готовия ini файл за вашата версия на Windows 10 тук (https://github.com/fre4kyC0de/rdpwrap) или за Windows 10 1909 (10.0.18363.476) тук - rdpwrap_10.0.18363.476_1909.zip.

Също така, за проблеми с RDPWrap, можете да отворите клона на https://github.com/stascorp/rdpwrap/isissue. Тук можете да намерите текущите файлове rdpwrap.ini до актуализацията в официалното хранилище.

За да замените файла rdpwrap.ini:

  1. Спрете услугата term: get-service termservice | спиране на услугата
  2. Заменете файла rdpwrap.ini в директорията C: \ Program Files \ RDP Wrapper \;
  3. Рестартирайте компютъра;
  4. След рестартиране стартирайте RDPConf и се уверете, че всички състояния стават зелени.

Ако след инсталиране на актуализации за сигурност или след надграждане на Windows 10 сборка, RDP Wrapper не работи, проверете дали е възможно надпис в секцията Диагностика слушател състояние: Не слушане.

Опитайте да актуализирате ini файла „C: \ Program Files \ RDP Wrapper \ rdpwrap.ini“ със скрипт update.bat (или ръчно) и инсталирайте отново услугата:

rdpwinst.exe -u
rdpwinst.exe -i

Случва се, когато опитате втора RDP връзка при друг потребител, ще видите надписа:

Броят на разрешените връзки към този компютър е ограничен и всички връзки вече се използват. Опитайте да се свържете по-късно или да се свържете със системния си администратор..

Броят на връзките към този компютър е ограничен и всички връзки се използват в момента. Опитайте да се свържете по-късно или да се свържете със системния си администратор.

В този случай използвайте редактора на групови правила gpedit.msc в секцията Конфигурация на компютъра -> Административни шаблони -> Компоненти Windows -> Услуги за отдалечен работен плот -> Хост на отдалечен работен плот -> Връзки активиране на политиката „Ограничете броя на връзките”И променете стойността си на 999999 (Конфигурация на компютъра -> Административни шаблони -> Компоненти на Windows -> Услуги за отдалечен работен плот -> Хост на отдалечен работен плот -> Връзки-> Ограничете броя на връзките).

Рестартирайте компютъра си, за да приложите настройките..

Модификация на файла termsrv.dll за премахване на ограниченията за RDP в Windows 10

За да премахнете ограничението за броя на RDP връзките на потребителите в Windows 10, без да използвате rdpwraper, можете замени файла termsrv.dll. Това е библиотечният файл, използван от Услугите за отдалечен работен плот. Файлът се намира в директорията C: \ Windows \ System32.

Преди да редактирате или замените файла termsrv.dll, препоръчително е да го архивирате. Това ще ви помогне, ако е необходимо, можете да се върнете към оригиналната версия на файла. Стартирайте командния ред с права на администратор и изпълнете командата:

копирайте c: \ Windows \ System32 \ termsrv.dll termsrv.dll_backup

Преди да редактирате файла termsrv.dll, трябва да станете негов собственик и да предоставите на администраторската група пълни права върху него. Най-лесният начин да направите това е от командния ред. За да промените собственика на файл от TrustedInstaller към група локални администратори, използвайки командата:

takeown / F c: \ Windows \ System32 \ termsrv.dll / A

Трябва да се появи съобщение: „УСПЕХ: Файлът (или папката): "c: \ Windows \ System32 \ termsrv.dll" сега е собственост на администраторската група ".

Сега предоставете на местните администратори пълни права върху файла termsrv.dll (Пълен контрол):

icacls c: \ Windows \ System32 \ termsrv.dll / grant Администратори: F (или Администраторите в руската версия на Windows). Трябва да се появи съобщение: „обработен файл: c: \ Windows \ System32 \ termsrv.dll Успешно обработени 1 файла; Неуспешна обработка на 0 файла".

Сега трябва да спрете услугата за отдалечен работен плот (TermService) от конзолата services.msc или от командния ред:

Net stop TermService

Преди да продължите, трябва да знаете вашата версия (изграждане) на Windows 10. Най-лесният начин да направите това е със следната команда PowerShell:

Get-ComputerInfo | изберете WindowsProductName, WindowsVersion

В моя случай е инсталирана Windows 10 build 1909.

След това отворете файла termsrv.dll с помощта на всеки HEX редактор (например Tiny Hexer). В зависимост от изграждането, трябва да намерите и замените реда:

Версия 10 на WindowsНамерете низЗаменете с
Windows 10 x64 190939 81 3C 06 00 00 0F 84 5D 61 01 00

B8 00 01 00 00 89 81 38 06 00 00 90

Windows 10 x64 190339 81 3C 06 00 00 0F 84 5D 61 01 00
Windows 10 x64 180939 81 3C 06 00 00 0F 84 3B 2B 01 00

Windows 10 x64 18038B 99 3C 06 00 00 8B B9 38 06 00 00

Windows 10 x64 170939 81 3C 06 00 00 0F 84 B1 7D 02 00

Например, за първото издание на Windows 10 x64 RTM 10240 (версията на файла termsrv.dll е 10.0.10240.16384) трябва да отворите файла termsrv.dll в Tiny Hexer. След това намерете реда:

39 81 3C 06 00 00 0F 84 73 42 02 00

И го заменете с:

B8 00 01 00 00 89 81 38 06 00 00 90

Запазете файла и стартирайте TermService.

Готовият закърпен файл termsrv.dll за Windows 10 Pro RTM x64 можете да изтеглите тук: termsrv_windows_10_x64_10240.zip

Ако нещо се обърка и имате проблеми с RDP услугата, спрете услугата и заменете модифицирания файл termsrv.dll с оригиналната версия:

копирайте termsrv.dll_backup c: \ Windows \ System32 \ termsrv.dll

Предимството на метода за активиране на няколко сесии RDP в Windows 10 чрез замяна на файла termsrv.dll е, че антивирусите не реагират на него. За разлика от помощната програма RDPWrap, която много антивирусни програми считат Malware / HackTool / Trojan. Основният недостатък е, че ще трябва да редактирате ръчно файла всеки път, когато надграждате изграждането на Windows 10 (или когато актуализирате версията на файла termsrv.dll като част от месечните кумулативни актуализации).