Устранение проблем и ошибок подключения к удаленному рабочему столу в Windows 11/10

Протокол удаленного рабочего стола (RDP)(Remote Desktop Protocol (RDP)) — это собственный протокол, разработанный  Microsoft ,  который предоставляет пользователю графический интерфейс для подключения к другому компьютеру через сетевое соединение.Для этой цели пользователь использует клиентское программное обеспечение RDP , в то время как на другом компьютере должно быть запущено программное обеспечение (RDP)RDP - сервера. В этом посте мы рассмотрим, как устранять общие проблемы(troubleshoot general Remote Desktop connection issues) с подключением к удаленному рабочему столу в Windows 11/10.

Удаленного рабочего стола

Устранение(Fix Remote Desktop) проблем с подключением к удаленному рабочему столу

Попробуйте описанные ниже шаги по устранению неполадок, если клиент удаленного рабочего стола не работает(Remote Desktop client is not working) или не может подключиться к удаленному рабочему столу(cannot connect to a remote desktop) , но не выдает сообщения или другие симптомы, которые помогли бы определить причину.

1] Проверьте(Check) состояние протокола RDP на локальном компьютере.

Вам потребуется включить удаленный рабочий стол(enable Remote Desktop) , чтобы проверить и изменить состояние протокола RDP на локальном компьютере. Вы также можете включить удаленный рабочий стол с помощью командной строки или PowerShell(enable Remote Desktop using Command Prompt or PowerShell) .

2] Проверьте(Check) состояние протокола RDP на удаленном компьютере.

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

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

Поскольку это операция реестра, рекомендуется создать резервную копию реестра(back up the registry)  или  создать точку восстановления системы  в качестве необходимых мер предосторожности. После этого вы можете действовать следующим образом:

  • Нажмите клавишу Windows + R, чтобы вызвать диалоговое окно « Выполнить(Run) ».
  • В диалоговом окне «Выполнить» введите regeditи нажмите Enter, чтобы открыть редактор реестра(open Registry Editor) .
  • В редакторе реестра выберите «  Файл(File) », затем выберите  « Подключить сетевой реестр»(Connect Network Registry) .
  • В  диалоговом окне « Выбор компьютера(Select Computer) » введите имя удаленного компьютера.
  • Выберите Проверить имена.(Check Names.)
  • Выберите ОК(OK) .
  • Затем  перейдите или перейдите к пути к разделу реестра ниже:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server
  • В этом месте на правой панели дважды щелкните ключ fDenyTSConnections , чтобы изменить его свойства.
  • Чтобы включить RDP , установите значение(Value) данных fDenyTSConnections  от  1  до  0 .

Значение 0 указывает на то , что RDP включен, а значение 1 указывает на то, что RDP отключен.

Связанный(Related) : параметр удаленного рабочего стола неактивен в(Remote Desktop option is greyed out) Windows 10,

3] Проверьте(Check) , блокирует ли объект групповой политики(Group Policy Object) ( GPO ) RDP на локальном компьютере.

Устранение проблем с подключением к удаленному рабочему столу

Объект групповой политики(GPO) может переопределять настройки на уровне компьютера, если вы не можете включить RDP в пользовательском интерфейсе или значение  fDenyTSConnections  возвращается к  1  после того, как вы его изменили .

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

  • Нажмите клавишу Windows key + R , чтобы вызвать диалоговое окно «Выполнить».
  • В диалоговом окне «Выполнить» введите cmdи нажмите CTRL + SHIFT + ENTER , чтобы open Command Prompt in admin/elevated mode .
  • В окне командной строки введите команду ниже и нажмите  Enter .
gpresult /H c:\gpresult.html
  • После выполнения команды откройте gpresult.html.
  • В Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Connections найдите политику Разрешить пользователям подключаться удаленно с помощью служб удаленных рабочих столов(Allow users to connect remotely by using Remote Desktop Services)  .

Если параметр для этой политики  включен(Enabled) , групповая политика(Group Policy) не блокирует подключения RDP . Если параметр для этой политики  отключен(Disabled) , установите флажок  Winning GPO . Это объект групповой политики(GPO) , который блокирует соединения RDP .

4] Проверьте(Check) , блокирует ли объект групповой политики (GPO)RDP на удаленном компьютере.

Чтобы проверить конфигурацию групповой политики(Group Policy) на удаленном компьютере, выполните приведенную ниже команду в командной строке с повышенными привилегиями :(CMD)

gpresult /S <computer name> /H c:\gpresult-<computer name>.html

Файл, создаваемый этой командой ( gpresult-<computer name>.html ), использует тот же формат информации, что и версия для локального компьютера ( gpresult.html ).

5] Изменить блокирующий объект групповой политики

Изменение блокирующего объекта групповой политики

Эти параметры можно изменить в редакторе объектов групповой политики(Group Policy Object Editor) ( GPE ) и консоли управления групповой политикой (GPMC) .

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

Используя GPE, сделайте следующее:

  • Нажмите клавишу Windows key + R , чтобы вызвать диалоговое окно «Выполнить».
  • В диалоговом окне «Выполнить» введите gpedit.mscи нажмите Enter, чтобы открыть редактор групповой политики(open Group Policy Editor) .
  • В редакторе локальной групповой политики(Local Group Policy Editor) используйте левую панель, чтобы перейти по указанному ниже пути:
Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections
  • В этом месте на правой панели дважды щелкните Разрешить пользователям удаленное подключение с помощью служб удаленных рабочих столов,(Allow users to connect remotely by using Remote Desktop Services) чтобы изменить его свойства.
  • Установите для политики  значение « Включено(Enabled) »  или  « Не настроено(Not configured) » .
  • Нажмите «Применить(Apply) » > «ОК(OK) » и выйдите.
  • На затронутых компьютерах откройте окно командной строки от имени администратора и выполните следующую команду:
 gpupdate /force

С помощью консоли управления(GPMC) групповыми политиками перейдите к организационной единице (OU), в которой политика блокировки применяется к затронутым компьютерам, и удалите политику из OU.

6] Проверьте(Check) состояние служб RDP .

Проверьте статус служб RDP

Как на локальном (клиентском), так и на удаленном (целевом) компьютере должны быть запущены следующие службы:

  • Службы удаленных рабочих столов(Remote Desktop Services) ( TermService )
  • Перенаправитель портов пользовательского режима служб удаленных рабочих столов(Remote Desktop Services UserMode Port Redirector) ( UmRdpService )

На любом компьютере, если одна или обе службы не запущены, запустите их.

Сделайте следующее:

  • Нажмите клавишу Windows key + R , чтобы вызвать диалоговое окно «Выполнить».
  • В диалоговом окне «Выполнить» введите services.mscи нажмите Enter, чтобы открыть «Службы(open Services) » .
  • В окне « Службы(Services) » прокрутите и найдите обе вышеупомянутые службы.
  • Дважды щелкните(Double-click) запись, чтобы изменить ее свойства.
  • В окне свойств нажмите кнопку Пуск(Start) .
  • Нажмите ОК(OK) .

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

7] Проверьте(Check) состояние прослушивателя RDP .

Проверьте статус прослушивателя RDP

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

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

  • Нажмите клавишу Windows key + X , чтобы открыть меню опытного пользователя(open Power User Menu) .
  • Нажмите A на клавиатуре, чтобы запустить PowerShell в режиме администратора/с повышенными правами.
  • В консоли PowerShell введите команду ниже и нажмите Enter :
Enter-PSSession -ComputerName <computer name>
  • Введите  qwinsta.

Если в списке есть  rdp-tcp  со статусом  Listen , как показано на изображении выше, прослушиватель RDP работает. Перейдите(Jump) к шагу 10 по устранению неполадок(Troubleshooting step 10]) ниже. В противном случае(Otherwise) вам потребуется экспортировать конфигурацию прослушивателя RDP с рабочего компьютера.

Сделайте следующее:

  • Войдите на компьютер с той же версией операционной системы, что и на уязвимом компьютере, и получите доступ к реестру этого компьютера.
  • Перейдите(Navigate) или перейдите к следующей записи реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
  • Экспортируйте запись в файл .reg(Export the entry to a .reg file) .
  • Скопируйте экспортированный файл .reg на зараженный компьютер.
  • Чтобы импортировать конфигурацию прослушивателя RDP , откройте окно (RDP)PowerShell с административными разрешениями на затронутом компьютере (или откройте окно PowerShell и удаленно подключитесь к затронутому компьютеру).

Чтобы создать резервную копию существующей записи реестра(To back up the existing registry entry) , введите следующий командлет:

cmd /c 'reg export "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp" C:\Rdp-tcp-backup.reg'

Чтобы удалить существующую запись реестра(To remove the existing registry entry) , введите следующие командлеты:

Remove-Item -path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp' -Recurse -Force

Чтобы импортировать новую запись реестра, а затем перезапустить службу(To import the new registry entry and then restart the service) , выполните приведенные ниже командлеты. Замените <filename>заполнитель именем экспортированного файла .reg .

cmd /c 'regedit /s c:\<filename>.reg' 
Restart-Service TermService -Force

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

Если вы по-прежнему не можете подключиться, перейдите к следующему шагу устранения неполадок, который заключается в проверке состояния самозаверяющего сертификата RDP(check the status of the RDP self-signed certificate) .

8] Проверьте(Check) состояние самозаверяющего сертификата RDP .

Проверьте статус самозаверяющего сертификата RDP.

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

  • Нажмите клавишу Windows key + R , чтобы вызвать диалоговое окно «Выполнить».
  • В диалоговом окне «Выполнить» введите mmcи нажмите Enter, чтобы открыть консоль управления Microsoft(open Microsoft Management Console) .
  • Щелкните меню « Файл»(File) .
  • Выберите Add/Remove Snap-in .
  • Выберите  Сертификаты(Certificates)(Select Certificates) из списка оснасток.
  • Щелкните Добавить(Add) .
  • Когда вам будет предложено выбрать хранилище сертификатов для управления, выберите  Учетная запись компьютера.(Computer account.)
  • Нажмите «Далее»(Next) .
  • Выберите затронутый компьютер.
  • Нажмите кнопку Готово(Finish) .
  • Нажмите ОК(OK) .
  • Теперь в  папке  « Сертификаты » в разделе « (Certificates)Удаленный рабочий стол(Remote Desktop) » удалите самозаверяющий сертификат RDP .
  • На пораженном компьютере перезапустите службу служб удаленных рабочих столов(Remote Desktop Services) .
  • Обновите оснастку «Сертификаты».
  • Если самоподписанный сертификат RDP не был воссоздан, проверьте права доступа к папке MachineKeys .

9] Проверьте(Check) права доступа к папке MachineKeys .

На пораженном компьютере выполните следующие действия:

  • Нажмите клавишу Windows key + E , чтобы открыть проводник(open File Explorer) .
  • Перейдите к указанному ниже пути к каталогу:
 C:\ProgramData\Microsoft\Crypto\RSA\
  • В этом месте щелкните правой кнопкой мыши MachineKeys , выберите  « Свойства(Properties) », выберите  « Безопасность(Security) », а затем выберите  « Дополнительно(Advanced) » .

Убедитесь(Make) , что настроены следующие разрешения:

  • BuiltinAdministrators: полный доступ(Full control)
  • Все: читаем, пишем(Read, Write)

10] Проверьте порт прослушивателя RDP.

Проверьте порт прослушивателя RDP

Как на локальном (клиентском), так и на удаленном (целевом) компьютере прослушиватель RDP должен прослушивать порт 3389. Никакие другие приложения не должны использовать этот порт.

Чтобы проверить или изменить порт RDP , используйте редактор реестра(Registry Editor) . В качестве меры предосторожности создайте резервную копию реестра или создайте точку восстановления системы, а затем выполните следующие действия:

  • Откройте редактор реестра, выберите «Файл(File) », затем выберите  «Подключить сетевой реестр»(Connect Network Registry) .
  • В  диалоговом окне « Выбор компьютера(Select Computer) » введите имя удаленного компьютера.
  • Выберите Проверить имена.(Check Names.)
  • Выберите ОК(OK) .
  • Затем  перейдите или перейдите к пути к разделу реестра ниже:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
  • В этом месте на правой панели дважды щелкните запись PortNumber , чтобы изменить ее свойства.
  • В окне свойств, если поле данных Значение(Value) имеет значение, отличное от 3389 , измените его на  3389.
  • Нажмите OK , чтобы сохранить изменения.
  • Перезапустите службу служб удаленных рабочих столов(Remote Desktop Services) .

11] Убедитесь(Check) , что другое приложение не использует тот же порт.

Сделайте следующее:

  • Откройте PowerShell в повышенном режиме.
  • Чтобы подключиться к удаленному компьютеру, выполните следующую команду:
 Enter-PSSession -ComputerName <computer name>

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

cmd /c 'netstat -ano | find "3389"'
  • Найдите(Look) запись для TCP -порта 3389 (или назначенного RDP - порта) со статусом  Listening .

Примечание(Note) . Идентификатор процесса ( PID ) для процесса или службы, использующей этот порт, отображается в столбце PID .

  • Чтобы определить, какое приложение использует порт 3389 (или назначенный порт RDP ), введите следующую команду:
cmd /c 'tasklist /svc | find "<pid listening on 3389>"'
  • Найдите(Look) запись для номера PID , связанного с портом (из  netstat вывода). Службы или процессы, связанные с этим PID , отображаются в правом столбце.
  • Если порт использует приложение или служба, отличная от служб удаленных рабочих столов(Remote Desktop Services) ( TermServ.exe ), вы можете разрешить конфликт одним из следующих способов:

Настройте другое приложение или службу на использование другого порта (рекомендуется).

Удалите другое приложение или службу.

Настройте RDP для использования другого порта, а затем перезапустите службу служб удаленных рабочих столов(Remote Desktop Services) (не рекомендуется).

12] Проверьте(Check) , не блокирует ли брандмауэр порт RDP .

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

Сделайте следующее:

  • Перейдите на другой компьютер, который не затронут, и загрузите (download) psping .
  • Откройте окно командной строки от имени администратора, перейдите в каталог, в который вы установили  psping , и введите следующую команду:
psping -accepteula <computer IP>:3389
  • Проверьте вывод команды  psping на наличие  следующих результатов:

Connecting to <computer IP> : удаленный компьютер доступен.

(0% loss) : все попытки подключения успешны.

Удаленный компьютер отказался от сетевого подключения(The remote computer refused the network connection) : Удаленный компьютер недоступен.

(100% loss) : Все попытки подключения не увенчались успехом.

  • Запустите  psping  на нескольких компьютерах, чтобы проверить их способность подключаться к проблемному компьютеру.
  • Обратите внимание, блокирует ли затронутый компьютер подключения со всех других компьютеров, некоторых других компьютеров или только одного другого компьютера.

Дополнительные шаги, которые вы можете предпринять, включают в себя;

  • Попросите своих сетевых администраторов убедиться, что сеть разрешает трафик RDP к пострадавшему компьютеру.
  • Изучите конфигурации любых брандмауэров между исходным компьютером и затронутым компьютером (включая брандмауэр Windows(Windows Firewall) на затронутом компьютере), чтобы определить, блокирует ли брандмауэр порт RDP .

Надеюсь, что этот пост поможет вам успешно устранить проблемы с RDP- подключением, которые могут у вас возникнуть!



About the author

Я инженер-программист с более чем 10-летним опытом работы на платформах Windows 11 и 10. Я сосредоточился на разработке и поддержке высококачественного программного обеспечения для Windows 7 и Windows 8. Я также работал над множеством других проектов, включая, помимо прочего, Chrome, Firefox, Xbox One и файлы.



Related posts