Вы можете использовать возможности теневых подключений (Remote Desktop Shadowing) для удалённого подключение к сессиям пользователей на компьютерах Windows. Это функционал является по сути аналогом Remote Assistance и позволяет администраторам удаленно просматривать и взаимодействовать с рабочим столом пользователей как на десктопных версиях (Windows 11 или 10), так и на RDS серверах Windows Server.
Настройка клиентов Windows для удаленного подключения через теневые сессии
Вам нужно определенным образом настроить компьютеры, к которым вы хотите подключаться через теневое подключение.
- Включите удаленный рабочий стол (RDP) на компьютерах пользователей (вручную или через GPO);
- Ваша учетная запись должна обладать правами локального администратора на компьютере пользователей (вы можете добавить пользователя в группу администраторов вручную или с помощью групповых политик);
- Настройте режим теневого подключения (нужно ли запрашивать подтверждение пользователя, и возможно управления в сессии или только наблюдение). Можно настроить режим через групповую политику “Установить правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов” (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 режим – разрешить просмотр сеанса пользователя без уведомления):
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v Shadow /t REG_DWORD /d 4
По умолчанию данный теневое подключение выполняется в режиме полного контроля с разрешения пользователя. - Настройте правила Windows Defender Firewall, разрешающие трафик теневых подключений по сети. Для трафика session shadowing в Windows вместо стандартного порта 3389/RDP используются порты 139/TCP, 445/TCP и диапазон динамических RPC портов (49152 по 65535). Чтобы разрешить входящий трафик теневых подключений, нужно включить два преднастроненных правила в Windows:
File and Printer Sharing (SMB-In)
иRemote Desktop - Shadow (TCP-In)
. Последнее правило разрешает удаленный доступ к процессуRdpSa.exe
. Вы можете включить правила Windows Defender на компьютерах пользователей через GPO или с помощью PowerShell командлета Enable-NetFirewallRule.
Удаленное подключение к сессии пользователя 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
В данном примере видно, что на компьютере залогинен один пользователь a.novak, который работает непосредственно за компьютером (
SESSIONNAME=console
). Идентификатор сессии ID=1.
Чтобы подключиться к рабочему столу этого пользователя через теневое подключение, выполните команду:
mstsc.exe /shadow:1 /v:wks-w10b01
На экране пользователя Windows появится запрос подтверждения подключения администратора к его сеансу: Запрос на удаленное подключение Username запрашивает удаленный просмотр вашего сеанса. Вы принимаете этот запрос.
The version of Windows running on this server does not support user shadowing
Если пользователь разрешит соединение, вы подключитесь к его консольному сеансу и увидите его рабочий стол. Вы будете видеть все действия пользователя, но не сможете взаимодействовать с его сессией. Если вы хотите управлять его сессией, добавьте в команду параметр /control. В этом случае надпись в заголовке окна сменится с
Viewing username (sessionID 1) on computername
на
Controlling…
Если сессия пользователя заблокирована, или появляется запрос повышения привилегий UAC, то без исопльзования режима
mstsc /control
окно с теневой сессией становится черным и на нем появляется символ паузы.
Теневая сессия переходит в приостановленное состояние, если у пользователя появляется запрос UAC на Secure desktop. После того, как пользователь подтвердит действие UAC, ваша сессия возобновится.
PromptOnSecureDesktop
это один из параметров, доступных в групповых политиках UAC.Чтобы развернуть окно теневой сессии во весь экран, воспользуйтесь комбинацией клавиш 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}
Функционал теневого подключения Remote Desktop Shadowing работает в Windows 11/10/ 8.1 и Windows Server 2022/2019/2016/2012 R2. Таким образом Remote Desktop Shadowing можно использовать как аналог Remote Assistance (Удаленный помощник) или TeamViewer/Anydesk для локальной или корпоративной сети.
Интересный материал, спасибо!
Я правильно понял, что такое подключение возможно К машинам с ОС не ниже Windows 10?
А речь в предпоследнем абзаце идёт о том, что возможно подключаться С машин на Windows 10 и 8.1 и с Windows 7 при обновлении клиента до версии с протоколом 8.1.
Иначе говоря подключиться К Windows 7 и 8.1 так не возможно в принципе.
Не правильно :). Вы всегда можете подключиться к теневой сессии на / с компьютеры с WIndows 10 / Windows 8.1. А после установки обновления на Windows 7 / 2008 R2, можно подключаться к теневым сесииям и с этих ОС.
Не помогла установка обновлений. с 2008 R2 подключиться к win10 так и не получается 🙁 Access denied
Судя по всему у вас ошибка доступа, а не несовместимость теневого подключения и rdp клиента. Для начала убедитесь, что вы запускаете подключение под учетной записью с правами администратора на Windows 10 и на сервере.
А управлять можно?
Конечно. Параметр Control. По умолчанию если политика не настроена вы подключаетесь к рабочему столу пользователя в режиме управления с подтверждением при подключении.
Подскажи плиз, у наших пользователей по 2 моника, при подключении через теневое все мониторы отображаются в маленьком окне. параметры /multimon и /span не решают проблему. Может есть идеи ?
Экранная лупа :).
ЗЫ. ОК, посмотрю. Мне кажется, что с несколькими мониторами на самом деле есть проблема при теневом подключении.
На самом деле проблема до сих пор актуальна. Использую теневое подключение как альтернативу основному решению, очень неудобно, когда у пользователя 2 и более монитора.
При подключении таким образом к пользователям на терминальном сервере Windows Server у них пропадает языковая панель… вековая проблема много раз всплывавшая на technet. Если кто то побеждал пожалуйста поделитесь опытом.
Да, это давняя бага, но официального фикса нет. Вот недавно на этот счёт была статья на сайте. Там вполне рабочий костыль описан https://winitpro.ru/index.php/2018/06/25/propadaet-yazykovaya-panel-v-rds-posle-shadow/
Я заметил, что если у тебя и у того, к кому ты подключаешься, выставлена раскладка одинаковая в момент подключения — то при отключении панель не пропадает. Теперь всегда прошу пользователя переключить «на английский».
Сервер 2008 R2, все вышеуказанные обновления стоят, но при попытке теневого подключения выдаёт следующую ошибку.
«В версии Windows установленной на этом сервере — не поддерживается теневой доступ пользователей»
Вы используете Windows Server 2008 R2 в качестве клиента с которого подключатесь через теневое подключение к другим устройствам, или же пытаетесь подключиться к сессии на этом сервере?
Использую в качестве клиента, а подключиться пытаюсь на win10pro
А, что пишется в логах? Указывается тип подключения?
У меня что то политика никак не хочет менять указанный параметр.
Я даже внес изменения в политику, которая уже применена на ПК.
Сделал апдейт, а параметр все равно не применяется
Не понял вас… У вас не изменяются настройки теневого подключения через политику?
Да, в ручную меняешь все ОК, но политика никак не хочет накатывать изменение параметра.
Политика применяется на ПК
Я с вин10 на вин10 подключаюсь. Права админа домена. В журнале System моего ПК нет событий при подключении: EventID 26:
Почему именно EventID ищите? Это app popup….
Тут скорее другие журналы нужно смотреть
https://winitpro.ru/index.php/2018/09/25/analizing-rdp-logs-windows-terminal-rds/
А нужно ли поднимать роль терминального сервера для этого подключения7
Нет, роль RDS тут не при чем. У меня все без проблем заработало при подключении между двумя Windows 10 1803 в домене (подключение возможно в обе стороны). Можно даже политики не настривать.
У меня ни в какую не хочет. Домен. win10 сборка 1709. С win10 на win10 ошибка: Ошибка теневого доступа. Неопознанная ошибка. Подключаюсь от своей учетки — Админ домена.
Пробую командой Mstsc /shadow:1 /v:100.143.31.106 /noConsentPrompt
Стандартный RDP работает без проблем.
Подскажите, какие службы отвечают за удалённый помощник и за теневое подключение к пользователю?
никак не могу найти. хочу сделать Gpo на их включение.
Отдельной службы, отвечающей за теневое подключение нет. В рамках теневого подключения вызываются исполняемые файлы RdpSa.exe, RdpSaProxy.exe, RDPSAUacHelper.exe. Все они запускаются как дочерние от процесса svchost.exe. Попытался отследить службы, но там их десятка 2:
BrokerInfrastructure Background Tasks Infrastructure Service C:\Windows\System32\bisrv.dll
DcomLaunch DCOM Server Process Launcher C:\Windows\system32\rpcss.dll
LSM Local Session Manager C:\Windows\System32\lsm.dll
PlugPlay Plug and Play C:\Windows\system32\umpnpmgr.dll
Power Power C:\Windows\system32\umpo.dll
SystemEventsBroker System Events Broker C:\Windows\System32\SystemEventsBrokerServer.dll
SessionEnv Remote Desktop Configuration C:\Windows\system32\sessenv.dll
и т.д.
ну что-же.. это лишний раз напоминает что в домене должно быть всё едино по политикам и настройкам..
спасибо! буду играться дальше с этой темой. статья очень интересная! спасибо!
Добрый день! Всё прекрасно работает! Но хочется ещё и чтобы звук можно было слышать. Пожалуйста, подскажите какие команды надо написать чтобы слышать звук от динамиков пользователя к которому подсоединился по Вашей методике.
Добрый день. Не уверен, что это возможно. Я по крайней мере не слышал, чтобы через теневое подключение можно было бы пробрасывать звук (такое работает только в полноценном RDP подключении.). Да и зачем ?..
Здравствуйте. У меня аналогично описанной несколько выше проблеме — ошибка «не поддерживается теневой доступ пользователей»
Подключение происходит с Windows Server 2012 R2 на ПК с Windows 7 SP1
Обновления все поставлены, в том числе перечисленные в статье
На Windows 10 / Windows Server 2012 R2 теневое подключение проходит? Версия rdp 8.1?
Та же проблема на win 10 подключается норм . Версия rdp по идее 8.1 ибо все обновы стоят
Два компа на win10. Компы в домене.
На первом компе (comp1) залогинился user1, на втором (comp2) user2.
Оба User имеют только права пользователя.
Почему на клиенте win10 не применяется механизм разрешения подключения пользователей без админских прав? — *wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName=’RDP-Tcp’) CALL AddAccount ‘domain\user2’,2
Команда* на comp1 выполняется без ошибок, но подключиться от comp2 к comp1 используя учетные данные user2 — невозможно, отказано в доступе.
Если без админских прав подключаться к рабочему столу comp1/user1 со второго компа, то
получается только если на второй машине выполнять Mstsc /shadow:1 /v:comp1 /prompt и указывать учетные данные user1, т.е. конектимся к сессии пользователя user1 и используем его же учетные данные (все это без админских прав).
м
Чтобы удаленно подключится к компьютеру через теневое подключение, у подключающейся учетной записи должны быть права администратора на компьютере, а в свойствах системы включен удаленный рабочий стол (RDP).Прошу обратить внимание. Для выполнения теневого подключения не обязательно быть локальным админом.
На удаленной станции нужно выполнить wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName=’Cansole‘) CALL AddAccount ‘corp\AllowRDSShadow’,2
https://winitpro.ru/index.php/2014/02/12/rds-shadow-v-windows-2012-r2
Чтобы удаленно подключится к компьютеру через теневое подключение, у подключающейся учетной записи должны быть права администратора на компьютереwmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName=’Console‘) CALL AddAccount ‘corp\AllowRDSShadow’,2
так будет работать
Thnks!
не работает
Идет выполнение (\\PCWORK\root\CIMV2\TerminalServices:Win32_TSPermissionsSetting.TerminalName=»Console»)->AddAccount()
ОШИБКА.
Описание: Общий сбой.
Вы пытаетесь изменить настройки удаленно на компьютере PCWORK? Локально команда отрабатывает?
wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName=’Console‘) CALL AddAccount ‘corp\AllowRDSShadow’,2
Проверьте кавычки в команде, имя группы и домена.
Почему то, не у всех открывается теневой рабочий стол. подключаюсь к машине, идет подключение и сразу закрывается. В логах машины к которой подключаюсь пишет даны права на теневое подключение.
Предоставлено разрешение на теневой просмотр
Пользователь ******* (идентификатор сеанса: 1) предоставил разрешение пользователю *******
Проблема только у коннкретных пользователей или компьютеров?
Журналы безопасности смотрели? Нет ли там событий access denied?
В журнале в ок, предоставляет доступ, но почему то просто закрывается окно, примерно у 90% пользователей такое.
Не могу однозначно ответить о причине.
Попробуйте начать с анализа версий ОС на «хороших» и проблемных клиентах…. Может проблема только на определенном билде Windows 10 проявляется…
Попробуйте временно отключить антвирус, файервол.
У меня тупой вопрос. Как полностью закрыть теневое подключение или оно уже не сработает никак при выключенных рдп и службах?
w10ent
Наверно лучше всего отключить Remote Shadowing через GPO:
Конфигурация компьютера ->Административные шаблоны –> Компоненты Windows –> Службы удаленных рабочих столов –> Узел сеансов удаленных рабочих столов –> Подключения (Policies -> Administrative Templates -> Windows components -> Remote Desktop Services -> Remote Session Host -> Connections) и называется «Установить правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов» (Set rules for remote control of Remote Desktop Services user sessions). Значение политики — No remote control allowed.
Как отключить RDP и любой другой способ удаленного подключения, если урезаны права на компьютере
Возник интересный вопрос, а как сделать автоматическое завершение зависших или отключенных сессий?
Например в серверных ОС это реализовано простым выставлением таймаута.
Интересно что при запуске приложения через RemotApp окно приложения начинает ходить вверх вниз примерно на 2см и в нем не возможно ничего нажать…
Т.е. проблема при теневом подключении к пользователю, если у него запущено RemoteApp?
У вас или у пользователя случайно не мультимониторная конфигурация с HiDPi 4k дисплем?
Я бы сказал,после запуска RemoteApp окно приложения начинает прыгать, мультимониторных конфигураций нет.
На сайте Microsoft указано, что теневое подключение к сессиям RemoteApp не поддерживается…. Используйте Remote Assistance.
Я чтото не понял домен обязателен? Не выходит подключиться с одной Win10 на другую Win10, в одноранговой сети, отказано в доступе.
Домен не обязателен. Доступ либо под сохраненными кредентиалсами, либо на обоих компьютерах использовать одинаковую учеткутс правами админа и одинаковым паролем.
Подскажите такой момент, при выключенном файрволле все четко работает,
при включении фаервола, перестает работать
все правила какие только можно прописал и 445 и 135-139
и динамические порты RPC
любые пляски с бубном, ни при каких правилах не работает, отслеживал оба машины через Currports от Nirsoft
как только выключаю фаерволл все сказка,
есть ли конкретные правила, которые дадут доступ к RPC
Я считал, что открытия портов TCP 135, 445 и 49152-65535 достаточно для нормальной работы теневого подключения….
Если чего-то не хватает, наверно проще каким-нибудь tcpview отследить сетевые порты, на которые пытается подключиться клиент.
Доброго времени суток!
Почему то не получается наблюдать за другим сеансом на том же сервере, через указание v:localhost.
Через локальную сеть (с другой машины) наблюдать за этим же сеансом на этом сервере получалось.
Пример — есть srv1c, на нем есть два юзера — Админ и Админ2. За любым из них могу наблюдать с другого компа, а вот с самого сервера не могу из интерактивного сеанса Админ наблюдать за Админ2.
Подскажите решение плиз.
Забыл указать -пишет Отказано в доступе
Windows Server 2012 R2 теневое подключение ко второй админской сессии работает. Вместо localhost указываю имя сервера и запускаю команду в командной стоке с правами админа:
Mstsc /shadow:1 /v:server1
винь10 на винь10 с ключом /noConsentPrompt работает. А GPO что не накатываешь только с подтверждением от юзера((.
Подскажите тестирую щас доступ, если делаю подключение с запросом, на клиенте есть запрос да\нет, в журнале то же заметка о вопросе есть, после подверждения все просто пропадет и нет не окна управления не чего), сделал с ключем без подверждения… идет конект и исчезает окно, влогах пусто) куда копать?
Такая же беда.
Никак не могу настроить.
Есть у кого идеи?
Добавить в Firewall надо разрешение входящего соединения для:
Program: %SystemRoot%\system32\RdpSa.exe
Port: TCP Any
Да, вариант. Вы тестировали такой способ. Я подозреваю, что там RPC локатор используется, нужно и 135 порт открывать.
netsh advfirewall firewall add rule name=»allow ShadowRDP» dir=in protocol=TCP program=»%SystemRoot%\system32\RdpSa.exe» localport=any action=allow
например так.
netsh advfirewall firewall add rule name="allow ShadowRDP" dir=in protocol=TCP program="%SystemRoot%\system32\RdpSa.exe" localport=any action=allow
Выставил у клиента в групповых политиках «Полный контроль без разрешения», подключаюсь с ключом /noConsentPrompt , но одновременного сеанса работы и управления добиться не удалось, текущий пользователь «вылетает»!
В чем может быть ошибка? Ключ «shadow» должен присутствовать обязательно или с другими ключами не нужен? Хотя и так и так пробовал, все равно выбивает пользователя! Система Win10 и там и там.
@echo off
set /P rcomp="Enter name or IP of a Remote PC: "
qwinsta /server:%rcomp%
set /P rid="Enter RDP user ID: "
start mstsc /shadow:%rid% /v:%rcomp% /control /noConsentPrompt
я такой простенький скрипт использую в сети.
shadow обязательно
Подскажите как то можно сделать уведомление об отключении на экране пользователя?
Возможно наверно через какие-то скрипты. Как вариант посмотрите что появляется в журнале событий при отключении теневой сессии. Возможно к этому eventID привязать (https://winitpro.ru/index.php/2016/01/21/zapusk-powershell-skripta-pri-vozniknovenii-opredelennogo-sobytiya/) скрипт с всплывающим оповещением ( https://winitpro.ru/index.php/2018/10/02/uvedomleniya-polzovateley-is-powershell/)
В домене пытаюсь подключиться с Win10 на на Win7, не получается!
Установка KB не дала результатов. Всё равно пишет, что » теневое подключение не доступно»
я так понимаю с 10 на 7 не подключиться никак ? (с 10 на 10 все робит. с 7 на 10 не пробовал)
не подключитесь. не поддеживается.
Добрый день!
Получиться ли подключиться таким способом не имея домена и Windows Server?
Т.е просто с Windows 10 Pro на другую машину с Windows 10 Pro. Интересует именно теневое подключение.
Теневое подключение работает даже в рабочей группе. Главное, чтобы у вас были одинаковые аккаунты на обоих компьютерах.
А что значит одинаковые аккаунты?
Как оно будет работать в рабочей группе — не знаю. Подозреваю что придется использовать одинаковые аккаунты с одинаковым паролем на обоих компьютерах.
И где ж его взято-то, этот «ID сессии»?!
Супер, разобрался, все получилось, в статье написано все, что нужно для успешной настройки Оного. Надо только внимательно читать!
А с маленьким экраном при подключении к сессии, где ПК два монитора имеет — не решилась проблема?
Всем привет.
1. Я так понимаю аргумент /f[ullscreen] не поддерживается?
2. А как-то можно заставить делать проброс комбинаций клавиш?
На второй вопрос нашел решение.
Комбинации клавиш можно использовать переключившись в ручном режиме в полный экран (просто разхвернуть окно на полную не помогает)
Ctrl + Alt + Break — переключения удаленного рабочего стола между режимами «во весь экран» и «в окне»
Такой вопрос. При подключении с машины на машину (10 pro и там и там) — за курсором тянется шлейф. Это очень раздражает. Кто-то сталкивался с такой проблемой и какие есть мысли по поводу ее решения.
ошибка в пуле адресо
49152 to 65535
Как поправить проблему черного экрана управления при подключении по теневой копии?
Т.е. подключаюсь к сотруднику и у меня черный экран, мышка у сотрудника перемещается, могу кликнуть вслепую.
Терминальный сервер поднят новый на WS 2022.
Та же проблема… Возможно нашли решение?
Если у вас чёрный экран на сервере 2022 при подключении к сеансу RemoteApp вам нужно отключить политику-
Использовать дополнительную графику RemoteFX для удаленно приложения RemoteApp.
После отключения политики пользователю к которому подключаются нужно перезайти полностью через завершение сеанса.
А у меня при подключении — маленькое белое окно. Если развернуть на весь экран — напоминает кнопку «стоп» (белый квадрат на чёрном фоне), по аналогии как в статье кнопка «пауза» упоминается. Не смог побороть. На другом компе, после подключения, окно mstsc просто молча исчезает, задача висит в диспетчере какое-то время и пропадает.
У вас ошибка в диапазоне портов должно быть — RPC ports (from 49152 to 65535), а у вас — 49152 to 6553
admin: Исправлено
«Теперь нужно узнать имя пользователя и ID его сессии на удаленном компьютере (если пользователь работает непосредственно за консолью компьютера, то ID его сессии всегда будет равно 1).»
может делаю что-то не так, но id сессии в наверно 50% случаев не 1, а цифра обычно до 10, и приходится выполнять qwinsta /server:PCNAME… что-то можно придумать? т.е. надо быть минимум локальным администратором на удалённом пк (если не ошибаюсь)
Привет. Вот посмотри мой скрипт. уже оказывается 3 года работает без проблем.
https://github.com/AlektroNik/RDP-Shadow/blob/main/RDP%20Shadow.ps1
Смотрю активную сессию на удаленном компе и подключаюсь к ней. Админский доступ на удаленном компе не обязателен, чтобы посмотреть номер сессии, но тебе туда как-то нужно удаленно подключиться и запустить qwinsta.exe
спасибо за ответ!
Invoke-Command -ComputerName $PC ` -ScriptBlock { qwinsta.exe }
только у меня почему-то срабатывает на некоторых компьютерах qwinsta -server:compname, на некоторых — только вызовом qwinsta на самом компе (Invoke-Command -ComputerName) Очень интересно из-за чего, ведь всё абсолютно одинаково. ну и то что узнаёте номер сессии, также противоречит «если пользователь работает непосредственно за консолью компьютера, то ID его сессии всегда будет равно 1».1. У меня все компьютеры в домене, все работает
2. Я не прнял чему там что противоречит. Скрипт смотрит какая сессия активна и подключается к этой сессии. Во-первых пользователь может работать удалённо и ИД не будет 1. Во-вторых активный сеанс на клиентском компе может быть только один, если модификации библиотек не делать, т. е. активная сессия будет только одна в один момент времени, что исключает ошибку в подключении. Но для терминальных серверов нужно модифицировать скрипт.
С помощью скрипта можно отслеживать наличие процесса и оповестить пользователя о теневом подключение с помощью звука (в этом примере) или всплывающего оповещения.
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
}
Также можно отслеживать события 20503,20504,20508 в Event Viewer: Microsoft | Windows | TerminalServices-RemoteConnectionManager | Operational
Заметил интересную вещь: удалось беспроблемно подключиться к ПК на Windows 10 22H2, при этом ни локальными политиками ни групповыми не настраивал теневое подключение к удаленному рабочему столу. Правило фаерволла, как оказалось, настроено «из коробки», сразу после установки чистой винды 22H2. Может что-нибудь поменялось, и теперь опция доступна сама по себе?
Возможность подключения к удаленному рабочему столу — включена галочкой, и отменена проверка подлинности.
Позвольте спросить, если у вас найдется время для ответа.
Правильно ли я понимаю, что любой человек в интернете может подключиться к моему компьютеру, зная IP-адрес, если в описанных здесь политиках не стоят настройки запрета?
В 99.999% случаев вы в безопасности.
Для успешного подключения удаленного пользвателя к теневой сессии через интернет:
1) На вашем компьютере должен быть белый IP
2) Удаленный пользователь должен знать имя и пароль пользователя вашего компьютера
3) В windows firewall разрешен доступ к RPC диапазону из интернета
Все это вместе крайне маловероятно.
Добрый день!
Такая проблема: при подключении внешней сетевой usb-карты для второго интерфейса соединение сбрасывается, т.е. вводишь логин и пароль, появляется маленькое белое окошко и через несколько секунд «вылетает»? в cmd при этом никаких ошибок нет. Стоит вытащить usb-сетевуху, сразу нормально подключается. Что это и как побороть?
Комментарий по поводу предыдущего вопроса: отваливается shadow rdp при появлении еще одного ip адреса, при этом неважно на какой сетевой интерфейс.
А есть какая то утилитка которая получает по имени пк или айпи адресу сеансы и подключается к выбранному?
Вот есть скрипт с гуем.
https://github.com/VitalProject/Windows-RemoteShadow
Здесь я его дорабатывал для подключения к пк и для запуска с компа не в домене.
https://github.com/AlektroNik/RDP-Shadow/blob/main/RDP%20Shadow.ps1
Может еще что-то появилось поудобнее. Тоже буду рад послушать.
День добрый, то ли что то то делаю,о ли это нето что адо. Скачал скрипт с гуи, он скани сетку, находит компы и подключается к ним по рдп. В обычном варианте не теневому сеансу. То есть пользователя выкидывает
Спасибо! Очень удобная тема для удаленной помощи штатными средствами. Использовал её ещё со времён Windows XP, но там приходилось цепляться с терминального сервера к ней.