Несколько пользователей удаленного рабочего стола rdp в windows 10 одновременно

Содержание

Логи. В первую очередь следует немедленно проверить логи событий:
%SystemRoot%\System32\Winevt\Logs\Microsoft-Windows-TerminalServices-RemoteConnectionManager%4Operational.evtx
Событие 1149 для успешного подключения до аутентификации с использованием логина и пароля, но после аутентификации IP-адреса источника подключения

Важно искать подключения с необычных IP-адресов, сюда же может попасть перебор паролей.

%SystemRoot%\System32\Winevt\Logs\Security.evtx
Событие 4624 — для успешного входа, 4625 — для неудачного входа, 4778 — для переподключения, 4634 — для отключения
Стоит обратить внимание на «LogonType». Для удаленных подключений оно будет равно 3, 10 или 7
Здесь необходимо искать успешные события входа с необычных IP-адресов, обращать внимание на неуспешные события входа — это может быть атака перебором.

%SystemRoot%\System32\Winevt\Logs\Microsoft-Windows-TerminalServices-LocalSessionManager%4Operational.evtx
События 21, 22 и 25 — для успешного входа или переподключения, 23 — для отключения

Следует искать события с необычных IP-адресов.

Нередко злоумышленники чистят логи. При этом чаще всего чистят только Security.evtx, чуть реже — Security.evtx и Microsoft-Windows-TerminalServices-RemoteConnectionManager%4Operational.evtx сразу. По этой причине крайне желательно просматривать все три лога, а лучше заранее настроить перенаправление событий в SIEM-систему.

Сессии легитимных пользователей. Практически всегда злоумышленники, которые занимаются распространением шифровальщиков, начинают изучение внутренней сети своей жертвы почти сразу после проникновения. Иногда им удается переподключиться к уже имеющимся сессиям RDP-серверов, доступных из внутренней сети. Это может произойти, когда подключение легитимного пользователя уже установлено, но на уровне TCP оно разорвано (например, было закрыто окно RDP). В этом случае при повторном подключении сессия восстанавливается и злоумышленник входит на сервер. Это означает, что в логе можно увидеть, что подключение инициировано легитимным пользователем в день X, а в день X+N с той же машины уже переподключится атакующий. Поэтому следует смотреть не только на события установки подключений, но и на события переподключений и отключений.

Если следы обнаружены

  • постараться изолировать злоумышленника (или вовсе отключить инфраструктуру от интернета, или отключить критичные серверы от локальной сети);
  • проверить контроллер домена на следы взлома, а также проверить файловые помойки и другие возможные цели злоумышленника.

Исправляем недостатки 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. В него надо добавить следующие строчки:

И в конец ini файла дополнительно надо добавить строки:

bInitialized.x64 =ECAB0 bServerSku.x64 =ECAB4 lMaxUserSessions.x64 =ECAB8 bAppServerAllowed.x64 =ECAC0 bRemoteConnAllowed.x64=ECAC4 bMultimonAllowed.x64 =ECAC8 ulMaxDebugSessions.x64=ECACC bFUSEnabled.x64 =ECAD0

В конце файла обязательно пустая строка.

Установка сервера терминалов займет секунды

Запускаем от имени администратора файл install.bat и наблюдаем за процессом, который должен завершиться победой, как в нашем случае.

Но еще рано открывать шампанское, необходимо запустить файл RDPConf и убедиться, что все четыре пункта, показанные на скриншоте, горят зеленым цветом.

Если у вас так, значит, примите поздравления, сервер терминалов настроен и готов к работе в многопользовательском режиме. Осталось только создать группу пользователей удаленного рабочего стола, дать им нужные права на ресурсы и вперед.

По случаю успешного запуска давайте рассмотрим некоторые интересные функции программы.

Hide users on logon screen — скрывает список пользователей (карусель) на экране приветствия

Allow to start custom programs — автозапуск пользовательских программ при подключении к рабочему столу (как я понимаю)

Также интерес представляет секция с названием «Session Shadowing Mode». Это теневой режим подключения, который позволяет админу наблюдать за активным сеансом пользователя в режиме реального времени. Кому сильно интересно, гуглите.

Несколько одновременных RDP сессий пользователей в Windows 10

Удаленные пользователи могут подключаться к своим компьютерам Windows 10 через службу удаленных рабочих столов (RDP) в редакциях Pro и Enterprise (но не в Home/Single Language). Но есть ограничение на количество одновременных RDP сессии – допускается одновременная работа только одного удаленного пользователя. Если вы попробуете открыть вторую RDP сессию, появится предупреждение с запросом отключить сеанс первого пользователя.

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

Рассмотрим основные ограничения на использование службы удаленного рабочего стола в Windows 10 (и всех предыдущих десктопных версиях Windows):

  1. Вы можете удаленно подключиться через RDP только к старшим редакциям Windows (Professional и выше). В домашних редакциях (Home) RDP доступ заблокирован.
  2. Поддерживается только одно одновременное RDP подключение. При попытке запустить вторую RDP-сессию, пользователю предлагается завершить существующее подключение.
  3. Если пользователь работает за консолью компьютера (локально), то при удаленном подключении по RDP, его локальный сеанс будет отключен (заблокирован). Правильно и обратное утверждение: удаленный RDP сеанс принудительно завершается, если пользователь авторизуется на консоле системы.

По сути, ограничение на количество одновременных RDP подключений является не техническим, а скорее лицензионным. Таким образом Microsoft запрещает создавать терминальный RDP сервер на базе рабочей станции для одновременной работы нескольких пользователей. Логика Microsoft проста: если вам нужен терминальный сервер — купите лицензию Windows Server, лицензии RDS CAL, установите и настройте роль Remote Desktop Session Host (RDSH).

Хотя с технической точки зрения любая редакция Windows при наличии достаточного количества оперативной памяти может обслуживать одновременную работу нескольких десятков удаленных пользователей. В среднем на одну RDP сессию пользователя без учета запускаемых приложений требуется 150-200 Мб памяти. Т.е. максимальное количество одновременных RDP сессий в теории ограничивается только ресурсами компьютера.

Мы рассмотрим два способа отключить ограничение на количество одновременных RDP подключений к Windows 10: с помощью приложения RDP Wrapper и с помощью правки файла termsrv.dll.

В результате приходится каждый раз редактировать этот файл Hex редактором, что довольно утомительно. Поэтому в качестве основного способа организации бесплатного терминального сервера на клиентской Windows 10 стоит считать утилиту RDP Wrapper Library.

Как обойти?

1 способ: сторонние программы

Надо признать, оба описанных способа имеют свои ограничения и особенности, которые мы также уточним, но именно этот метод кажется нам наименее проблемным и простым как при подключении, так и для дальнейшего использования.Для одновременного подключения нескольких RDP мы будем использовать программу RDP Wrapper. Это OpenSource-проект, следить за которым вы можете на GitHub. Кроме нескольких RDP сессий, данная программа позволит реализовать удаленный доступ, в том числе, на Windows Home, и если необходимо, под одной учетной записью, скрыть список пользователей на экране приветствия, создать теневое RDP подключение и другое.Чтобы установить и подготовить программу к использованию, выполняем следующие шаги:

Также сразу обратим внимание читателей, что антивирусы данную программу, мягко говоря, недолюбливают, считая её вредоносным ПО, будьте готовы.

2 способ: внутренняя модификация

Этот способ подходит для пользователей Windows 10 и не требует установки сторонних приложений, однако требует бОльших, по сравнению с первым вариантом, навыков работы, в частности, с командной строкой. Есть и еще одна сложность, правку файла termsrv.dll (а именно этим мы будем заниматься) придется повторять после каждой установки новой версии системы.Итак, интересующий нас файл можно найти по пути C:\Windows\System32 и прежде чем мы начнем, желательно создать его резервную копию. Если все пройдет как надо — она не понадобится, а если нет — сбережет вам немало нервных клеток. Для этого делаем следующее: запускаем командную строку с правами администратора и вводим команду:

Кроме того, нам понадобится информация об установленной версии (билде) Windows 10. Это проще всего узнать, введя в PowerShell: “Get-ComputerInfo | select WindowsProductName, WindowsVersion”. Билд обозначается четырьмя цифрами, указывающими на год и месяц его выпуска. Впрочем, это скорее теоретические сведения, нас интересует лишь сам номер, его можно просто запомнить.

Теперь можно смело переходить к собственно правке файла. Для этого нам нужно проделать следующие шаги:


Источник: mkazhdyjden.ru