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

Обновлено: 02.05.2024

После установки обновлений безопасности Windows, которые вышли после мая 2018 года, вы можете столкнуться с ошибкой CredSSP encryption oracle remediation при RDP подключении к удаленному серверу и компьютеру Windows в следующих случаях:

  • Вы подключаетесь к удаленному рабочему столу компьютера с недавно установленной старой (например, RTM) версией Windows (например, Windows 10 ниже билда 1803, Windows Server 2012 R2, Windows Server 2016), на котором не установлены последние обновления безопасности Windows;
  • Вы пытаетесь подключиться к RDP компьютеру, на который давно не устанавливали обновления Microsoft;
  • RDP подключение блокирует удаленный компьютер, т.к. нет нужных обновлений безопасности на вашем клиентском компьютере.

Итак, при попытке подключения к приложению RemoteApp на RDS серверах под Windows Server 2016 / 2012 R2 / 2008 R2, или к удаленным рабочим столам других пользователей по протоколу RDP (на Windows 10, 8.1 или 7), появляется ошибка:

Remote Desktop connection
An authentication error has occurred.
The function is not supported.
Remote Computer: hostname
This could be due to CredSSP encryption oracle remediation.

windows 10 rdp ошибка подключения CredSSP encryption oracle remediation

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

Данная ошибка связана с тем, что на Windows Server или на обычной десктопной версии Windows, к которой вы пытаетесь подключится по RDP, не устанавлены обновления безопасности Windows (как минимум с марта 2018 года).

Таким образом, если вы на RDS/RDP серверах (компьютерах) Windows с марта 2018 года не устанавливались накопительные обновления безопасности, а на RDP клиентах установлены майские обновления (или более новые), то на них при попытке подключится к RDS серверам с непропатченной версией CredSSP будет появляется ошибка о невозможности подключения: This could be due to CredSSP encryption oracle remediation .

Ошибка RDP клиента появляется после установки следующих обновлений безопасности:

  • Windows 7 / Windows Server 2008 R2 — KB4103718
  • Windows 8.1 / Windows Server 2012 R2 — KB4103725
  • Windows Server 2016 — KB4103723
  • Windows 10 1803 — KB4103721
  • Windows 10 1709 — KB4103727
  • Windows 10 1703 — KB4103731
  • Windows 10 1609 — KB4103723

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

Для решения проблемы вы можете временно на компьютере, с которого вы подключаетесь по RDP, отключить проверку версии CredSSP на удаленном компьютере. Это можно сделать через редактор локальных групповых политик. Для этого:

  1. Запустите редактор локальных GPO — gpedit.msc;
  2. Перейдите в раздел политик Computer Configuration -> Administrative Templates -> System -> Credentials Delegation (Конфигурация компьютера -> Административные шаблоны -> Система -> Передача учетных данных);
  3. Найдите политику с именем Encryption Oracle Remediation (Исправление уязвимости шифрующего оракула). Включите политику (Enabled/ Включено), а в качестве параметра в выпадающем списке выберите Vulnerable / Оставить уязвимость;
  4. Осталось обновить политики на вашем компьютере (команда gpupdate /force ) и попробовать подключится по RDP к удаленному компьютеру. При включенной политике EncryptionOracleRemediation со значением Vulnerable ваши терминальные приложения с поддержкой CredSSP смогут подключаться даже к RDS/RDP серверам и компьютерам Windows, на которых отсутствуют актуальные обновления безопасности.

  • ForceUpdatedClients — самый высокий уровень защиты, когда RDP сервер запрещает подключение не обновлённым клиентам. Обычно эту политику стоит включать после полного обновления всей инфраструктуры и интеграции актуальных обновлений безопасности в установочные образы Windows для серверов и рабочих станций;
  • Mitigated – в этом режиме блокируется исходящее удаленное RDP подключение к RDP серверам с уязвимой версией CredSSP. Однако другие службы, использующие CredSSP работаю нормально;
  • Vulnerable –самый низкий уровень зашиты, когда разрешается подключение к RDP сервера с уязвимой версией CredSSP.

Если у вас отсутствует редактор локальных GPO (например, в Home редакциях Windows), вы можете внести изменение, разрешающее RDP подключение к серверам с непропатченной версия CredSSP, напрямую в реестр с помощью команды:
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2

ключ реестра AllowEncryptionOracle

Вы можете изменить этот параметр в реестре сразу на множестве компьютеров в AD с помощью доменной GPO (консоль gpmc.msc) или таким PowerShell скриптом (список компьютеров в домене можно получить с помощью командлета Get-ADComputer из модуля RSAT-AD-PowerShell):

Import-Module ActiveDirectory
$PSs = (Get-ADComputer -Filter *).DNSHostName

Foreach ($computer in $PCs) <
Invoke-Command -ComputerName $computer -ScriptBlock <
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2
>
>

После успешного подключения к удаленному RDP серверу (компьютеру) нужно установить на нем актуальные обновления безопасности через службу Windows Update (проверьте, что служба включена) или вручную. Скачайте и установите последние кумулятивные обновления Windows как показано выше. Если при установке MSU обновления появляется ошибка “Это обновление неприменимо к вашему компьютеру”, познакомьтесь со статей по ссылке.

После установки обновлений и перезагрузки сервера, не забудьте отключить политику на клиентах (либо выставить ее на Force Updated Clients), или вернуть значение 0 для ключа реестра AllowEncryptionOracle. В этом случае, ваш компьютер не будет подвержен риску подключения к незащищенным хостам с CredSSP и эксплуатации уязвимости.

REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 0 /f

Есть еще один сценарий, когда обновления отсутствуют на вашем компьютере. Например, RDP сервер обновлен, но на нем выставлена политика, блокирующая RDP подключения с компьютеров с уязвимой версией CredSSP (Force Updated Clients). В этом случае при RDP подключении вы также увидите ошибку “This could be due to CredSSP encryption oracle remediation”.

Проверьте последнюю дату установки обновлений Windows на вашем компьютере с помощью модуля PSWindowsUpdate или через WMI команду в консоли PowerShell:

gwmi win32_quickfixengineering |sort installedon -desc

qwmi как узнать дату установки последних обновлений безопасности windows

В этом примере видно, что последние обновления безопасности Windows устанавливалось 17 июня 2018 года. Скачайте и установите более новый MSU файл с кумулятивным обновлением для вашей редакции Windows (смотрите выше).

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

Как выглядит ошибка credssp

Перед тем, как я покажу вам известные мне методы ее устранения, я бы как обычно хотел подробно описать ситуацию. Вчера при попытке подключиться к своему рабочему компьютеру, работающему на Windows 10 1709, с терминального стола, входящего в RDS ферму на Windows Server 2012 R2, я получил ошибку после ввода логина и пароля:

An authentication error has occurred. The function requested is not supported. Remote computer name. This coild be to CredSSP encryption oracle remediation.

credSSP encryption oracle remediation

Ну и конечно в русском исполнении:

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

Причиной ошибки может быть исправление шифрования CredSSP

Получается двоякая ситуация, что RDP как бы работает, но вот по какой-то причине ваши учетные данные на принимающей стороне не соответствуют, каким-то критериям, давайте разбираться, что это за зверь CredSSP.

Назначение CredSSP

Что такое CredSSP - это Win32 API, используемый системами Microsoft Windows для выполнения различных операций, связанных с безопасностью, таких как аутентификация. SSPI функционирует, как общий интерфейс для нескольких поставщиков поддержки безопасности (SSP). Поставщик поддержки безопасности - это библиотека динамической компоновки (DLL), которая делает один или несколько пакетов безопасности доступными для приложений.

C redSSP позволяет приложению делегировать учетные данные пользователя от клиента целевому серверу для удаленной аутентификации. CredSSP предоставляет зашифрованный канал протокола безопасности транспортного уровня . Клиент проходит проверку подлинности по зашифрованному каналу с использованием протокола SPNEGO (Simple and Protected Negotiate) с Microsoft Kerberos или Microsoft NTLM.

После проверки подлинности клиента и сервера клиент передает учетные данные пользователя на сервер. Учетные данные дважды шифруются с использованием ключей сеанса SPNEGO и TLS. CredSSP поддерживает вход в систему на основе пароля, а также вход в систему с использованием смарт-карт на основе X.509 и PKINIT.

Windows SSP

Следующие поставщики общих служб устанавливаются вместе с Windows:

Причины ошибки шифрования CredSSP

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

после обновления Windows

Уязвимость в протоколе Credential Security Support Provider (CredSSP — провайдер поддержки безопасности учетных данных) допускала удаленный запуск произвольного кода на уязвимой системе и 8 мая 2018 г. Microsoft изменила уровень безопасности подключения с Vulnerable на Mitigated и начались проблемы подключения к удаленному рабочему столу по RDP. Ранее вы могли удаленно подключаться с обновленной машины к машинам без обновления безопасности, так сказать в мягком режиме. Однако с последним обновлением, Microsoft усилила безопасность, и вы больше не можете подключаться к компьютерам без обновления закрывающего брешь CVE-2018–0886.

Под раздачу попали буквально все, клиентские ОС Windows 7, Windows 8.1, Windows 10 с которых были попытки подключиться к RDS ферме или RemoteApp приложениям работающим на Windows Server 2008 R2 и выше. Если бы вы читали ветки обсуждений в эти дни, то вы бы поняли все негодование людей, особенно с запада.

Варианты исправления ошибки CredSSP

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

  • Вы можете удалить новое обновление безопасности, самый плохой вариант, но в ответственные моменты, иногда используется, чтобы перенести работы на вечер или ночь
  • Если нужно быстро получить доступ к серверу и избежать проверку подлинности credssp, то я вам советую отключить на принимающем подключении сервере галку NLA (Network Level Authentication) в русском варианте "Разрешить подключение только с компьютеров, на которых работает удаленный рабочий стол с проверкой подлинности на уровне сети"
  • То же быстрый метод и на массовое применение, это использование групповой политики, которая изменит шифрование Oracle Remediation
  • Ну и самый правильный метод , это установка обновлений на все ваши системы

Отключаем credssp в Windows через NLA

Данный метод выхода из ситуации я бы рассматривал, как быстрое, временное решение, до того, как вы установите обновления безопасности. Чтобы разрешить удаленное подключение к серверу и избегать ситуации, что произошла ошибка при проверке подлинности credssp, сделайте вот что. Откройте свойства моего компьютера, попав в систему, так же можно нажать одновременно WIN+Pause Breake или как вариант в командной строке ввести control /name Microsoft.System. В окне "Система" находим пункт меню "Настройка удаленного доступа"

Отключение NLA для CredSSP

Снимите галку "Разрешить подключение только с компьютеров, на которых работает удаленный рабочий стол с проверкой подлинности на уровне сети"

Отключение NLA для CredSSP-2

После этого вы легко сможете подключиться к данному компьютеру или серверу, но как быть что вы не можете туда попасть и снять эту галку, тут нам на помощь придет реестр Windows. Вы можете удаленно создать нужные ключи реестра, которые отключат галку NLA или политику CredSSP. Для этого вы можете пойти двумя путями:

  1. Использовать сетевой реестр Windows
  2. Использовать удаленное управление компьютером, например PsExec.exe, я вам с помощью него уже показывал, как открывать порты в брандмауэре, удаленно.

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

отключить credssp через реестр Windows

Из меню "Файл" выберите пункт "Подключить сетевой реестр", далее найдите нужный вам сервер.

Подключение сетевого реестра

У вас подключится дополнительный реестр с двумя кустами. Переходите по пути (Если у вас не будет CredSSP\Parameters, то нужно будет их создать):

Тут вам необходимо создать REG_DWORD ключ с именем AllowEncryptionOracle и значением 2. В данном варианте политика CredSSP выставит Уязвимый уровень - это самый низкий уровень защиты. Это позволит вам подключаться к серверам удаленно, используя RDP. Однако это подвергнет серверы атакам.

credssp в реестре windows

Или можно так же отключить NLA, для этого найдите ветку реестра:

Найдите там ключ SecurityLayer и выставите ему значение 0, чтобы деактивировать Network Level Authentication.

Теперь то же самое вы можете выполнить и через PsExec.exe, выставив для CredSSP минимальный уровень защиты или же отключить NLA, для этого находясь в cmd в режиме администратора введите команду:

w10-cl01 - это имя компьютера.

исправление ошибки credssp windows

Далее имея запущенный сеанс cmd для удаленного компьютера, выполните команду:

REG ADD HKLM\Software\Microsoft\Windows\ CurrentVersion\Policies\System\CredSSP\Parameters\ /v AllowEncryptionOracle /t REG_DWORD /d 2 (0 вернет все как было)

rdp ошибка credssp

Аналогично можно сделать и для отключения Network Level Authentication, команда будет такой:

REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v SecurityLayer /t REG_DWORD /d 0

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

Отключаем шифрование credssp через GPO

Если у вас большая инфраструктура, в которой сотни компьютеров и сотни серверов, то вы можете до установки нужных обновлений в вечернее время, временно отключить новый уровень шифрования CredSSP и убрать ошибку "Удаленный компьютер имя. Причиной ошибки может быть исправление шифрования CredSSP". Для этого мы можем воспользоваться всеми плюсами доменной инфраструктуры Active Directory. Тут два варианта, вы можете создать массовую политику для распространения ее на нужные OU или если у вас требование для одного или двух локальных компьютеров, то на них можно запустить локальный редактор групповых политик, тем самым внеся изменения только на них.

Напоминаю, что оснастку управление групповой политикой вы можете найти на контроллере домена или компьютере с установленным пакетом RSAT, открыть ее можно через команду в окне "Выполнить" gpmc.msc. Если нужно открыть локальный редактор групповых политик, то в окне "Выполнить" введите gpedit.msc.

gpedit.msc windows 10

Вам необходимо перейти в ветку:

Конфигурация компьютера - Административные шаблоны - Система - Передача учетных данных - Исправление уязвимости шифрующего оракула (Computer Configuration - Administrative Templates - System - Credentials Delegation - Encryption Oracle Remediation

Исправление уязвимости шифрующего оракула

Открываем настройку "Исправление уязвимости шифрующего оракула (Encryption Oracle Remediation)". Включаем политику, у вас активируется опция "Уровень защиты", на выбор будет три варианта:

  • Принудительно применять обновленные клиенты (Force Updated Clients) - она будет стоять по умолчанию из-за максимального уровня защиты, вам данную опцию нужно сменить. Это так сказать максимально безопасный уровень взаимодействия клиент, он должен быть в идеале, после установки обновлений на все сервера и компьютеры.
  • Оставить уязвимость (Vulnerable) – клиенты могут подключаться на уязвимые машины.
  • Уменьшить риск (Mitigated) – клиенты не могут подключаться к уязвимым серверам, но серверы могут принимать уязвимые клиенты.

Настройка Encryption Oracle Remediation

Выбираем на время пункт "Оставить уязвимость (Vulnerable)". Сохраняем настройки.

Оставить уязвимость credSSp

После чего вам нужно обновить политику, для этого откройте командную строку и введите gpupdate /force. Если у вас не доменный компьютер, да и еще Windows 10 Home, которая не имеет встроенного локального редактора политик, то вам как я описывал выше, нужно производить правку реестра

На просторах интернета ходит скрипт PowerShell, который поможет включить данную политику на всех компьютерах в Active Directory

Import-Module ActiveDirectory
$PSs = (Get-ADComputer -Filter *).DNSHostName
Foreach ($computer in $PCs) Invoke-Command -ComputerName $computer -ScriptBlock REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2
>
>

Самый правильный метод, это установка обновлений

Раньше были вот такие KB, но они со временем могут меняться свой номер, поэтому пройдите по ссылке выше, так будет надежнее.

  • Windows Server 2012 R2 / Windows 8: KB4103715
  • Windows Server 2008 R2 / Windows 7: KB4103712
  • Windows Server 2016 / Windows 10 1607 - KB4103723
  • Windows Server 2016 / Windows 10 1703 - KB4103731
  • Windows Server 2016 / Windows 10 1709 - KB4103727
  • Windows Server 2016 / Windows 10 1803 - KB4103721

Произошла ошибка проверки подлинности. Указанная функция не поддерживается

После установки обновления KB4103718 на моем компьютере с Windows 7 я не могу удаленно подключится к серверу c Windows Server 2012 R2 через удаленный рабочий стол RDP. После того, как я указываю адрес RDP сервера в окне клиента mstsc.exe и нажимаю «Подключить», появляется ошибка:

Произошла ошибка проверки подлинности.

Указанная функция не поддерживается.

RDP Произошла ошибка проверки подлинности. Указанная функция не поддерживается

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

Ответ

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

В своей проблеме вы не одиноки. Данная ошибка может появится в любой операционной системе Windows или Windows Server (не только Windows 7). У пользователей английской версии Windows 10 при попытке подключится к RDP/RDS серверу аналогичная ошибка выглядит так:

The function requested is not supported.

Remote computer: computername

An authentication error has occurred. The function requested is not supported

Ошибка RDP “An authentication error has occurred” может появляться и при попытке запуска RemoteApp приложений.

Что можно сделать для исправления эту ошибки и подключиться к вашему RDP серверу?

  1. Самый правильный способ решения проблемы – установка последних кумулятивных обновлений безопасности Windows на компьютере / сервере, к которому вы подключаетесь по RDP;
  2. Временный способ 1 . Можно отключить проверку подлинности на уровне сети (NLA) на стороне RDP сервера (описано ниже);
  3. Временный способ 2 . Вы можете на стороне клиента разрешить подключение к RDP серверам с небезопасной версией CredSSP, как описано в статье по ссылке выше. Для этого нужно изменить ключ реестра AllowEncryptionOracle (команда REG ADD
    HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2 ) или изменить настройки локальной политики Encryption Oracle Remediation / Исправление уязвимости шифрующего оракула), установив ее значение = Vulnerable / Оставить уязвимость).

Это единственный способ доступа к удаленному серверу по RDP, если у вас отсусвует возможность локального входа на сервер (через консоль ILO, виртуальной машины, облачный интерфейс и т.д.). В этом режиме вы сможете подключиться к удаленному серверу и установить обновления безопасности, таким образом перейдете к рекомендуемому 1 способу. После обновления сервера не забудьте отключить политику или вернуть значение ключа AllowEncryptionOracle = 0 : REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 0

Отключение NLA для протокола RDP в Windows

Если на стороне RDP сервера, которому вы подключаетесь, включен NLA, это означает что для преаутентификации RDP пользователя используется CredSPP. Отключить Network Level Authentication можно в свойствах системы на вкладке Удаленный доступ (Remote), сняв галку «Разрешить подключения только с компьютеров, на которых работает удаленный рабочий стол с проверкой подлинности на уровне сети / Allow connection only from computers running Remote Desktop with Network Level Authentication (recommended)» (Windows 10 / Windows 8).

win 10 отключить nla

В Windows 7 эта опция называется по-другому. На вкладке Удаленный доступ нужно выбрать опцию «Разрешить подключения от компьютеров с любой версией удаленного рабочего стола (опасный) / Allow connections from computers running any version of Remote Desktop (less secure)».

Также можно отключить проверку подлинности на уровне сети (NLA) с помощью редактора локальной групповой политики — gpedit.msc (в Windows 10 Home редактор политик gpedit.msc можно запустить так) или с помощью консоли управления доменными политиками – GPMC.msc. Для этого перейдите в разделе Конфигурация компьютера –> Административные шаблоны –> Компоненты Windows –> Службы удаленных рабочих столов – Узел сеансов удаленных рабочих столов –> Безопасность (Computer Configuration –> Administrative Templates –> Windows Components –> Remote Desktop Services – Remote Desktop Session Host –> Security), отключите политику Требовать проверку подлинности пользователя для удаленных подключений путем проверки подлинности на уровне сети (Require user authentication for remote connections by using Network Level Authentication).

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

Также нужно в политике «Требовать использования специального уровня безопасности для удаленных подключений по протоколу RDP» (Require use of specific security layer for remote (RDP) connections) выбрать уровень безопасности (Security Layer) — RDP.

Для применения новых настроек RDP нужно обновить политики (gpupdate /force) или перезагрузить компьютер. После этого вы должны успешно подключиться к удаленному рабочему столу сервера.

Пользователь не может выполнить аутентификацию или должен выполнить ее дважды

В этой статье описаны некоторые причины проблем с аутентификацией пользователей.

Отказано в доступе (ограничение по типу входа в систему)

Подключение к удаленному рабочему столу
Системный администратор ограничил типы входа в систему (сетевой или интерактивный), которые можно использовать. Обратитесь за помощью к системному администратору или в службу технической поддержки.

Эта проблема возникает, если для подключения к удаленному рабочему столу требуется пройти проверку подлинности на уровне сети (NLA), но пользователь не является членом группы Пользователи удаленного рабочего стола. Она также может возникать, если группе Пользователи удаленного рабочего стола не назначено право пользователя Доступ к компьютеру из сети.

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

    .
  • Отключите NLA (не рекомендуется).
  • Используйте клиенты удаленного рабочего стола, отличающиеся от Windows 10. Например, в клиентах Windows 7 нет такой проблемы.

Изменение членства пользователя в группах или назначенных ему прав

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

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

  1. Откройте редактор объектов групповой политики (GPE) и подключитесь к локальной политике удаленного компьютера.
  2. Выберите Конфигурация компьютера\Конфигурация Windows\Параметры безопасности\Локальные политики\Назначение прав пользователя, щелкните правой кнопкой мыши элемент Доступ к компьютеру из сети и выберите Свойства.
  3. Просмотрите список пользователей и групп для группы Пользователи удаленного рабочего стола (или родительской группы).
  4. Если список не включает группу Пользователи удаленного рабочего стола или родительскую группу, например Все, добавьте их. Если развертывание включает больше одного компьютера, используйте объект групповой политики.
    Например, членством по умолчанию для политики Доступ к компьютеру из сети будет Все. Если в развертывании используется объект групповой политики для удаления Все, может потребоваться восстановить доступ, обновив объект групповой политики, чтобы добавить группу Пользователи удаленного рабочего стола.

Отказано в доступе (удаленный вызов к базе данных SAM отклонен)

Такое поведение обычно возникает, если контроллеры домена работают под управлением Windows Server 2016 или более поздней версии, а пользователи пытаются подключиться с помощью настраиваемого приложения для подключения. В частности, отказ в доступе получат приложения, которым требуется доступ к сведениям профиля пользователя в Active Directory.

Такое поведение обусловлено изменением в Windows. В Windows Server 2012 R2 и более ранних версиях, когда пользователь выполняет вход на удаленный рабочий стол, диспетчер удаленных подключений (RCM) обращается к контроллеру домена (DC), чтобы запросить конфигурацию, относящуюся к удаленному рабочему столу, в объекте пользователя в доменных службах Active Directory (AD DS). Эта информация отображается на вкладке "Профиль служб удаленных рабочих столов" в окне свойств объекта пользователя в оснастке MMC "Пользователи и компьютеры Active Directory".

Начиная с Windows Server 2016 RCM больше не запрашивает объект пользователя в AD DS. Если требуется, чтобы RCM обращался к AD DS из-за того, что вы используете атрибуты служб удаленных рабочих столов, вам нужно вручную разрешить отправку запросов.

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

Чтобы разрешить прежнее поведение RCM на сервере узла сеансов удаленных рабочих столов, настройте следующие записи реестра и перезапустите службу Службы удаленных рабочих столов:

  • HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ Winstation name>\
    • Имя: fQueryUserConfigFromDC.
    • Тип: Reg_DWORD
    • Значение: 1 (десятичное число).

    Чтобы разрешить устаревшее поведение RCM на сервере, отличающемся от сервера RDSH, настройте эти записи реестра и следующую дополнительную запись (затем перезапустите службу).

    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server

    Дополнительные сведения об этом поведении см. в статье базы знаний № 3200967 Changes to Remote Connection Manager in Windows Server (Внесение изменений в диспетчер удаленных подключений в Windows Server).

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

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

    Не удается войти в систему с помощью смарт-карты в филиале с контроллером домена только для чтения (RODC)

    Эта проблема связана с тем, как корневой контроллер домена и RDOC управляют шифрованием учетных данных пользователей. Корневой контроллер домена использует ключ шифрования, чтобы зашифровать учетные данные, а RODC предоставляет ключ расшифровки клиенту. Если пользователь получает ошибку "Недопустимо", значит два ключа не совпадают.

    Чтобы решить эту проблему, выполните одно из указанных ниже действий:

    • измените топологию контроллера домена, отключив кэширование паролей на RODC, или разверните на сайте филиала контроллер домена с доступом на запись;
    • переместите сервер RDSH в тот же дочерний домен, где находятся пользователи;
    • разрешите пользователям выполнять вход без смарт-карты.

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

    Пользователь не может войти на компьютер с Windows Server 2008 с пакетом обновления 2 (SP2) с помощью смарт-карты

    Чтобы устранить эту проблему, обновите на компьютере ОС Windows Server до повторного выпуска 2018.06 B (обновление KB4093227). См. статью Description of the security update for the Windows Remote Desktop Protocol (RDP) denial of service vulnerability in Windows Server 2008: April 10, 2018 (Описание обновления системы безопасности для защиты протокола RDP в Windows от уязвимости службы в Windows Server 2008 (10 апреля 2018 г.).

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

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

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

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

    Эта проблема может возникать, когда пользователь пытается подключиться к удаленному рабочему столу под управлением Windows 10 версии 1709 в развертывании, где для подключений по протоколу RDP не требуется использовать NLA. Если в таком случае удаленный рабочий стол оказался заблокированным, пользователю нужно ввести свои учетные данные дважды при подключении.

    Чтобы устранить эту проблему, обновите Windows 10 версии 1709 на соответствующем компьютере с использованием обновления за 30 августа 2018 г. — KB4343893 (ОС сборки 16299.637).

    Ошибка "Исправление шифрования CredSSP" ссылается на набор обновлений системы безопасности, выпущенный в марте, апреле и мае 2018 г. CredSSP — это поставщик проверки подлинности, который обрабатывает запросы проверки подлинности для других приложений. Обновление за 13 марта 2018 г., 3B и все последующие обновления подверглись эксплойту, когда злоумышленник мог передать учетные данные пользователя для выполнения кода в целевой системе.

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

    • Уязвимо. Клиентские приложения, использующие CredSSP, могли переключиться на небезопасные версии, но из-за этого удаленные рабочие столы могли подвергаться атакам. Службы, использующие CredSSP, принимали клиенты, которые не были обновлены.
    • Устранено. Клиентские приложения, использующие CredSSP, не могут переключиться на небезопасные версии, но службы, использующие CredSSP, принимают клиенты, которые не были обновлены.
    • Принудительно обновленные клиенты. Клиентские приложения, использующие CredSSP, не могут переключиться на небезопасные версии, и службы, использующие CredSSP, не принимают клиенты без установленных обновлений.

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

    В обновлении за 8 мая 2018 г. значение для параметра по умолчанию "Защита от атак с использованием криптографического оракула" изменилось с "Уязвимо" на "Устранено". После реализации этого изменения клиенты Удаленного рабочего стола, на которых были установлены обновления, не могут подключаться к серверам без этого обновления (или к обновленным серверам, которые еще не были перезапущены). Подробные сведения об обновлениях CredSSP см. в статье базы знаний KB4093492.

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

    • На затронутых клиентских компьютерах верните для политики "Защита от атак с использованием криптографического оракула" значение Уязвимо.
    • Измените следующие политики в папке групповой политики, выбрав Конфигурация компьютера\Административные шаблоны\Компоненты Windows\Службы удаленных рабочих столов\Узел сеансов удаленных рабочих столов\Безопасность:
      • для политики Требовать использования специального уровня безопасности для удаленных подключений по протоколу RDP задайте значение Включено и выберите RDP.
      • для политики Требовать проверку подлинности пользователя для удаленных подключений путем проверки подлинности на уровне сети задайте значение Отключено.

      Изменение этих групповых политик делает развертывание менее защищенным. Мы рекомендуем использовать их только временно (или вообще не использовать).

      Дополнительные сведения о работе с групповой политикой см. в разделе Изменение блокирующего объекта групповой политики.

      После обновления клиентских компьютеров некоторым пользователям приходится выполнять вход дважды

      Если пользователи входят на Удаленный рабочий стол с помощью компьютера под управлением Windows 7 или Windows 10 версии 1709, им сразу же отображается запрос на повторный вход. Эта проблема возникает, если на клиентском компьютере установлены следующие обновления:

      Чтобы устранить эту проблему, убедитесь, что на компьютерах, к которым подключаются пользователи, (а также серверы RDSH или RDVI) установлены все обновления в том числе за июнь 2018 г. К ним относятся следующие обновления:

      • Windows Server 2016: 12 июня 2018 г. — KB4284880 (сборка ОС 14393.2312);
      • Windows Server 2012 R2: 12 июня 2018 г. — KB4284815 (ежемесячный накопительный пакет);
      • Windows Server 2012: 12 июня 2018 г. — KB4284855 (ежемесячный накопительный пакет);
      • Приложение. 12 июня 2018 г. — KB4284826 (ежемесячный накопительный пакет);
      • Windows Server 2008 с пакетом обновления 2 (SP2): обновление KB4056564, Description of the security update for the CredSSP remote code execution vulnerability in Windows Server 2008, Windows Embedded POSReady 2009, and Windows Embedded Standard 2009: March 13, 2018 (Описание обновления системы безопасности для устранения уязвимости CredSSP, допускающей удаленное выполнение кода, в Windows Server 2008, Windows Embedded POSReady 2009 и Windows Embedded Standard 2009: 13 марта 2018 г.).

      Пользователям запрещается доступ к развертыванию, которое использует Remote Credential Guard с несколькими брокерами подключений к удаленному рабочему столу

      Эта проблема возникает в развертываниях с высоким уровнем доступности, в которых используются не менее двух брокеров подключений к удаленному рабочему столу и Remote Credential Guard в Защитнике Windows. Пользователям не удается войти на удаленные рабочие столы.

      Эта проблема связана с тем, что Remote Credential Guard использует Kerberos для проверки подлинности, а также запрещает использовать NTLM. Но в конфигурации с высоким уровнем доступности и балансировкой нагрузки брокеры подключений к удаленному рабочему столу не могут поддерживать операции Kerberos.

      Если нужно использовать конфигурации с высоким уровнем доступности и балансировкой нагрузки брокеров подключений к удаленному рабочему столу, эту проблему можно устранить, отключив Remote Credential Guard. Дополнительные сведения об управлении Remote Credential Guard в Защитнике Windows см. в статье Protect Remote Desktop credentials with Windows Defender Remote Credential Guard (Защита учетных данных удаленного рабочего стола с помощью Remote Credential Guard в Защитнике Windows).

      Ошибка RDP подключения

      Как выглядит ошибка подключения

      Не удается установить подключение-01

      Клиентский компьютер работает на операционной системе Windows 10 1709, терминальная ферма собрана из Windows Server 2012 R2, выступающих в роли хостов для подключения, в качестве посредников подключения (Connection Broker) выступают два сетевых балансировщика Kemp LoadMaster. И все как обычно, вчера работало, сегодня нет.

      Варианты устранения проблемы с подключением по RDP

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

      можно сделать вывод, что порт 3389 отвечает и его не нужно проверять с помощью Telnet. Далее алгоритм такой:

      • Первое, что нужно сделать, это проверить DNS записи, которые отвечают за резолвинг имени фермы, сделать это можно с помощью команды nslookup. Открываем командную строку или power shell и вводим там команду:

      Не удается установить подключение-02

      • Если с записями все хорошо, то нужно посмотреть логи системы на посредниках к подключению, это как раз те сервера, которые отвечают по команде nslookup, хочу отметить, что Connection Broker может и не быть, и DNS может перекидывать на членов фермы, по технологии Round robin, простым перебором, где могут быть проблемы либо с отдельной нодой, либо со всеми, об этом мы поговорим ниже. Очень часто, достаточно перезагрузить посредника, удобно если их два в HA.

      Как я и писал выше в моем случае в роли посредником по подключению выступают две сетевые железки Kemp LoadMaster. Заходим в веб интерфейс, переходим в пункт "View/Modify Services". В данном пункте будут описаны правила, которые обрабатывает Kemp LoadMaster. Вижу, что у меня есть правило TS4. В столбце Real Servers я вижу на какие сервера оно применяется. Тут логика какая, создается виртуальный интерфейс отвечающий по нужному порту, в данном случае 3389, и идет форвардин на список Real Servers по разным критериям, коих у Kemp много.

      Проверяем список Real Servers на соответствие актуальности. В моем случае выяснилось, что один из ip адресов был передан другому серверу, так как его предшественника вывели из эксплуатации, а так как на нем не было развернуто служб удаленных рабочих столов, то у меня и валилась ошибка "Не удается установить подключение, так как проверка подлинности не включена, а удаленный компьютер требует, чтобы проверка подлинности для подключения была включена".

      Не удается установить подключение-03

      Редактируем правило, через кнопку Modify. Находим в списке IP Address нужный вам сервер и выключаем/Удаляем его соответствующей кнопкой.

      Не удается установить подключение-04

      Посмотреть список шаблонов на Kemp LoadMaster можно на вкладке Manage Template, они подгружаются сюда отдельно с официального сайта

      Не удается установить подключение-07

      После этих манипуляций ошибка ушла.

      • Если у вас нет Kemp LoadMaster или нет вообще Connection Broker, то попробуйте подключиться не по DNS имени фермы, а отдельно по RDP на конечный хост (Session Host). Проверьте, что у него стоят правильные настройки проверки подлинности.

      Для этого зайдите в свойства системы, на вкладке "Удаленный доступ" проверьте наличие галки:

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

      Такая галка, запрещает старым клиентам служб удаленных рабочих столов производить подключение, актуально для Windows XP или не обновленных Windows 7, если у вас есть такие клиенты, то либо их обновите, либо снимите галку.

      Удаленный доступ настройка проверки подлинности

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

      Не удается установить подключение-06

      PS. Советую сделать на каждом сервере, что входит в состав терминальной фермы команду RSOP в командной строке, чтобы понять какие групповые политики прилетают и посмотрите, что у вас там

      Как отключить NLA (Network Level Authentication)

      Если у вас еще много не обновленных клиентов со старыми версиями RDP, то можете отключить пока NLA: Разрешить подключения только с компьютеров, на которых работает удаленный рабочий стол с проверкой подлинности на уровне сети. Либо вручную, как я показывал, выше, но правильнее это сделать централизованно.

      • На Connection Brokers
      • Через групповую политику (Конфигурация компьютера\Политики\Административные шаблоны\Компоненты Windows\Службы удаленных рабочих столов\Узел сеансов удаленных рабочих столов\Безопасность. Политика "Требовать проверку подлинности на уровне сети для удаленных подключений")
      • Через реестр Windows и политику .

      Отключение NLA

      На посреднике к подключению, зайдите в свойства коллекции и на вкладке безопасности снимите соответствующую галку.

      Если захотите воспользоваться реестром Windows, а потом раскидать ключик, через тужу политику. то вам нужна ветка HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp. В ней найдите ключ SecurityLayer и поставьте ему значение 0. Это отключит NLA (Network Level Authentication).

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

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

      Если вам известны еще какие-либо методы решения, то просьба написать о них в комментариях.

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