Как подключиться в режиме теневой копии WIndows Server 2012/2016 если поднят Active Directory
Режим Shadow
Режим Shadow (теневой сеанс) – может использоваться администратором для просмотра и управления активной терминальной сессией любого пользователя.
Подключиться к сессии пользователя можно с помощью утилиты mstsc.exe или непосредственно из консоли Диспетчера серверов.
Для этого необходимо использовать коллекции сеансов, которые доступны после установки службы удалённых рабочих столов.
Для установки службы удалённых рабочих столов необходимо, чтобы Ваш VPS под управлением Windows Server 2012 / 2016 был введен в домен.
В данной инструкции сервер уже состоит в домене NEOCOMMS.RU
Установка служб RDP
(установка служб удаленных рабочих столов)
В «Диспетчере серверов» выберите «Управление» и «Добавить роли и компоненты«:
На первым шаге «Мастера добавления ролей и компонентов» и нажимаем «Далее«:
На втором шаге выбираем «Установка служб удалённых рабочих столов«:
В следующем шаге мастер попросит Вас выбрать тип развертывания. Выберите «Стандартное развертывание» и нажимаем «Далее«:
Выберите сценарий «Развертывание рабочих столов на основе сеансов» и “Далее”:
Нажмите «Далее«:
Здесь нужно выбрать сервер «Посредник подключений к удалённому рабочему столу«, выбираем сервер в «Пуле серверов» и нажимаем «Далее«.
На этом этапе выберите сервер из списка «Пул серверов» и нажмите «Далее«:
Укажите сервер «Узла сеансов удалённых рабочих столов» выбрав сервер из списка “Пул серверов” и нажмите “Далее”:
Поставте галочки напротив пункта “Автоматически перезапускать конечный сервер, если это потребуется” и нажмите «Развернуть«:
Дождитесь установки выбраных ролей, после чего компьютер будет перезагружен.
После перезагрузки автоматически запустится «Мастер добавления ролей и компонентов«, который настроит установленные службы.
Дождитесь окончания настройки и нажмите “Закрыть”:
На этом установка «Службы удалённых рабочих столов» окончена.
Коллекция сеансов
Теперь создадим коллекцию сеансов.
В разделе “Общие сведения”, выберите пункт “Создание коллекций сеансов”:
На первом шаге мастера нажмите «Далее«:
Задайте имя коллекции и нажмите «Далее«:
Укажите сервер “Узлов сеансов удалённых рабочих столов” из списка “Пул серверов” для добавления в коллекцию и нажмите «Далее«:
Здесь можно добавить пользователя или группу пользователей, которым необходим доступ к этой коллекции сеансов.
В данном примере доступ к этой коллекции сеансов имеют все пользователи домена.
После чего нажмите «Далее«:
Если диски профилей пользователей отсутствуют, — снимите галочку с пункта “Включить диски профилей пользователей” и нажмите “Далее”:
На этом шаге нажмите «Создать«:
После успешного создания, нажмите «Закрыть«:
Теперь, когда установлены все необходимые компоненты, есть возможность подключиться к теневому сеансу любого активного пользователя.
Подключение к сеансу
В «Диспетчере серверов» перейдите к созданной коллекции —> «Службы удаленных рабочих столов» —> «Коллекции» и выберите вашу коллекцию.
В данной инструкции её название «Моя коллекция«:
В списке «Подключения» выберите пользователя за которым вы хотите наблюдать или управлять,
кликните на нём правой кнопкой мыши и нажмите «Теневая копия«:
В открывшемся окне выберите нужное Вам действие «Просмотреть» или «Управление«:
Далее увидите следующее сообщение:
В этот момент на экране пользователя vasya всплывет окно запроса на удаленное наблюдение:
У нас появится доступ, как только пользователь vasya примет запрос.
Чтобы подключаться без запроса, необходимо изменить параметры удалённого управления конкретного пользователя, в данном примере это vasya.
Перейдите по ветке: «Диспетчер серверов» —> «Средства» —> «Пользователи и компьютеры Active Directory» —> Ваш домен —> «Users«.
Кликните дважды по имени пользователя и выберите вкладку «Удалённое управление».
В параметре «Запрашивать разрешение пользователя» снимите галочку и выберите желаемый уровень управления сеансом пользователя.
Нажмите «Применить» —→ «Ок»:
Теперь Вы сможете подключаться, управлять или наблюдать за сеансом пользователя без его ведома.
RDS Shadow – подключаемся к сессии пользователя в Windows 2012 R2
Спешим поделиться хорошей новостью: Microsoft вернула функционал Remote Desktop Shadowing в Windows Server 2012 R2 и Windows 8.1! Напомним, что режим Shadow (теневой сеанс) – может использовать администратором для просмотра и управления активной терминальной сессией любого пользователя. Этот режим работы поддерживается практически с первых версий терминального сервера Microsoft и неожиданно был убран в релизе Windows Server 2012 (связано с переносом стека rdp из режима ядра в пользовательский режим).
Кроме того, у режима RD Shadow и rdp клиента появился ряд новых интересных возможностей. Полный список опций rdp клиента mstsc.exe, определяющих возможность удаленного подключения к сессии конечного пользователя:
Mstsc.exe [/shadow:sessionID [/v:Servername] [/control] [/noConsentPrompt]]
/shadow:ID – подключится к терминальной сессии с указанным ID
/v:servername – имя терминального сервера (если не задано, используется текущий)
/control – возможность взаимодействия с сеансом пользователя (если не указано, используется режим просмотра сессии пользователя).
/noConsentPrompt – не запрашивать у пользователя подтверждение на подключение к сессии
Ограничения теневых сеансов RDS в Windows 2012 R2
- Подключаться к чужим сессиям может только администратор сервера. Делегировать эти права обычным пользователем нельзя
- RDS Shadow не будет работать в сетях на базе рабочих групп
Remote Desktop Shadow — работа в GUI
Подключиться к сессии пользователя можно с помощью утилиты mstsc.exe или непосредственно из консоли Server Manager. Для этого в консоли Server Manager откройте коллекцию QuickSessionCollection.
Появится окно параметров теневого подключения. Возможен просмотр (View) и управление (Control) сессией. Кроме того можно включить опцию Prompt for user consent (запросить согласие на подключение у пользователя).
Если выбрана опция «Запросить подтверждение», в сессии у пользователя появится запрос:
Winitpro\administrator is requesting to view your session remotely. Do you accept the request?
Если пользователь подтвердит, подключение, администратор увидит его рабочий стол и сможет взаимодействовать с ним.
Если же пользователь отклонит подключение, появится окно:
Если же попытаться подключится к сессии пользователя без запроса подтверждения, появится ошибка, сообщающая что такое поведение настроено групповой политикой:
Параметры удаленного управлениями терминальными сессиями пользователя настраиваются политиками Set rules for remote control of Remote Desktop Services user sessions, которые находится в разделе Policies -> Administrative Templates -> Windows components -> Remote Desktop Services -> Remote Session Host -> Connections в пользовательской и «компьютерной» секциях GPO.
Этой политикой можно настроить следующие варианты подключения по RD Shadow:
- No remote contol allowed — удаленное управление запрещено
- Full Control with users’s permission — полный контроль с разрешения пользователя
- Full Control without users’s permission — полный контроль без разрешения пользователя
- View Session with users’s permission – наблюдение за сеансом с подтверждением
- View Session without users’s permission – наблюдение за сеансом без подтверждения
RDS Shadow из Powershell
Воспользоваться функционалом Remote Desktop Services Shadow можно и из Powershell.
В первую очередь покажем, как получить список сессий на терминальном сервере (сесии пользователей будут сгруппированы в группы в зависимости от их статуса):
На данном сервере мы обнаружили три активных терминальных сессии. Подключимся к сессии пользователя с ID сессии 3:
RDS Shadow – теневое подключение к RDP сессиям пользователей в Windows Server 2016 / 2012 R2
Полный список параметров RDPклиента mstsc.exe, определяющих возможность удаленного теневого подключения к сессии конечного пользователя:
Mstsc.exe [/shadow:sessionID [/v:Servername] [/control] [/noConsentPrompt]]
/shadow:ID – подключится к RDP сессии с указанным ID.
/v:servername – имяRDP/RDS терминального сервера (если не задано, используется текущий).
/control – возможность взаимодействия с сеансом пользователя (если не указано, используется режим просмотра сессии пользователя).
/noConsentPrompt – не запрашивать у пользователя подтверждение на подключение к сессии.
/prompt –используется для подключения под другими учетными данными. Запрашивается имя и пароль пользователя для подключения к удаленному компьютеру.
Использование Remote Desktop Shadow из графического GUI
Подключиться к сессии пользователя можно с помощью утилиты mstsc.exe или непосредственно из консоли Server Manager. Для этого в консоли Server Manager откройте коллекцию QuickSessionCollection
выберите в контекстном меню Shadow (Теневая копия)
Возможен просмотр (View) и управление (Control) сессией. Кроме того, можно включить опцию Prompt for user consent (Запрашивать согласие пользователя на подключение к сессии)
Если пользователь подтвердит, подключение, в режиме просмотра администратор увидит его рабочий стол, но не сможет взаимодействовать с ним.
Совет. Для отключения от сессии пользователя и выхода из shadow-режима нужно нажать ALT+* на рабочей станции или Ctrl+* на терминальном сервере (если не заданы альтернативные комбинации).
Если попытаться подключиться к сессии пользователя без запроса подтверждения, появится ошибка, сообщающая, что такое это запрещено групповой политикой:
Shadow Error: The Group Policy setting is configured to require the user’s consent. Verify the configuration of the policy settings.
Параметры удаленного управлениями RDS сессиями пользователя настраиваются политикой Set rules for remote control of Remote Desktop Services user sessions (Установить правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов), которая находится в разделе Policies -> Administrative Templates -> Windows components -> Remote Desktop Services -> Remote Session Host -> Connections (Административные шаблоны –> Компоненты Windows –> Службы удаленных рабочих столов – Узел сеансов удаленных рабочих столов –> Подключения) в пользовательской и «компьютерной» секциях GPO. Данной политике соответствует dword параметр реестра Shadow в ветке HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services.
Этой политикой можно настроить следующие варианты теневого подключения через теневое подключение RD Shadow::
- No remote contol allowed — удаленное управление не разрешено (значение ключа реестра Shadow = 0);
- Full Control with users’s permission — полный контроль с разрешения пользователя (1);
- Full Control without users’s permission — полный контроль без разрешения пользователя (2);
- View Session with users’s permission – наблюдение за сеансом с разрешением пользователя (3);
- View Session without users’s permission – наблюдение за сеансом без разрешения пользователя (4).
Теневое подключение RDS Shadow из PowerShell
Воспользоваться функционалом теневого подключения к сессии пользователя через теневое подключение Remote Desktop Services можно и из Powershell.
В первую очередь покажем, как получить список сессий на терминальном сервере (сессии пользователей будут сгруппированы в группы в зависимости от их статуса):
Также для получения списка всех сессии на сервере можно выполнить команду
На экране отобразится список RDP сессий, их ID и статус: активная сесиия (Active) или отключенная (Disconnected).
Для получения списка сессий на удалённом сервере выполните команду:
query session /server:servername
Для более удобного теневого подключения к сессиям можно использовать следующий скрипт. Скрипт предложит ввести имя удаленного компьютера и выведет список всех сеансов и предложит указать сеанс, к которому нужно подключится:
shadow.bat
@echo off
set /P rcomp=»Enter name or IP of a Remote PC: »
query session /server:%rcomp%
set /P rid=»Enter RDP user ID: »
start mstsc /shadow:%rid% /v:%rcomp% /control
Можно поместить данный файл в каталог %Windir%\System32, в результате для теневого подключения достаточно выполнить команду shadow.
Для подключения к консольной сессии можно использовать такой скрипт:
@echo off
set /P rcomp=»Enter name or IP of a Remote PC: »
for /f «tokens=3 delims= » %%G in (‘query session console /server:%rcomp%’) do set rid=%%G
start mstsc /shadow:%rid% /v:%rcomp% /control
Как разрешить обычном пользователям использовать теневое подключение
В рассмотренных выше примерах для использования теневого подключения к терминальным сессиям необходимы права локального администратора на RDS сервере. Однако можно разрешить использовать теневое (shadow) подключение для подключения к сессиям пользователей и простым пользователям (не давая им прав локального администратора на сервере).
К примеру, вы хотите разрешить членам группы AllowRDSShadow использовать теневое подключение к сессиям пользователей, выполните команду:
wmic
/namespace:\\root\CIMV2\TerminalServices PATH
Win32_TSPermissionsSetting WHERE (TerminalName=”RDP-Tcp”) CALL
AddAccount “corp\AllowRDSShadow”,2
В январе 2018 года после установки обновления KB4056898 (патч Windows против Meltdown и Spectre) пользователи столкнулись, что в Windows Server 2012 R2 перестал работать теневой доступ. При попытке выполнить теневое подключение к чужой сессии появляется сообщение «Неопознанная ошибка» (в логах присутствует ошибка STATUS_BAD_IMPERSONATION_LEVEL). Аналогичная проблема возникала и на RDS ферме на базе Windows Server 2016.
Для решения проблемы нужно установить отдельные обновления:
- для Windows Server 2016 — KB4057142 (от 17 января 2018)
- для Windows Server 2012 R2 — KB4057401 (от 17 января 2018)