Windows 10 теневой удаленный рабочий стол

Вы можете использовать возможности теневых подключений (Remote Desktop Shadowing) для удалённого подключение к сессиям пользователей на компьютерах Windows. Это функционал является по сути аналогом Remote Assistance и позволяет администраторам удаленно просматривать и взаимодействовать с рабочим столом пользователей как на десктопных версиях (Windows 11 или 10), так и на RDS серверах Windows Server.

Содержание:

  • Настройка клиентов Windows для удаленного подключения через теневые сессии
  • Удаленное подключение к сессии пользователя Windows через RDP Shadowing

Настройка клиентов Windows для удаленного подключения через теневые сессии

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

  1. Включите удаленный рабочий стол (RDP) на компьютерах пользователей (вручную или через GPO);включить RDP доступ к Windows 10
  2. Ваша учетная запись должна обладать правами локального администратора на компьютере пользователей (вы можете добавить пользователя в группу администраторов вручную или с помощью групповых политик);
  3. Настройте режим теневого подключения (нужно ли запрашивать подтверждение пользователя, и возможно управления в сессии или только наблюдение). Можно настроить режим через групповую политику “Установить правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов” (Set rules for remote control of Remote Desktop Services user sessions) в разделе Конфигурация компьютера -> Административные шаблоны –> Компоненты Windows –> Службы удаленных рабочих столов –> Узел сеансов удаленных рабочих столов –> Подключения (Policies -> Administrative Templates -> Windows components -> Remote Desktop Services -> Remote Session Host -> Connections).политика Установить правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов
    Доступны 5 режимов:0 – запретить удаленное управление;
    1 — полный контроль с разрешения пользователя;
    2 — полный контроль без разрешения пользователя;
    3 — наблюдение за сеансом с разрешения пользователя;
    4 — наблюдение за сеансом без разрешения пользователя.
  4. Вы можете включить нужный режим напрямую в реестре. Отредактируйте реестр вручную или с помощью команды (в этом примере мы установили 4 режим – разрешить просмотр сеанса пользователя без уведомления):
    reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v Shadow /t REG_DWORD /d 4

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

  5. Настройте правила Windows Defender Firewall, разрешающие трафик теневых подключений по сети. Для трафика session shadowing в Windows вместо стандартного порта 3389/RDP используются порты 139/TCP, 445/TCP и диапазон динамических RPC портов (49152 по 6553). Чтобы разрешить входящий трафик теневых подключений, нужно включить два преднастроненных правила в Windows:
    File and Printer Sharing (SMB-In)
    и
    Remote Desktop - Shadow (TCP-In)
    . Последнее правило разрешает удаленный доступ к процессу
    RdpSa.exe
    . Вы можете включить правила Windows Defender на компьютерах пользователей через GPO или с помощью PowerShell командлета Enable-NetFirewallRule.правила windows defender firewall для удаленных теневых подклчений к пользователям

Удаленное подключение к сессии пользователя Windows через RDP Shadowing

Рассмотрим, как удаленно подключиться рабочему столу сессии другого пользователя на удаленном компьютере Windows через теневые подключения RDP. В этом примере я покажу, как подключиться с компьютера Windows 11 к сессии пользователя на рабочей станции пользователя с Windows 10.

Для теневого подключения к сессии пользователя используется стандартная RDP утилита mstsc.exe. Формат команды такой:

Mstsc.exe /shadow:<ID сессии> /v:<Имя или IP адрес компьютера>

Также можно использовать одну из опций:

  • /prompt – запросить имя и пароль пользователя, под которым выполняется подключение (если не указано, подключение выполняется под текущим пользователем).
  • /control – режим взаимодействия с сеансом пользователя. Если параметр не задан, вы подключитесь в режиме просмотра (наблюдения) сессии пользователя, т.е. вы не сможете управлять его мышью и вводить данные с клавиатуры;
  • /noConsentPrompt – не запрашивать у пользователя подтверждение на подключение к сессии.

Теперь нужно узнать имя пользователя и ID его сессии на удаленном компьютере (если пользователь работает непосредственно за консолью компьютера, то ID его сессии всегда будет равно 1).

Выведем список сессий пользователей на удаленном компьютере (это может быть как десктопный компьютер с Windows 11/10 или Windows Server с ролью Remote Desktop Services Host (RDSH).

qwinsta /server:wks-w10b01

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

В данном примере видно, что на компьютере залогинен один пользователь a.novak, который работает непосредственно за компьютером (
SESSIONNAME=console
). Идентификатор сессии ID=1.

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

mstsc.exe /shadow:1 /v:wks-w10b01

mstsc shadow - подключение к рабочему столу сессии пользователя через shadow

На экране пользователя Windows появится запрос подтверждения подключения администратора к его сеансу:
Запрос на удаленное подключение
Username запрашивает удаленный просмотр вашего сеанса. Вы принимаете этот запрос.

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

Если служба TermService на удаленном компьютере отключена, то при попытке удалённого подключения через RDP shadow появится ошибка:

The version of Windows running on this server does not support user shadowing

эта версия windows не поддерживает shadow подключения

Если пользователь разрешит соединение, вы подключитесь к его консольному сеансу и увидите его рабочий стол. Вы будете видеть все действия пользователя, но не сможете взаимодействовать с его сессией. Если вы хотите управлять его сессией, добавьте в команду параметр /control. В этом случае надпись в заголовке окна сменится с
Viewing username (sessionID 1) on computername
на
Controlling…

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

В данном случае вы подключились непосредственно подключиться к консольной сессии пользователя без блокировки его сеанса. При удаленном подключении к Windows 10 через обычный RDP, то сессия локального отключается (даже если вы включите возможность использования нескольких одновременных RDP сессий в Windows 10).

Если сессия пользователя заблокирована, или появляется запрос повышения привилегий UAC, то без исопльзования режима
mstsc /control
окно с теневой сессией становится черным и на нем появляется символ паузы.

Теневая сессия переходит в приостановленное состояние, если у пользователя появляется запрос UAC на Secure desktop. После того, как пользователь подтвердит действие UAC, ваша сессия возобновится.

пауза в shadow сессии

Чтобы развернуть окно теневой сессии во весь экран, воспользуйтесь комбинацией клавиш Ctrl + Alt + Break.

Для завершения теневой сессии нажмите на компьютере
alt+*
(или
ctrl+*
на RDS сервере).

Вы можете оповестить пользователя о том, что кто-то удаленно подключится к его сессии через теневое подключение с помощью следующего PowerShell скрипта:
while($true){
if (Get-Process -Name "RdpSa" -ErrorAction SilentlyContinue){[console]::beep(1000,500);Write-Host "RdpSa is running at $(Get-Date)"}
Start-Sleep -Seconds 1

}

В данном примере мы оповещаем пользователя звуковым оповещением, но вы можете вывести всплывающее уведомление на рабочий стол. Можно запустить этот PowerShell скрипт как службу Windows.

Вы можете получить историю теневых подключений к компьютеру пользователя из журнала событий Windows. Все интересующие вас логи находятся в разделе Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational:Event Viewer

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

Вы можете получить логи теневых подключений к компьютеру с помощью PowerShell:

$EventIds = 20508,20503,20504
Get-WinEvent -FilterHashTable @{LogName='Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational';ID=$EventIds}

powershell скрипт для получения истории (логов) теневых подключений в windows

Функционал теневого подключения Remote Desktop Shadowing работает в Windows 11/10/ 8.1 и Windows Server 2022/2019/2016/2012 R2. Таким образом Remote Desktop Shadowing можно использовать как аналог Remote Assistance (Удаленный помощник) или TeamViewer/Anydesk для локальной или корпоративной сети.

Нужно использовать RDS , windows 10, с дефолтными настройками.
Какие нужно выполнить действия, чтобы можно было подключиться ?
В поисках информации полазил по нескольким сайтам, но без успешно .
Включено сетевое обнаружение и разрешение на удаленный доступ, так же изменено разрешение на доступ через политику.
Читая про RDS многие писали что компьютер должен быть главным доменом, или локальным админом, как это сделать так же не разобрался. Последний сайт который читал этот :
https://winitpro.ru/index.php/2014/02/12/rds-shado…
Понял что в отличии от примеров там, я не вижу другие компьютеры через команду в PowerS «quser»
Хотя заходя в : мой компьютер > сеть. Я вижу все подключенные компьютеры и могу подключится к ним по RDP.
Что нужно сделать для отображения других локальных пользователей и подключения по RDS в принципе ?
Аналогичный настройки включены так же на удаленных компьютерах.


  • Вопрос задан

  • 1304 просмотра

 Windows OS Hub / Windows 10 / Viewing a Remote User’s Desktop Session with Shadow Mode in Windows

You can use Remote Desktop Shadowing to remotely connect to user sessions on Windows computers. This feature is essentially an analog of Remote Assistance and allows administrators to remotely view and interact with the user’s desktop both on desktop versions (Windows 11 or 10) and on Windows Server RDS servers.

Contents:

  • Enable Remote Desktop Shadow Connection Mode in Windows
  • Remotely Connect to a User Session via Remote Desktop Shadowing

Remote Desktop Session Shadowing is often used by administrators to provide remote tech support to RDS users of Windows Server farms.

Enable Remote Desktop Shadow Connection Mode in Windows

You need to configure the Windows computers you want to connect to via the remote desktop shadow connection in a certain way.

  1. Enable Remote Desktop (RDP) on user computers (manually or via GPO);enable rdp on windows 10 computer
  2. Your account must have local administrator permissions on the user’s computer (you can add the user to the ‘Administrators’ group manually or using Group Policies);
  3. Configure the shadow connection mode. You can configure whether you need to request the user confirmation to connect and whether view or control is allowed in the shadow session. You can configure shadow connection mode through the GPO option Set rules for remote control of Remote Desktop Services user sessions (Computer Configuration -> Administrative Templates -> Windows components -> Remote Desktop Services -> Remote Session Host -> Connections). windows 10 shadow session policy: Set rules for remote control of Remote Desktop Services user sessionsThe following 5 modes are available:0 – disable shadow remote control;
    1 — full control with user’s permission;
    2 — full control without user’s permission;
    3 — view session with user’s permission;
    4 — view session without user’s permission
  4. You can enable the desired shadow connection mode directly through the registry. Edit the registry manually or with the reg add command. In this example, we set mode 4, which allows the remote session to be viewed without the user’s permission: reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v Shadow /t REG_DWORD /d 4

    By default, this registry parameter is not set and the shadow connection is performed in full control mode with user confirmation.

  5. Configure Windows Defender Firewall rules to allow incoming remote shadow connections. The following ports are used for session shadowing traffic in Windows, instead of the standard 3389/RDP port: 139/TCP, 445/TCP, and a range of dynamic RPC ports (from 49152 to 65535). To allow incoming shadow connection traffic, you must enable two pre-defined firewall rules in Windows: File and Printer Sharing (SMB-In) and Remote Desktop - Shadow (TCP-In). The last rule allows remote access to the RdpSa.exe process. You can enable Windows Defender rules on user computers through a GPO or by using the Enable-NetFirewallRule PowerShell cmdlet.allow remote desktop shadowing trafic firewall rule

Remotely Connect to a User Session via Remote Desktop Shadowing

Let’s look at how to remotely connect to another user’s desktop session on a remote Windows computer using the Remote Desktop shadow connection. In this example, I will connect from my Windows 11 computer to the user’s session on the user’s Windows 10 workstation.

The built-in Remote Desktop Connection tool (mstsc.exe) is used to shadow connect to the user’s session. The command format is:

Mstsc.exe /shadow:<Session ID> /v:<Computer name or IP address>

You can also use one of the following mstsc options:

  • /prompt – request a user credential to connect (if not specified, you will be connected with the current user credentials);
  • /control – the mode that allows interacting with the user session. If the parameter is not set, you will be connected to a user session in a view mode, i. e. you won’t be able to control a user’s mouse or enter data from the keyboard;
  • /noConsentPrompt – don’t prompt the user for confirmation to connect to a desktop session.

Now you need to find out the username and his session ID on the remote computer (if the user works directly at the computer console, then his session ID will always be 1).

Let’s display a list of user sessions on a remote computer (it can be a desktop computer running Windows 11/10 or Windows Server with the Remote Desktop Services Host role).

Let’s remotely request the list of sessions on Windows 10 workstation using this command:

qwinsta /server:PC_Name01

qwinsta: get user session ID from remote computer

In this example, you can see that there is only one user logged into the computer, who works directly at the computer console (SESSIONNAME=console) with session ID=1.

Let’s try remotely connecting to this user’s desktop via a shadow connection. Run the command:

Mstsc /shadow:1 /v:PC_Name01

mstsc: shadowing user desktop session in windows 11

The Windows user will be prompted to confirm that an administrator is connecting to their session:

Remote connection request
PC\admin is requesting to view your session remotely. Do you accept the request?

PC\admin is requesting to view your session remotely. Do you accept the request?

If the TermService service on the remote computer is disabled, then an error will appear when trying to connect remotely via remote desktop shadow connection:

The version of Windows running on this server does not support user shadowing.

The version of Windows running on this server does not support user shadowing.

If the user accepts the connection, you’ll connect to his console session and see the user’s desktop. You will see all user actions, but won’t be able to control (interact) this session. If you want to control his session, use the /control option in the mstsc command. In this case, the caption in the window title will change from Viewing username (sessionID 1) on computername to Controlling…

view remote user session with rdp shadowing in windows

In this case, you connected directly to the user’s console session without blocking his session. When connecting remotely to Windows via a standard RDP session, the local user session becomes disconnected (even if you enable multiple concurrent RDP sessions in Windows).

If a user session is locked because the user is inactive or a UAC privilege escalation request appears when connecting without using the mstsc /control parameter, the shadow session window becomes black and a pause symbol appears on it.

The shadow session goes into a suspended state if the user has a UAC prompt on the Secure desktop. After the user confirms the UAC action, your shadow session will resume.

pause/suspend shadow session in windows

  • Use the keyboard shortcut Ctrl + Alt + Break to resize the shadow connection window to fit the entire screen of your desktop;
  • Press Alt+* on the computer (or Ctrl+* on the RDS server) to end the shadow session.

 You can notify a user that someone is remotely connecting to their session via an RDP shadow connection by using the following PowerShell script:
while($true){
if (Get-Process -Name "RdpSa" -ErrorAction SilentlyContinue){[console]::beep(1000,500);Write-Host "RdpSa is running at $(Get-Date)"}
Start-Sleep -Seconds 1
}

You can run this PowerShell script as a Windows service. In this example, we’re notifying the user with a simple beep. Also, you can show a pop-up notification on the desktop.

You can query a shadow connections history on a user computer from the Windows event logs. ll events of interest to you can be found in the Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational section of the Event Viewer.

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

You can get shadow connection logs from a user’s computer using PowerShell:

$EventIds = 20508,20503,20504
Get-WinEvent -FilterHashTable @{LogName='Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational';ID=$EventIds}

view shadow conneciton logs in windows with powershell

Remote Desktop Shadowing is available in Windows 11/10/ 8.1 and Windows Server 2022/2019/2016/2012 R2. Thus, you can use the Remote Desktop Shadowing as an analog of Remote Assistance or TeamViewer/AnyDesk, which provide instant and secure access to users’ computers on a local corporate network.

Обновлено: 08.10.2023

Чтобы установить теневое соединение с сеансом пользователя, необходимо использовать стандартный инструмент RDP mstsc.exe. Команда выглядит так:

Mstsc.exe /shadow: /v:

Вы также можете использовать один из следующих вариантов:

  • /prompt — запросить учетные данные пользователя для подключения (если не указано, вы будете подключены с текущими учетными данными пользователя);
  • /control — режим, позволяющий взаимодействовать с сеансом пользователя. Если параметр не установлен, вы будете подключены к сеансу пользователя в режиме просмотра, т.е. е. вы не сможете управлять мышью пользователя или вводить данные с клавиатуры;
  • /noConsentPrompt — позволяет не запрашивать у пользователя подтверждение подключения к сеансу.

ЧТОБЫ ВКЛЮЧИТЬ УДАЛЕННОЕ ЗАТЕНЕНИЕ:

Параметры удаленного теневого копирования настраиваются с помощью групповой политики или изменения реестра. Вы можете настроить, нужно ли запрашивать подтверждение пользователя для подключения, а также разрешен ли просмотр или управление в теневом сеансе.

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

0 – отключить дистанционное управление;
1 — полный доступ с разрешения пользователя;
2 — полный доступ без разрешения пользователя;
3 — просмотр сеанса с разрешения пользователя;
4 — просмотр сеанса без разрешения пользователя.

По умолчанию этот параметр реестра не установлен, и теневое подключение выполняется в режиме полного контроля с разрешениями пользователя.

ПРИМЕЧАНИЕ. Чтобы удаленно подключиться к сеансу пользователя с помощью теневого копирования, подключающаяся учетная запись должна иметь права администратора и включенный удаленный рабочий стол (RDP) на компьютере с Windows 10 (в свойствах системы).

УДАЛЕННОЕ ПОДКЛЮЧЕНИЕ К РАБОЧЕЙ СТАНЦИИ WINDOWS 10

1 – удаленно запросить список сеансов на рабочей станции Windows 10 с помощью следующей команды (без кавычек):

RemoteRPC должен быть включен на клиенте через редактор реестра:

Раздел реестра: HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server
Значение: «AllowRemoteRPC»=dword:00000001

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

Параметры теневого подключения в клиенте Windows RDP (mstsc.exe)

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

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

mstsc. exe - параметры теневого подключения rdp в Windows 10

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

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

Использование тени удаленного рабочего стола из графического интерфейса Windows

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

RDS 2012 R2 — QuickSessionCollection

Список справа будет содержать список пользователей, у которых есть сеансы на этом сервере RDS. Щелкните правой кнопкой мыши нужный сеанс пользователя и выберите «Тень» в раскрывающемся меню.

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

Shadow Error — The указанный сеанс не подключен.

Появится окно с параметрами теневого подключения. Вы можете просматривать или контролировать сеанс RDP пользователя. Вы также можете установить флажок Запрашивать согласие пользователя.

теневое подключение к сеансу удаленного рабочего стола пользователя на сервере Windows 2016

Если этот параметр отмечен, в сеансе RDP пользователя появляется следующий запрос:

rds shadow Запрос удаленного мониторинга в сеансе RDP пользователя

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

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

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

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

Shadow Error: Оператор или администратор отклонил запрос

Вы не можете использовать графическую оснастку tsadmin.msc из Windows Server 2008 R2 для теневых подключений к сеансам RDP в более новых версиях Windows Server.

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

mstsc shadow noncosentpropmt — параметр групповой политики настроен на требование согласия пользователя

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

  • Идентификатор события 20508: разрешение на теневой просмотр предоставлено;
  • Идентификатор события 20503: сеанс теневого просмотра запущен;
  • Идентификатор события 20504: сеанс теневого просмотра остановлен.

проверить события теневого сеанса в средстве просмотра событий сервера Windows

Настройка теневых правил RDS в Windows с помощью GPO

Параметры удаленных подключений к сеансам пользователей RDS настраиваются с помощью параметра групповой политики «Установить правила для удаленного управления сеансами пользователей служб удаленных рабочих столов», который находится в разделах «Пользователь» и «Компьютер» объекта групповой политики: Политики -> Административные шаблоны — > Компоненты Windows -> Службы удаленных рабочих столов -> Узел удаленных сеансов -> Подключения. Этой политике соответствует параметр DWORD Shadow в разделе реестра HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services (в скобках указаны значения этого параметра, соответствующие параметрам политики).

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

  • Удаленное управление не разрешено (соответствует значению параметра реестра Shadow = 0);
  • Полный доступ с разрешения пользователя ( 1 );
  • Полный доступ без разрешения пользователя ( 2 );
  • Просмотр сеанса с разрешения пользователя ( 3 );
  • Просмотр сеанса без разрешения пользователя ( 4 ).

reg add «HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services» /v Shadow /t REG_DWORD /d 4

rdp shadow GPO: установка правил для удаленного управления сеансами пользователей служб удаленных рабочих столов

Вы можете настроить правила для удаленных теневых подключений в домене AD из консоли gpmc.msc, используя параметр политики, описанный выше, или с помощью предпочтений групповой политики, которые напрямую изменяют параметр реестра (последний вариант позволяет более точно нацелить политику на определенные компьютеры с помощью таргетинга на уровне элементов групповой политики).

Затенение сеанса RDP с помощью PowerShell

Get-RDUserSession

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

На этом сервере есть три активных пользовательских сеанса RDP. Подключимся к сеансу пользователя с идентификатором сеанса 3:
Mstsc /shadow:3 /control

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

На экране отобразится список пользовательских сеансов RDP, их идентификаторы и состояния: Активен или Отключен .

qwinsta - список удаленных сеансов на RDS

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

запрос сеанса /сервер:имя_сервера

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

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

Диапазон динамических портов (RPC) от 49152 до 65535 используется для установки сеанса удаленного теневого подключения вместо порта TCP/3389 RDP по умолчанию.

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

shadow.bat

@echo off
set /P rcomp=»Введите имя или IP-адрес удаленного ПК: »
query session /server:%rcomp%
set /P rid=»Введите RDP ID пользователя: »
запустить mstsc /shadow:%rid% /v:%rcomp% /control

Вы можете сохранить этот bat-файл в каталоге %Windir%\System32. В результате вам просто нужно запустить команду shadow, чтобы запустить теневое соединение.

Этот сценарий отображает простую графическую форму со списком активных сеансов RDP на локальном узле. Вам просто нужно выбрать учетную запись пользователя и нажать кнопку «Подключиться».

Для запуска сценариев PowerShell (*.ps1) на компьютере необходимо настроить политику выполнения PowerShell.

Вы можете использовать теневое подключение пользователя не только к Windows Server с ролью Службы удаленных рабочих столов, но и для подключения к рабочим столам пользователей под управлением Windows 10 (используя режим теневого копирования сеансов удаленного рабочего стола в Windows 10).

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

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

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

wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName=»RDP-Tcp») CALL AddAccount «woshub\AllowRDSShadow»,2

Я думал, что теневое копирование сеанса удаленного рабочего стола в Windows 10 будет осуществляться по принципу «укажи и щелкни». Пока мне не пришлось это сделать. Как оказалось, есть несколько крошечных шагов настройки, которые необходимо выполнить, прежде чем вы сможете начать теневое копирование сеанса RDP в Windows 10. Это отличается от серверных операционных систем Windows, где не требуется дополнительной подготовки, чтобы иметь возможность теневого копирования сеанса. . С другой стороны, с хостом Windows 10 есть несколько ключевых моментов, которые необходимо принять во внимание, прежде чем вы сможете успешно затенить сеанс удаленного рабочего стола.

Чтобы представить это в перспективе, в системе Windows Server вы можете просто перейти к обзору подключений к удаленному рабочему столу, выбрать сеанс, щелкнуть правой кнопкой мыши и выбрать «Тень», и все готово. Это не может быть проще, чем это.

 Затенение сеанса удаленного рабочего стола

Однако, если вы хотите затенить сеанс удаленного рабочего стола на хосте Windows 10, все становится немного сложнее. Вам нужно будет выполнить некоторые подготовительные шаги, прежде чем вы сможете успешно затенить сеанс на хост-компьютере с Windows 10. Но как только вы правильно настроите хост, у вас не будет проблем с подключением к активному сеансу удаленного рабочего стола. На самом деле, вы даже сможете скрывать сеанс консоли. Итак, давайте посмотрим, как ответить на главный вопрос здесь. Как скрыть сеанс удаленного рабочего стола в Windows 10?

1. Настройка групповой политики узла удаленных сеансов

На узле Windows 10, который вы хотите затенить, вам необходимо настроить параметр групповой политики, который разрешит затенение сеансов. Откройте редактор групповой политики и перейдите по ссылке:

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

Теперь найдите политику с названием «Установить правила для удаленного управления сеансами пользователей служб удаленных рабочих столов». Включите конфигурацию этой политики.

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

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

 Пользовательские настройки для скрытия сеанса удаленного рабочего стола в Windows 10

Например, если вы установите для политики параметр «с разрешения пользователя», пользователь в активном сеансе получит уведомление, когда вы попытаетесь затенить сеанс удаленного рабочего стола на его или ее компьютере с Windows 10. Пользователь должен будет принять запрос, прежде чем вы сможете подключиться к сеансу.

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

Выбор параметра «Без разрешения пользователя» позволяет сразу начать скрывать сеанс удаленного рабочего стола, не требуя от пользователя никаких действий.

В качестве альтернативы вы также можете внести изменения в реестр Windows, чтобы разрешить теневое копирование сеансов пользователей удаленного рабочего стола. Если вы установили параметр групповой политики, как описано выше, вам не нужно изменять какие-либо параметры реестра, но если вы предпочитаете изменить реестр, а не изменять параметры групповой политики, вам необходимо перейти к следующему разделу реестра: /p>

HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services

 Реестр DWORD Shadow

2. Загрузите Microsoft PSTools

Если вы хотите подключиться и затенить сеанс удаленного рабочего стола в Windows 10 на удаленном компьютере, вам необходимо определить, какие сеансы активны на хост-компьютере, чтобы выбрать правильный сеанс для соединить с. Для этой цели мы будем использовать команду qwinsta, которая позволит вам вывести список всех существующих сеансов на компьютере. Если вы можете запустить qwinsta на самом удаленном компьютере, он покажет список всех текущих сеансов, и вы сможете увидеть, какой из них является активным.

Я предполагаю, что вы не можете запустить qwinsta на удаленном компьютере, так как у вас еще нет подключения к удаленному рабочему столу. Поэтому мы собираемся использовать утилиту psexec, которая позволит нам удаленно запускать команды на компьютере.

Вы можете скачать Psexec как часть Microsoft PStools здесь.

Загружаемый файл представляет собой zip-файл, который необходимо распаковать, чтобы получить доступ к psexec.

3. Запустите PSExec для определения удаленных сеансов

В командной строке перейдите в папку, в которую вы скачали и распаковали PSExec. Теперь вы готовы использовать psexec для удаленного запуска команды qwinsta на главном компьютере.

Введите следующую команду:

psexec -u имя-удаленного-компьютера\имя-пользователя -p «пароль» -s \\ip-адрес удаленного компьютера qwinsta

 Использование qwinsta для определения идентификатора сеанса

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

Теперь вы должны получить список сеансов на удаленных компьютерах, где вы увидите, какой сеанс активен (или вы можете выбрать сеанс консоли, если хотите скрыть сеанс консоли в Windows 10).

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

4. Запуск удаленного рабочего стола с параметром Shadow

В этом примере я слежу за сеансом удаленного рабочего стола в Windows 10 без разрешения пользователя. Я буду затенять сеанс 1, поскольку он был активным сеансом на предыдущем шаге. Команда:

mstsc /shadow:1 /v:192.168.0.196 /prompt /noConsentPrompt

Очевидно, что замените IP-адрес IP-адресом удаленного компьютера, на котором вы хотите затенить сеанс.

Удаленный компьютер теперь будет запрашивать учетные данные пользователя для входа в сеанс.

 Учетные данные для скрытия сеанса удаленного рабочего стола

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

 Затенение сеанса удаленного рабочего стола в Windows 10

В заключение мы можем сказать, что требуется некоторая подготовка, прежде чем вы сможете затенить сеанс удаленного рабочего стола в Windows 10, но если вы выполните описанные здесь шаги, вы сможете сделать это без каких-либо проблем.

Если вам понравилась эта статья или вы сочли ее полезной, я буду признателен, если вы сообщите мне об этом, нажав кнопку «Мне нравится» (или «Поделиться») ниже. Спасибо!

Во время нашего сеанса на прошлой неделе во время мероприятия «Microsoft встречает сообщество: виртуальный рабочий стол Windows — второе издание:» я кратко упомянул о возможностях скрытия активного пользовательского сеанса в виртуальном рабочем столе Windows, если вы заинтересованы, вы можете посмотреть демонстрацию здесь.

В этом блоге я хочу более подробно рассказать о том, какие шаги необходимо выполнить, прежде чем вы сможете затенить активный сеанс пользователя в Windows Virtual Desktop.

Этот блог разделен на следующие этапы:

  1. Настройте брандмауэр Защитника Windows с помощью групповых политик
  2. Настройте правила удаленного подключения с помощью групповых политик.
  3. Скрыть активного пользователя на виртуальном рабочем столе Windows

Шаг 1. Настройте брандмауэр Защитника Windows с помощью групповых политик

Первый шаг — включить удаленный рабочий стол в брандмауэре Защитника Windows. Для этого откройте редактор управления групповыми политиками и откройте или создайте новый объект групповой политики. Конечно, вам нужно убедиться, что этот объект групповой политики будет применен к OU, где расположены серверы Sessions Hosts.

Перейдите к: Конфигурация компьютера > Политики > Параметры Windows > Параметры безопасности > Брандмауэр Защитника Windows в режиме повышенной безопасности > Правила для входящего трафика.

Щелкните правой кнопкой мыши «Правила для входящих подключений» и выберите «Новое правило».

Выберите «Предопределенные» и выберите «Удаленный рабочий стол». Нажмите «Далее».

Убедитесь, что выбраны все три правила, и нажмите «Далее».

Выберите Разрешить подключение и нажмите Готово

Теперь созданы правила, показанные на снимке экрана выше.

Шаг 2. Настройте правила для удаленного подключения с помощью групповых политик

На этом втором шаге будут настроены правила удаленного управления сеансами пользователей служб удаленных рабочих столов.

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

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

Выберите «Включено» и выберите нужные разрешения (или разрешенные в вашей организации) во время удаленного теневого подключения, а также если требуется разрешение пользователя. В этом случае я выберу Полный доступ без разрешений пользователя. На следующем шаге я покажу вам, что вы по-прежнему можете запросить разрешение пользователя с помощью параметра командной строки.

Шаг 3. Скройте активного пользователя в Windows Virtual Desktop

Чтобы затенить активный сеанс пользователя в Windows Virtual Desktop, нам сначала нужно собрать некоторую информацию о текущем сеансе. Для этого перейдите на портал виртуальных рабочих столов Windows и откройте колонку «Пользователи».

Найдите пользователя и нажмите на его/ее имя.

Для настройки теневого сеанса нам необходимо знать идентификатор сеанса и активную виртуальную машину (сервер узла сеанса, на котором размещается сеанс пользователя).

Убедитесь, что вы запускаете следующие коммандос с «Jump Server» или из «пула узлов ИТ-администрирования» или, по крайней мере, с виртуальной машины, которая имеет прямой доступ к виртуальным машинам узла сеансов.

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

Итак, в этом случае это будет:

Эта команда отобразит диалоговое окно, показанное на снимке экрана выше, в сеансе пользователя с запросом разрешения на теневое копирование сеанса.

Если вы хотите скрыть сеанс без запроса управления, выполните следующую команду:

Итак, в этом случае это будет:

После выполнения этой команды теневой сеанс пользователя будет установлен без запроса разрешения.

Читайте также:

      

  • Разрешить пустые пароли в Windows 10
  •   

  • Как перезапустить mac os в windows
  •   

  • Запланированная перезагрузка Windows 10
  •   

  • Как сохранить настройки Windows 10
  •   

  • Почему установка Windows идет по кругу

🔍 Логирование сессий теневого копирования

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

Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational

Вот такая будет последовательность.

Событие ID 20508

Событие ID 20508: Предоставлено разрешение на теневой просмотр. Пользователь barboskin.g (идентификатор сеанса: 440) предоставил разрешение пользователю Сёмину Ивану

Событие ID 20503

Событие ID 20503: Запущен теневой просмотр сеанса. Просмотр пользователем (Иван Сёмин) на компьютере c-10-.root.pyatilistnik.org сеанса пользователя ROOT\barboskin.g (идентификатор сеанса: 440)

Событие ID 20504

Событие ID 20504 : Остановлен теневой просмотр сеанса. Просмотр пользователем (Семин Иван) на компьютере c-10.root.pyatilistnik.org сеанса пользователя ROOT\barboskin.g (идентификатор сеанса: 440)

Событие ID 20513

Событие ID 20513: Сбой теневого доступа к сеансу. Пользователю (Иван Сёмин) не удалось получить теневой доступ к сеансу пользователя Root\barboskin.g (идентификатор сеанса: 440) из-за настроек групповой политики.

Событие ID 20510

Событие ID 20510: Предоставлено разрешение на теневое управление. Пользователь ROOT\barboskin.g (идентификатор сеанса: 440) предоставил разрешение пользователю (Иван Сёмин)

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

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

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

wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName=»RDP-Tcp») CALL AddAccount «corp\AllowRDSShadow»,2

В январе 2018 года после установки обновления KB4056898 () пользователи столкнулись, что в Windows Server 2012 R2 перестал работать теневой доступ. При попытке выполнить теневое подключение к чужой сессии появляется сообщение «Неопознанная ошибка» (в логах присутствует ошибка STATUS_BAD_IMPERSONATION_LEVEL). Аналогичная проблема возникала и на RDS ферме на базе Windows Server 2016.

Для решения проблемы нужно установить отдельные обновления:

  • для Windows Server 2016 — KB4057142
    (от 17 января 2018)
  • для Windows Server 2012 R2 — KB
    4057401
    (от 17 января 2018)

Решение проблемы

Ошибка вроде очевидная, что не включен RDP доступ, если бы это был рядовой сервер я бы понял, но тут служба удаленного доступа точно работала и была включена, так как на данный сервер так же распространялась групповая политика делающая, это автоматически, я проверил применение GPO, все было хорошо. Первым делом я полез смотреть логи Windows, это можно сделать классическим методом или через модный Windows Admin Center.

Журналы которые нас будут интересовать находятся в таких расположениях:

  • Microsoft-Windows-RemoteDesktopServices-RdpCoreTS/Operational
  • Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational
  • Microsoft-Windows-TerminalServices-SessionBroker/Admin
  • Microsoft-Windows-TerminalServices-SessionBroker/Operational
  • Microsoft-Windows-TerminalServices-SessionBroker-Client/Operational

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

Первое, что мне бросилось в глаза, это предупреждение с кодом ID 101:

ID 101 RemoteDesktopServices-RdpCoreTS: The network characteristics detection function has been disabled because of Reason Code: 2(Server Configuration).

Далее было такое предупреждение:

Событие с кодом ID 226: RDP_UDPLOSSY: An error was encountered when transitioning from UdpLossyStateSynRecv in response to UdpEventErrorHandshakeTO (error code 0x80040004).

Далее нужно посмотреть, как RDCB брокеры взаимодействовали с сессией пользователя. В журнале «Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational» я обнаружил событие с кодом ID 1149, в котором я вижу, что определенный пользователь был успешно аутентифицирован на RDS ферме, он получил некий IP адрес.

Remote Desktop Services: User authentication succeeded: User: vpn_user Domain: Root.PYATILISTNIK.ORG Source Network Address: 10.10.31.47

Далее я стал изучать информацию из журнала «Microsoft-Windows-TerminalServices-SessionBroker/Operational». Тут я так же обнаружил, что брокер успешно ответил и отправил пользователя на определенный RDSH хост. Тут есть событие с кодом ID 787.

Событие с кодом ID 787: Session for user ROOT\vpn_user successfully added to RD Connection Broker’s database. Target Name = term01.root.pyatilistnik.org Session ID = 18 Farm Name = TermRoot

За ним я видел событие с кодом ID 801, которое имело вот такое сообщение:

RD Connection Broker successfully processed the connection request for user ROOT\vpn_user. Redirection info: Target Name = TERM01 Target IP Address = 10.10.31.47 Target Netbios = TERM01 Target FQDN = term01.root.pyatilistnik.org Disconnected Session Found = 0x0

тут видно, что брокер даже смог обнаружить предыдущую сессию на данном терминале, о чем говорит строка Disconnected Session Found = 0x0

И вы увидите событие с кодом ID 800:

RD Connection Broker received connection request for user ROOT\vpn-user. Hints in the RDP file (TSV URL) = tsv://MS Terminal Services Plugin.1.TermRoot Initial Application = NULL Call came from Redirector Server = TERMRDCB.root.pyatilistnik.org Redirector is configured as Virtual machine redirector

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

Далее переходим в журнал «Microsoft-Windows-TerminalServices-SessionBroker-Client/Operational» тут будет два события,об успешном общении RDS брокера и клиента.

Событие с кодом ID 1307: Remote Desktop Connection Broker Client successfully redirected the user ROOT\vpn-user to the endpoint term01.root.pyatilistnik.org. Ip Address of the end point = 10.10.31.47

Remote Desktop Connection Broker Client received request for redirection. User : ROOT\vpn-user RDP Client Version : 5

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

#2 – Сброс сессии пользователя и завершение зависших процессов в RDS сессии

Сначала попробуем найти и принудительно сбросить сессию пользователя, который не может зайти на RDS сервер. В диспетчере задач, на вкладке Users найдите нужного пользователя и через контекстное меню кликаем “Log off”. В большинстве случаев, этого достаточно, но иногда в диспетчере задач вы можете обнаружить множество зависших сессий с именем “(4)” вместо имени пользователя. Как правило в зависшей сессии будет присутствовать 4 процесса:

  • Client Server Runtime Process (csrss.exe)
  • Desktop Windows Manager (dwm.exe)
  • Windows Logon Application (winlogon.exe)
  • Windows Logon User Interface

В первую очередь попробуйте завершить все зависшие сессии с (4) через диспетчер задач, как описано выше. Если это не поможет, то лучше всего перезагрузить сервер, но зачастую такой возможности нет, поэтому пробуем решить проблему без перезагрузки:

  1. Запустите командную строку с правами администратора и введите: Она покажет всех пользователей и их сессии на терминальном сервере. В выводе команды есть 3 интересующих нас столбца: SESSIONNAME, USERNAME и ID. Найдите пользователя (4) и соответствующий ему ID, в данном примере ID 2. Нам нужно завершить процесс csrss.exe который работает под этой сессией, сначала найдем его.
  2. В командной строке введите: Команда выведет все процессы, которые запущены в этой сессии. Нам нужно найти процесс csrss.exe и соответствующий ему PID. В моём случае PID будет 5140. Нам нужно завершить этот процесс.
  3. Сверимся по диспетчеру задач. Откройте диспетчер задач, перейдите на вкладку Details и найдите нужный вам PID и процесс.Если нужный вам PID соответствует процессу csrss.exe, то завершите процесс через контекстное меню и End task, либо через командную строку:

Это нужно проделать с каждым пользователем “(4)”, если их несколько.

Утилита для человеческого shadow подключения неадмина к RDP сессиям пользователей в WinServer 2012R2

Проблема в период карантинной работы предприятия стала следующей: действительно нужно минимизировать количество посещений кабинетов специалистами, обслуживающими и консультирующими по прикладному ПО, да и сказать откровенно, пользователи частенько злоупотребляют помощью специалистов не желая вникать в сам вопрос, мол «придут — помогут — сделают, а я пока покурю/попью кофе и т.п.». Консультация по телефону при совместном доступе к серверу эффективнее, если просматривать удаленный экран.

Уже после «изобретения» нашего велосипеда подвернулась вменяемая информация на тему статьи: RDS Shadow – теневое подключение к RDP сессиям пользователей в Windows Server 2012 R2 или Режим shadow непривилегированного пользователя в windows server или Делегируем управление RDP-сеансами. Все они подразумевают применение консоли, даже с элементами простого диалога.

Вся изложенная ниже информация предназначена для тех, кто нормально переносит ненормальные извращения для получения нужного результата, изобретая ненужные способы. Чтобы «не тянуть кота за хвост», начну с последнего: велосипед работает у обычного пользователя с помощью утилиты AdmiLink, за что ее автору и спасибо.

I. Консоль и shadow RDP.

Так как использование с админскими правами консоли Server Manager -> QuickSessionCollection -> щелкнув по сессии интересующего пользователя, выбрав в контекстном меню Shadow (Теневая копия) для персонала, инструктирующего по работе с ПО, — не вариант, был рассмотрен другой «деревянный» способ, а именно:

1. Узнаем RDP id сессии:

Причем «| findstr Administrator» было удобно только когда ты знаешь, что именно Administrator тебе нужен, либо использовать только первую часть для лицезрения всех залогинившихся на сервере.

2. Подключаемся к этой сессии, при условии что в доменных групповых политиках параметр «Устанавливает правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов» выбран параметр как минимум «Наблюдение за сеансом с разрешения пользователя» (подробнее):

Прошу обратить внимание что в списке будут только логины пользователей. Повторюсь что без админских прав вы получите следующее:

Повторюсь что без админских прав вы получите следующее:

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

II. Программа

Итак постановка задачи: создание некого простого графического интерфейса для подключения к теневому сенсу пользователя с его разрешения, отправка сообщения пользователю. Среда программирования выбрана Lazarus.

1. Получаем полный доменный список пользователей «логин» — «полное имя» у админа, либо опять таки через консоль:

никто не запрещает даже так:

Скажу сразу, что именно у Lazarus оказалось проблема с обработкой этого файла, так как по умолчанию его кодировка UCS-2, поэтому пришлось просто преобразовать вручную в обычный UTF-8. В структуре файла много табуляций, вернее множество пробелов, которые было решено все-таки программно обработать, рано или поздно задачка с кодировкой будет решена, и файл будет программно обновляться.

Итак, в задумке папка, доступная для пользователей программы, например c:\test, в которой будет 2 файла: первый с login и fullname, второй с id_rdp и login пользователей. Далее эти данные обрабатываем как можем:).

А пока для ассоциирования со списком сессий переносим это (login и fullname) содержимое в массив:

Прошу извинения за «много кода», следующие пункты будут лаконичнее.

2. Аналогично методом из предыдущего пункта считываем результат обработки списка в элемент StringGrid, при этом приведу «значимый» кусок кода:

2.1 Получаем актуальный список RDP сессий в файл:

2.2 Обрабатываем файл (указан только значимые строки кода):

3. Непосредственно само подключение при клике на строку с пользователем и номером его сеанса:

4. Сделано еще пару украшательств типа сортировки по клику на radiobutton, и сообщения пользователю, либо всем пользователям.

Shadow Connection Options in the Windows RDP Client (mstsc.exe)

On Windows Server 2016/Windows 10, the built-in RDP client () has several special options that can be used to remotely shadow connect to an active RDP session of any user:

  • /shadow:ID – connect to the user’s RDP session with the specified ID;
  • /v:servername – you can specify the hostname or IP address of the remote RDP/RDS host. If not set, connections are made to local user sessions on the current host;
  • /control – allows to interact with the user session (desktop). The administrator can control the user’s mouse, input data from the keyboard. If this parameter is not set, the user’s session view mode is used;
  • /noConsentPrompt – the option allows the administrator to force the connection to any session without asking the user to confirm the connection;
  • /prompt – allows to connect with other credentials. The user name and password are requested to connect to the remote computer.

Shadow sessions can be used to connect to user sessions on computers and servers in both an Active Directory domain and a workgroup. In addition, it is not necessary to have administrator privileges on the RDS host on this the user’s RDP session is running . Administrators can delegate RDS Shadowing permissions to any user account, even for non-admins (more on this below).

Метод №2 Удалить письма из Исходящих, которые находятся на утверждении

  • Пройдите в «Исходящие
    «.
  • Выберите письма с изображения, которые добавлены как Альбомы
    .
  • Удалите их всех (сделайте копирование если необходимо).
  • Теперь составьте новое письмо с текстом, который вы хотите отправить.

В этот раз, когда вы будете отправлять письмо, то вы сможете сделать без каких-либо осложнений.

В Windows 2012 R2 и Windows 8.1 Microsoft вернула функционал
Remote
Desktop
Shadowing
(теневого подключения). Напомним, что режим Shadow (теневой сеанс) – может использовать администратором для просмотра и управления существующей RDP сессией любого пользователя. Этот режим работы поддерживается практически с первых версий терминального сервера Microsoft и неожиданно был убран в Windows Server 2012 (связано с переносом стека rdp из режима ядра в пользовательский режим). Функционал RDS Shadow работает и в следующих версиях ОС: Windows Server 2016 / Windows 10.

Кроме того, у режима теневого подключения RDS Shadow и RDP клиента появился ряд новых интересных возможностей. Полный список параметров RDPклиента mstsc.exe, определяющих возможность удаленного теневого подключения к сессии конечного пользователя:

Mstsc.exe
]

/shadow:ID
– подключится к RDP сессии с указанным ID.

/v:servername
– имяRDP/RDS терминального сервера (если не задано, используется текущий).

/control
– возможность взаимодействия с сеансом пользователя (если не указано, используется режим просмотра сессии пользователя).

/noConsentPrompt
– не запрашивать у пользователя подтверждение на подключение к сессии.

/prompt –
используется для подключения под другими учетными данными. Запрашивается имя и пароль пользователя для подключения к удаленному компьютеру.

Ограничения теневых сеансов RDS в Windows 2012 R2

  • Подключаться к чужим сессиям может только администратор сервера. Делегировать эти права обычным пользователем нельзя


  • RDS


    Shadow


    не будет работать в сетях на базе рабочих групп


RDP Wrapper: разрешить несколько RDP сеансов в Windows

Библиотека RDP Wrapper проекта OpenSource позволяет включать конкурентные сеансы RDP в Windows 10 без замены файла systematermrv.dll. Эта программа работает как слой между Service Control Manager (SCM) и службами удаленных рабочих столов. RDPWrap позволяет не только включить поддержку нескольких одновременных сеансов RDP, но и реализовать сервер RDP в домашних выпусках Windows 10. RDP Wrapper не вносит никаких изменений в файл termrv.dll, просто загружая termrv с измененными параметрами.

Следовательно, RDPWrap будет работать даже при обновлении версии filetermrv.dll, что позволяет избежать опасений перед обновлениями Windows.

Перед установкой RDP Wrapper важно убедиться, что вы используете исходную (непропатченную) версию filetermsrv.dll. В противном случае RDP Wrapper может работать нестабильно или вообще не загружаться

Вы можете скачать RDP Wrapper из репозитория GitHub: https://github.com/binarymaster/rdpwrap/releases (последняя версия библиотеки RDP Wrapper – v1.6.2). Утилита не развивалась с 2017 года, но ее можно использовать во всех сборках Windows 10 и даже Windows 11.

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

  • RDPWinst.exe – программа установки / удаления библиотеки RDP Wrapper;
  • RDPConf.exe – утилита настройки оболочки RDP;
  • RDPCheck.exe – Local RDP Checker – утилита для проверки доступа по RDP;
  • install.bat, uninstall.bat, update.bat – командный файл для установки, удаления и обновления RDP Wrapper.

Для установки RDPWrap запустите файл

с правами администратора.

После завершения установки запустите RDPConfig.exe. Убедитесь, что в разделе «Диагностика» все элементы окрашены в зеленый цвет.

После завершения установки запустите RDPConfig.exe. Скорее всего, сразу после установки утилита покажет, что оболочка RDP запущена (Установлена, Выполняется, Прослушивается), но не работает

Обратите внимание на красные буквы. Сообщите, что эта версия Windows 10 (ver.10.0.19041.1320) не поддерживается ()

Дело в том, что для каждой версии Windows 10 обязательно должно быть описание в файле конфигурации rdpwrap.ini. В вашем файле конфигурации просто нет настроек для вашей сборки Windows 10.

Текущую версию файла rdpwrap.ini можно скачать здесь https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini

Вручную скопируйте содержимое этой страницы в файл «C: \ Program Files \ RDP Wrapper \ rdpwrap.ini». Или загрузите файл с помощью командлета Invoke-WebRequest PowerShell (сначала необходимо остановить службу удаленного рабочего стола):

Перезагрузите компьютер, запустите утилиту RDPConfig.exe. Убедитесь, что в разделе “Диагностика” все элементы зеленого цвета и отображается сообщение … На скриншоте ниже показано, что RDP Wrapper с этой конфигурацией также отлично работает в Windows 11.

Осталось перезагрузить компьютер. Попробуйте подключиться к своим компьютерам с разными сеансами RDP (используйте любой клиент RDP: mstsc.exe, rdcman и т.д.). Все заработало (также можно использовать сохраненные пароли RDP)! Ваша Windows 10 теперь позволяет двум (или более) удаленным пользователям одновременно подключаться через RDP.

Утилита RDPWrap поддерживается в выпусках Windows, поэтому вы можете создать сервер терминалов из любой клиентской версии Windows.

Также среди интересных особенностей RDP Wrapper можно выделить:

  • Включить удаленный рабочий стол – включить доступ RDP
  • Параметр «Скрыть пользователей на экране входа в систему» ​​позволяет скрыть список пользователей на экране приветствия;
  • Если параметр Один сеанс на пользователя отключен, несколько одновременных сеансов RDP будут разрешены под одной учетной записью (параметр реестра fSingleSessionPerUser = 0 установлен в ветке HKLM \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ fSingleSessionPerUser).
  • Порт RDP: вы можете изменить номер порта удаленного рабочего стола со стандартного TCP 3389 на любой другой;
  • В разделе Session Shadowing Mode вы можете настроить теневое подключение к рабочему столу пользователей Windows 10.

Ограничения продолжительности сеансов RDP можно настроить через GPO.

Requirements

There are three main requirements that a Windows-based system must meet to allow you to use the feature.

The first and the most essential part is Remote Desktop Protocol version. It must be 8.1 or higher. The following versions of Microsoft Windows can be used on a server side and as a client as they have RDP 8.1 out of the box:

  • Windows 8.1 and later;
  • Windows Server 2012 R2 and later.

Windows 7, Windows Server 2008, Windows 8, Windows Server 2012 versions don’t support this feature on the server side.

If you want to use these versions as client the first thing you do is install additional updates to update Remote Desktop Protocol version up to 8.1. After that you are able to connect to any Windows version on a remote host that supports the RDS Shadowing feature. For details see https://support.microsoft.com/en-us/help/2830477/update-for-remoteapp-and-desktop-connections-feature-is-available-for.

The next but not less important thing is that a remote host must have RDP services running.

Thirdly, besides software and service requirements, some additional changes must be made to firewall rules. The Remote Desktop Services Shadowing feature doesn’t use 3389/TCP port (RDP), it uses 445/TCP port (SMB), instead, and ephemeral ports, also known as dynamic port range (RPC).

These changes can be done by adding new custom rules or by enabling the following built-in ones:

  • The first rule is called , which allows to connect to port 445/TCP;
  • The second one is . It only allows the binary to handle inbound connections on any local TCP port.

Note: the dynamic port range on Windows usually includes TCP ports from 49152 to 65535. The current value can be determined by issuing the following command:

Commands and described further also require the port 445/TCP to be open, otherwise you get the following error:

Note: in the situation when the shadowing connection seems to be successful, but a window with a shadowed session doesn’t pop up, check the firewall rules (dynamic ports must be open or Shadow rule is enabled).

  • Windows 10 удалить загрузочные файлы windows
  • Windows 10 темная тема обои
  • Windows 10 теневое копирование папки
  • Windows 10 удаленный рабочий стол нет вкладки
  • Windows 10 удалить драйвер из командной строки