Я пытаюсь затенять существующие сеансы RDP в Windows 2012 R2 без RDS, установленного на настраиваемом (не стандартном 3389) порте rdp.
это описывает, как затенять RDP в Windows 2012 R2. Однако, когда я пытаюсь сделать это, например, используя:
mstsc /shadow:(sessionID) /v:(ip):(port) /control
я получил computer name is invalid
.
Оказывается, хотя mstsc /? показывает, что можно указать порт в параметре / v, он фактически не принимает это в сочетании с аргументом / shadow и приводит к сообщению об ошибке «Это имя компьютера недействительно»
Бег только mstsc v:IP:port
без тени является успешным, однако, очевидно, это не приводит к затенению.
Я установил ключ реестра
HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
Shadow(DWORD) = 1
Разрешить затенение с разрешения пользователя.
Я также разрешил несколько сеансов для каждого пользователя в групповой политике, что действительно приводит к разрешению нескольких сеансов с одним именем пользователя.
При выполнении затенения (насколько я понимаю) обмен данными вместо этого осуществляется через RPC, или, по крайней мере, при настройке, а затем для фактического сеанса используется «случайный» порт. На практике это означает, что указанный порт игнорируется.
http://woshub.com/rdp-session-shadow-to-windows-10-user/ упоминает HKLM\SYSTЕM\CurrеntControlSеt\Control\Tеrminal Sеrvеr
“AllowRemotеRPC”=dword:00000001
С помощью qwinsta /server:(servername or ip)
вероятно, будет хорошим тестом, чтобы убедиться, что это работает правильно.
Конечно, это довольно печально, потому что исключает использование через Интернет, когда вы не хотите открывать порты RPC.