Mstsc shadow 1 v ошибка 5 отказано в доступе

Задача: Я как администратор сети хочу подключаться к сеансу пользователя со своего ПК. Т.е. со своего ПК с Win10 на ПК юзера с Win10 к его же сеансу.

Все ПК в домене. На всех ПК домена установлена Win10 64

Создаю групповую политику и связываю ее с OU, где находятся ПК домена

Конфигурация компьютераПолитикиАдминистративные шаблоныСлужбы удаленных рабочих столовУзел сеансов удаленных рабочих столовПодключенияРазрешить пользователям удаленное подключение с использованием служб удаленных рабочих столов
— включить

Конфигурация компьютераПолитикиАдминистративные шаблоныСлужбы удаленных рабочих столовУзел сеансов удаленных рабочих столовПодключенияУстановить правила удаленного управления для пользовательских сеансов удаленных рабочих столов — выбрать
нужны вариант

Делаю на ПК gpupdate /force

Далее gpresult /scope:computer /R и в списке политик вижу мою политику с теневым подключением.

Далее в повершелле определяю id сеанса qwinsta /server:11.11.11.11 и пытаюсь подключиться

Mstsc /shadow:1 /v:11.1.11.11 /control /noConsentPrompt

В ответ получаю окно: Ошибка теневого доступа. Неопознанная ошибка

Иду в раздел gpedit.msc а там параметры в разделе Конфигурация компьютераПолитикиАдминистративные шаблоныСлужбы удаленных рабочих столовУзел сеансов удаленных рабочих столовПодключения все со статусом «Не задано».
Получается политика ничего не изменила на ПК?

Нагуглил статью, что январское обновление ломало теневое подключение, но исправляющее эту проблему обновление kb4057401 идет только на WinServer2012r2, а для Win10 его нет.

Можете подсказать как правильно настроить теневое подключение?

Спасибо!

  • Изменено

    5 октября 2018 г. 12:30

  • Изменен тип
    Anton Sashev Ivanov
    30 октября 2018 г. 13:01
    Обсуждение

Теневое shadow подключение к RDP/RDS сеансам позволяет администраторам подключиться к сессии любого пользователя для просмотра рабочего стола пользователя и взаимодействия с ним. Режим Remote Desktop Shadowing (теневого подключения) работает во всех современных версиях Windows, начиная с Windows 2012 R2 и Windows 8.1 (кроме версии Windows Server 2012, в которой стек rdp перенесен из режима ядра в пользовательский режим). В этой статье мы рассмотрим, как настроить и использовать RDS Shadowing для подключения к RDP сессиям пользователей в Windows Server 2016 и Windows 10

Содержание:

  • Использование Remote Desktop Shadow из графического GUI
  • Групповые политики управления теневыми подключениями к RDS сессиям в Windows
  • Теневое подключение RDS Shadow из PowerShell
  • Как разрешить обычном пользователям использовать теневое подключение?

В Windows Server 2016/Windows 10 в стандартном RDP клиенте (mstsc.exe) есть несколько специальных параметров, которые можно использовать для удаленного теневого (RDS Shadow) подключения к RDP сессии любого пользователя:

Mstsc.exe [/shadow:sessionID [/v:Servername] [/control] [/noConsentPrompt] [/prompt]]

mstsc.exe параметры теневого shadow подключения к rdp/rds сессиям пользователей

  • /shadow:sessionID – подключиться к RDP сессии пользователя по ID;
  • /v:servername – можно указать имя удаленного хоста (RDP/RDS терминального сервера). Если имя сервера не указано, выполняется подключение к локальным сеансам на текущем хосте;
  • /control – включает возможность взаимодействия с сеансом (рабочим столом) пользователя. Администратор может управлять мышкой пользователя, вводить данные с клавиатуры. Если эта опция не указана, используется режим просмотра сессии пользователя;
  • /noConsentPrompt – опция позволяет администратору принудительно подключиться к любой сессии, не запрашивая у пользователя подтверждение на подключение;
  • /prompt – позволяет использовать для подключения другую учетную запись, отличную от текущей. Запрашивается имя и пароль пользователя для подключения к сеансу.

Теневые сеансы можно использовать для подключения к сессиям пользователей на компьютерах и серверах как в домене Active Directory, так и в рабочей группе. Кроме того, не обязательно обладать правами администратора на RDS хосте, на котором работает пользователь. Администраторы могут делегировать полномочия RDS Shadowing любым, даже не-административных учетным записям (об этом ниже).

Использование Remote Desktop Shadow из графического GUI

Подключиться к сессии пользователя можно с помощью утилиты mstsc.exe или графической консоли Server Manager. Для этого в консоли Server Manager на RDS сервере перейдите в раздел Remote Desktop Services -> выберите свою коллекцию, например QuickSessionCollection.коллекция QuickSessionCollection

В списке справа будет перечислен список пользователей у которых имеются сессии на данном RDS сервере. Щелкните правой кнопкой по сессии нужно пользователя, выберите в контекстном меню Shadow (Теневая копия).shadow - запуск теневой сесии

Вы можете подключиться только к активной сессии пользователя. Если сессия находится в состоянии Disconnected (отключена по таймауту), подключиться к такой сессии нельзя:

Shadow Error - The specified session is not connected.

oshibka shadow подключения The specified session is not connected

Появится окно c параметрами теневого подключения. Возможен просмотр (View) и управление (Control) сессией. Кроме того, можно включить опцию Prompt for user consent (Запрашивать согласие пользователя на подключение к сессии).параметры теневогого подключения к рабочему столу пользователя

Если выбрана опция «Запрашивать согласие пользователя», в сессии у пользователя появится запрос:

Запрос на удаленное наблюдение/ Remote Monitoring Request
Winitproadministrator запрашивает удаленный просмотр вашего сеанса. Вы принимаете этот запрос?
Winitproadministrator is requesting to view your session remotely. Do you accept the request?

уведомление administrator запрашивает удаленный просмотр вашего сеанса. Вы принимаете этот запрос?

Запрос на удаленное теневое наблюдение

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

просмотр сессии пользователя через теневое подключение

Совет. Для отключения от сессии пользователя и выхода из shadow-режима, нужно нажать ALT+* на рабочей станции или Ctrl+* на RDS сервере (если не заданы альтернативные комбинации).

Если пользователь отклонил административное Shadow RDS подключение, появится окно:

Shadow Error: The operator or administrator has refused the request.

ошибка rds shadow юзер запретил теневое подключение

Если попытаться подключиться к сессии пользователя без запроса подтверждения, появится ошибка, сообщающая, что это запрещено групповой политикой:

Shadow Error: The Group Policy setting is configured to require the user’s consent. Verify the configuration of the policy settings.

теневое подключение запрещено групповыми политиками

Если вам нужно вести аудит RDS Shadow подключений к пользователям, используйте в качестве фильтра следующие события из журнала Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational:

  • Event ID 20508: Shadow View Permission Granted
  • Event ID 20503: Shadow View Session Started
  • Event ID 20504: Shadow View Session Stopped

получаем логи rds shadow подключений из журнала событий Microsoft-Windows-TerminalServices-RemoteConnectionManager

Групповые политики управления теневыми подключениями к RDS сессиям в Windows

Параметры удаленного управлениями 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 в ветке HKLMSOFTWAREPoliciesMicrosoftWindows NTTerminal Services (значения этого параметра, соответствующие параметрам политики указаны в скобках).

Этой политикой можно настроить следующие варианты теневого подключения RD Shadow:

  • No remote control 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
    ).

политика Установить правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов

Вы можете настроить правила удаленного подключения в домене из консоли управления GPO
gpmc.msc
с помощью рассмотренного параметра политики, либо групповой политикой, вносящей изменения напрямую в реестр системы (последний вариант позволяет более тонко нацелить политику на компьютеры с помощью Group Policy Item Level Targeting).

Теневое подключение RDS Shadow из PowerShell

Воспользоваться функционалом теневого подключения к сессии пользователя через теневое подключение Remote Desktop Services можно и из Powershell.

В первую очередь нужно получить список пользовательских сессий на терминальном RDS сервере (сессии пользователей будут сгруппированы в группы в зависимости от их статуса):
Get-RDUserSession | ft Username, UnifiedSessionId, SessionState, HostServer, ApplicationType -GroupBy Sessionstate

Get-RDUserSession Powershell

На данном сервере мы обнаружили три активных RDP сессии пользователей. Чтобы подключиться к сессии пользователя с ID сессии 3, выполните команду:
Mstsc /shadow:3 /control /noConsentPrompt

mstsc shadow control noConsentPrompt подключится в сесиию пользователя из cmd

Также для получения списка всех RDP сессии на сервере (или десктопной редакции Windows 10 к которой разрешены множественные RDP подключения) можно использовать команду:

quser

Или

qwinsta

На экране отобразится список RDP сессий, их ID и статус: активная сессия (Active) или отключенная (Disconnected).

qwinsta - список RDP сесиий на удаленном сервере

Для получения списка сессий на удалённом сервере выполните команду:

query session /server:servername

Чтобы подключиться к сессии пользователя на удаленном сервере, используйте команду:

Mstsc /v:rdsh2:3389 /shadow:3 /control

Для более удобного теневого подключения к RDP сессиям пользователей можно использовать следующий скрипт. Скрипт предложит ввести имя удаленного компьютера и выведет список всех пользователей с активными RDP сеансами. Вам нужно будет указать ID сеанса, к которому нужно подключится через Shadow сессию:

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

Также для теневого подключения можно использовать следующий PowerShell скрипт с простым графическим интерфейсом (rdp_shadow_connection.ps1):

Add-Type -assembly System.Windows.Forms
$Header = "SESSIONNAME", "USERNAME", "ID", "STATUS"
$dlgForm = New-Object System.Windows.Forms.Form
$dlgForm.Text ='Session Connect'
$dlgForm.Width = 400
$dlgForm.AutoSize = $true
$dlgBttn = New-Object System.Windows.Forms.Button
$dlgBttn.Text = 'Control'
$dlgBttn.Location = New-Object System.Drawing.Point(15,10)
$dlgForm.Controls.Add($dlgBttn)
$dlgList = New-Object System.Windows.Forms.ListView
$dlgList.Location = New-Object System.Drawing.Point(0,50)
$dlgList.Width = $dlgForm.ClientRectangle.Width
$dlgList.Height = $dlgForm.ClientRectangle.Height
$dlgList.Anchor = "Top, Left, Right, Bottom"
$dlgList.MultiSelect = $False
$dlgList.View = 'Details'
$dlgList.FullRowSelect = 1;
$dlgList.GridLines = 1
$dlgList.Scrollable = 1
$dlgForm.Controls.add($dlgList)
# Add columns to the ListView
foreach ($column in $Header){
$dlgList.Columns.Add($column) | Out-Null
}
$(qwinsta.exe | findstr "Active") -replace "^[s>]" , "" -replace "s+" , "," | ConvertFrom-Csv -Header $Header | ForEach-Object {
$dlgListItem = New-Object System.Windows.Forms.ListViewItem($_.SESSIONNAME)
$dlgListItem.Subitems.Add($_.USERNAME) | Out-Null
$dlgListItem.Subitems.Add($_.ID) | Out-Null
$dlgListItem.Subitems.Add($_.STATUS) | Out-Null
$dlgList.Items.Add($dlgListItem) | Out-Null
}
$dlgBttn.Add_Click(
{
$SelectedItem = $dlgList.SelectedItems[0]
if ($SelectedItem -eq $null){
[System.Windows.Forms.MessageBox]::Show("Выберите сессию для подключения")
}else{
$session_id = $SelectedItem.subitems[2].text
$(mstsc /shadow:$session_id /control)
#[System.Windows.Forms.MessageBox]::Show($session_id)
}
}
)
$dlgForm.ShowDialog()

Данный скрипт отобразить графическую форму со списком активных RDP сеансов на локальном сервере. Вам останется только выбрать учетную запись пользователя и нажать Connect.

графический powershell скрипт для теневого подключения к сессиям пользователей

Вы можете использовать теневое подключение к пользователю не только в Windows Server с ролью Remote Desktop Services, но и для подключения к рабочим столам пользователей на компьютерах с Windows 10 .

Как разрешить обычном пользователям использовать теневое подключение?

В рассмотренных выше примерах для использования теневого подключения к RDP сессиям пользователей необходимы права локального администратора на RDS сервере. Однако вы можете разрешить использовать теневое (shadow) подключение и для непривилегированных пользователей (не предоставляя им прав локального администратора на компьютере/сервере).

К примеру, вы хотите разрешить членам доменной группы AllowRDSShadow использовать теневое подключение к RDP сессиям. Выполните команду в cmd.exe с правами администратора:

wmic /namespace:\rootCIMV2TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName='RDP-Tcp') CALL AddAccount 'corpAllowRDSShadow',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)

mumische, Давно не заходил, запоздал с ответом.
У меня несколько компов, на них 1 пользователь и они конечно администраторы.
Отключение брандмауэра как я понимаю блокирует некоторые порты, так же походу и порты для RDP, сразу выдает отказ в доступе, но как бы говорит что комп он видит.
Какая то из настроек брандмауэра не дает установить соединение, но и разрешения не просит.
То что вы предложили это самое «банальное» каждый 1 сайт дает эти инструкции.
Я отключал десятки правил в межсетевом экране, некоторые вызывали так же отказ в доступе, но добиться подключения не смог.
Хотя обычный RDP работает без каких либо изменение в винде. Винда с настройками по умолчанию. Так что заранее чтот испортить не мог.

aka

Разработчик
Разработчик
Сообщения: 11610
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Удалённое управление в 2012R2

1. Запустить командную строку с правами администратора:

remote-control-1.png
remote-control-1.png (13.93 КБ) 25433 просмотра

2. Из командной строки запустить заклинание:

3. Найти в списке нужного пользователя. Определить ID его сессии.

4. Запустить заклинание с ID нужной сессии вместо 5:

remote-control-2.png
remote-control-2.png (13.35 КБ) 25433 просмотра

Получится просмотр сессии. Если нужно управлять сессией, надо поставить настройку в политиках:

Untitled.png
Untitled.png (57.91 КБ) 25389 просмотров

И к командной строке mstsc.exe добавить флаг /control:

Barvinok

Сообщения: 575
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Удалённое управление в 2012R2

Сообщение

Barvinok » Вт ноя 08, 2016 2:13 pm

aka писал(а):
Получится просмотр сессии. Если нужно управлять сессией, к заклинанию надо добавить флаг /control:
…..

Это работает даже без домена?
У меня выдаёт табличку «Оператор или администратор отклонил запрос»

aka

Разработчик
Разработчик
Сообщения: 11610
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Удалённое управление в 2012R2

Сообщение

aka » Ср ноя 09, 2016 6:28 pm

Да, это работает без домена. Добавил скрин настрйоки политик, чтобы работало управление.

Barvinok

Сообщения: 575
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Удалённое управление в 2012R2

Сообщение

Barvinok » Ср ноя 09, 2016 8:47 pm

Я эту штуку давно включил. Не работает даже просмотр…

Вложения
qwinsta 2012.png
qwinsta 2012.png (108.03 КБ) 25380 просмотров
gpedit.png
gpedit.png (32.3 КБ) 25380 просмотров

aka

Разработчик
Разработчик
Сообщения: 11610
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Удалённое управление в 2012R2

Сообщение

aka » Ср ноя 09, 2016 9:56 pm

Нунезнаю. Я снимал скриншоты со свежепоставленного свежепроапгрейдженого 2012R2, и у меня получилось как на скриншотах с первого раза.

А ты пробовал брать управление не консольной сессией, а обычным RDP соединением? Для перехвата консольной сессии отдельные костыли были.

Barvinok

Сообщения: 575
Зарегистрирован: Вт ноя 30, 2004 4:06 pm
Откуда: Ростов-на-Дону
Контактная информация:

Re: Удалённое управление в 2012R2

Сообщение

Barvinok » Ср ноя 23, 2016 10:37 am

На другом сервере заработало…

Другой вопрос. А можно подключиться к сеансу пользователя не с сервера а со своего десктопа? Там же есть ключ /v:
К примеру, вот такая конструкция:

У меня выдаёт «Ошибка теневого доступа: Отказано в доступе».
Можно как-то побороть? Было бы удобно.

aka

Разработчик
Разработчик
Сообщения: 11610
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Удалённое управление в 2012R2

Сообщение

aka » Чт ноя 24, 2016 10:18 pm

Через Server Manager оно not available. Приходится из командной строки запускать.

Rushmore

Сообщения: 358
Зарегистрирован: Пн фев 11, 2013 9:36 pm

Re: Удалённое управление в 2012R2

Сообщение

Rushmore » Пт ноя 25, 2016 12:47 am

Всё равно это shadow оно какое-то кривое по сравнению с 2003/2008R2. И вообще все эти модные системы работают пока делаешь так как в хелпе написано. Чуть шаг влево-вправо, сразу косяк на косяке. Если обычный FAR manager с юзеровскими (!) правами десятку и 2016 сервер в синий дамп кладет, я боюсь такую ОС.

First, gotta say thanks for this awesome tool! Saved me from downgrading to win 7.

I followed the readme, and can now remotely login to the PC running Windows 10 (latest update up to 27/06/2017).

However, when trying to shadow the session (mstsc /shadow:2) I get a prompt straight up:

Shadow Error
Access is denied

In the configuration, all is green, so it is not like: #215
It might be similar to #247, because I am on the latest update, but again, all green, and a different error message

I would appreciate any help!

Возможно, вам также будет интересно:

  • Mssql try catch текст ошибки
  • Mssecflt sys windows 10 ошибка при загрузке
  • Mspst32 dll ошибка outlook 2016
  • Mspeech ошибка runtime error 217 at 00692077
  • Msoobe exe ошибка в приложении

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии