-
Главная
-
Инструкции
-
Windows
-
Ошибка при подключении по RDP
RDP – это протокол, предназначенный для удаленного подключения к серверу с ОС Windows. Процесс подключения по RDP довольно прост и был уже детально описан в одной из наших инструкций.
Иногда у пользователя могут возникнуть трудности при очередной попытке входа на удаленный сервер с помощью RDP. Система в момент подключения выдает ошибку и ее краткое описание. Однако для обычного пользователя информации в системном окне ошибки недостаточно, чтобы решить проблему.
В статье мы рассмотрим наиболее частые пользовательские ошибки, которые возникают при попытке входа на удаленный сервер, и опишем, как их устранить.
Ошибка №1. «Произошла внутренняя ошибка»
Во время подключения по RDP с помощью штатной утилиты Windows пользователь может получить окно с ошибкой в момент входа на сервер.
Вот ее пример:
Как видно на картинке, описание ошибки нам ничего не объясняет. Причин у нее может быть множество. Например, она может возникнуть из-за неправильной настройки подключения или настройки безопасности протокола.
Ниже рассмотрим список причин и возможных решений, которые помогли другим пользователям избавиться от ошибки.
Решение №1. Проверка работы порта
Первое, что нужно сделать – это проверить, что прослушиватель протокола RDP настроен на работу по порту 3389 как на сервере, так и на локальной машине. Для этого будем использовать системное приложение «Редактор реестра».
Перед тем, как приступать к исправлению ошибки, следует создать резервную копию реестра.
- Нажимаем сочетание кнопок WIN+R и запускаем
regedt32
, используя поле ввода. - Создаем резервную копию. Для этого в окне реестра нажимаем вкладку «Файл», а затем «Экспорт». После выбираем место, где будут храниться файлы реестра. Если после внесенных изменений возникнут какие-либо ошибки, реестр можно будет восстановить («Файл» → «Импорт»).
- Далее открываем папку «RDP-Tcp». Для этого воспользуемся поиском, как показано на рисунке ниже.
- Для продолжения поиска используем кнопку F3. Нажимать ее нужно до тех пор, пока адрес папки не совпадет с адресом на картинке ниже.
- В найденной папке ищем параметр, который называется «PortNumber». В ситуации, когда его значение не равно 3389, его следует поменять.
- Теперь нужно повторить предыдущий шаг, только для удаленного сервера.
- После проверки портов следует выполнить перезапуск служб. Подробнее — в описании решения №2.
- Выполняем повторный вход на сервер.
Решение №2. Перезапуск служб удаленных рабочих столов
Если порт прошел проверку в предыдущем решении или был настроен правильно, то переходим к перезапуску служб удаленных рабочих столов. Чтобы не перезагружать устройства, которые могут находиться в работе, воспользуемся утилитой «Управление компьютером».
- Воспользуемся сочетанием кнопок WIN+R и запускаем
compmgmt.msc
, используя поле ввода. - Далее переходим во вкладку «Службы и приложения», а затем открываем «Службы».
- Находим «Службы удаленных рабочих столов» и кликаем «Перезапустить службу», как показано на картинке ниже.
- Далее снова выполняем предыдущие 2 шага, но в этот раз для сервера. Чтобы это сделать, нужно для начала нажать правой кнопкой мыши по вкладке «Управление компьютером», а затем нажать «Подключиться к другому компьютеру».
- После успешного подключения повторяем шаги 2 и 3.
- Пробуем заново подключиться к серверу.
Решение №3. Проверка статуса протокола на сервере
Чтобы проверить статус работы протокола RDP на сервере, воспользуемся системным приложением «Редактор реестра» из Решения №1.
- Нажимаем сочетание кнопок WIN+R и запускаем
regedt32
, используя поле ввода. - Теперь выполняем подключение к сетевому реестру, как показано на картинке ниже.
- Далее переходим в 2 папки, которые называются Terminal Server и Terminal Services. Для этого воспользуемся поиском (сочетание клавиш CTRL+F).
Переключаться между найденными папками можно с помощью клавиши F3. Нажимаем ее до тех пор, пока адрес папки не совпадет с адресом на картинке ниже.
То же самое выполняем для папки Terminal Services. Ее адрес при поиске должен совпасть со следующим.
В двух найденных выше папках ищем fDenyTSConnections
. Искомый параметр может принимать два значения: либо 0, либо 1. Первое указывает на успешную работу протокола RDP. Второе предполагает, что он отключен.
- Изменяем значения параметров на 0.
- Пробуем заново выполнить вход на сервер.
Решение №4. Изменение настроек подключения
Отдельным пользователям удалось проблему благодаря корректировкам настроек подключения к удаленному серверу. Опишем ниже пошаговое решение:
- В программе «Подключение к удаленному рабочему столу» открываем дополнительные параметры подключения.
- Среди всех вкладок выбираем «Взаимодействие» и кликаем на нее.
- Далее в поле, указанном на картинке ниже, следует установить или убрать галочку, в зависимости от того, в каком состоянии оно находится сейчас.
- Теперь пробуем заново выполнить подключение.
Решение №5. Очистка кэша подключений
Кроме перечисленных выше решений, можно попробовать очистить кэш подключений. Для этого выполним следующие шаги:
- Для начала следует включить отображение скрытых папок. Для этого устанавливаем галочку в соответствующем поле, как показано на картинке ниже.
- Далее переходим в папку Cache, которая расположена по адресу
C:\Users\%Имя_пользователя%\AppData\Local\Microsoft\Terminal Server Client
, и удаляем все, что в ней находится. - Теперь заходим в системное приложение «Редактор реестра», о котором говорилось ранее, и переходим к вкладке Servers (HKEY_CURRENT_USER → Software → Microsoft → Terminal Server Client). Здесь также удаляем все записи.
- Перезагружаем компьютер и выполняем повторное подключение к удаленному серверу.
Решение №6. Увеличение лимита на количество подключений
Внутренняя ошибка подключения по RDP может быть также решена за счет увеличения параметра реестра, отвечающего за ограничение количества сетевых подключений. Данный параметр по умолчанию в сетевых версиях равен 3000, а в десктопных всего 100. Он может очень быстро забиться, вследствие чего у пользователя и возникают трудности с входом.
Для исправления проблемы следует увеличить размер параметра MaxOutstandingConnections
. Чтобы это сделать, достаточно запустить терминал (обязательно в режиме администратора) и выполнить специальную команду:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v MaxOutstandingConnections /t REG_DWORD /d 65536
Результат выполнения команды продемонстрирован на картинке ниже.
Теперь перезагружаем службы удаленных рабочих столов и пробуем заново выполнить вход на сервер.
Ошибка №2 «CredSSP: ошибка при проверке подлинности»
Ошибка проверки подлинности при подключении по RDP возникает на этапе авторизации.
Как видно по картинке выше, система указывает пользователю на возможную причину ошибки, связанную с CredSSP.
CredSSP – это протокол Windows, который служит для безопасной передачи учетных данных от локальной машину к серверу. Он защищает пользователя от DDoS-атак или несанкционированного доступа к серверу.
Ошибка проверки подлинности зачастую возникает у пользователей из-за отсутствия обновлений безопасности на пользовательском компьютере, либо на самом удаленном сервере.
Ниже подробно опишем решение ошибки CredSSP во время подключения по RDP для Windows версий Home и Professional.
Скачать обновление безопасности после удачного входа пользователя на сервер возможно с официального сайта Microsoft либо в разделе «Центр обновления Windows» в параметрах вашей системы.
Решение №1. Windows Home
Описанное ниже решение ориентировано на пользователей с ОС Windows Home.
- Для начала открываем на пользовательском компьютере терминал, запущенный от имени администратора.
- Далее вводим команду в строку терминала:
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2
Используемая команда вносит корректировки в реестр Windows, добавляя ключ, отвечающий за изменение политики безопасности CredSSP. Значение 2 устанавливает самый низкий уровень защиты.
- Перезагружаем устройство.
- Пробуем заново подключиться к серверу.
- Далее на сервере следует обязательно установить необходимые обновления безопасности.
- По завершении обновлений нужно вернуть начальные настройки безопасности, используя команду из шага №2. Только вместо 2 на конце, нужно ввести 0.
Решение №2. Windows Professional
Предложенное ниже решение подойдет тем пользователям, кто пользуется профессиональной версией Windows.
- Для начала открываем системное приложение «Редактор локальной групповой политики». Используем сочетание кнопок WIN+R и открываем
gpedit.msc
, используя поле ввода. - В открывшейся системе переходим в папку «Передача учетных данных» (Конфигурация компьютера → Административные шаблоны → Система → Передача учетных данных).
- Среди всех параметров выбранной папки ищем «Защита от атак с использованием криптографического оракула». Щелкаем по нему дважды.
- В открывшемся окне включаем использование выбранного параметра, а также устанавливаем такой же уровень защиты, как на картинке ниже.
- Перезагружаем устройство.
- Пробуем заново подключиться к серверу.
- Далее следует сразу перейти к установке всех обновлений безопасности.
- По завершении обновлений рекомендуется сразу возвратить параметр «Защита от атак с использованием криптографического оракула» в первоначальное состояние.
Заключение
Мы рассмотрели 2 популярные ошибки подключения по RDP. Это внутренняя ошибка подключения и ошибка при проверки подлинности. К каждой из ошибок мы подобрали решения, которые в большинстве случаев помогут пользователям исправить их.
Время на прочтение
3 мин
Количество просмотров 109K
Начиная с 8 мая 2018 года, после установки обновлений на свой персональный компьютер, многие пользователи виртуальных серверов под управлением ОС Windows Server столкнулись с ошибкой «CredSSP encryption oracle remediation» при попытке подключения к удалённому рабочему столу:
На самом деле это не ошибка, а уведомление о проблеме безопасности давно необновлённого сервера.
13 марта 2018 года вышла
информация об уязвимости в протоколе CredSSP
и первые патчи для ее закрытия в серверных операционных системах. Эта уязвимость позволяет в обход проверки выполнять на самом сервере от имени передаваемых учётных записей различные команды, включая установку и удаление произвольного программного обеспечения, изменение и удаление данных на сервере, создание учётных записей с произвольными правами.
С этой проблемой не столкнулись те, кто своевременно устанавливал накопительные обновления на свой сервер. В марте они вышли для серверных операционных систем, для десктопных ОС они автоматически установились с прочими обновлениями в мае.
Для решения проблемы первым делом нужно к нему все-таки подключиться. Проще всего это сделать через авариный режим работы с сервером в вашем личном кабинете – такое есть почти у кажого провайдера VPS / VDS серверов. На VPS.house это делается простым кликом на скриншот экрана сервера в личном кабинете:
Или же вы можете на время просто отключить на компьютере, с которого пытаетесь подключаться, данное блокирующее уведомление о проблеме безопасности:
Инструкция для тех, кто пользуется редакцией Windows HOME:
[развернуть]
1. Запустите на вашем компьютере (том, с которого хотите подключиться к серверу) командную строку от имени администратора
2. Наберите следующий текст в командной строке (можно скопировать и вставить):
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2
Эта команда вносит изменения в реестр Windows, разрешая вашему компьютеру подключаться с протоколом шифрования CredSSP к ещё необновлённому серверу.
Если в результате выполнения вы получили ошибку «Отказано в доступе», значит вы запустили командную строку НЕ от имени администратора (см. на скриншоте выше как запускается командная строка корректно).
Инструкция для тех, кто пользуется редакцией Windows PRO:
[развернуть]
1. Откройте редактор групповых политик, для этого в командной строке или в PowerShell наберите «gpedit.msc» или найдите его через поиск на вашем ПК по фразе «Edit group policy» или «Изменение групповой политики» если вы работаете в русскоязычном интерфейсе.
Если после выполнения этой команды вы получили ошибку о том, что команда не найдена или не является внутренней или внешней командой, значит у вас Windows не версии PRO, а скорее всего HOME и вам нужно смотреть инструкцию выше.
2. В папках настроек дерева слева вам необходимо открыть:
Computer Configuration -> Administrative Templates -> System -> Credentials Delegation
если ваша ОС русифицирована, то:
Конфигурация компьютера -> Административные шаблоны -> Система -> Передача учетных данных
3. В папке «Credentials Delegation» («Передача учетных данных») найдите параметр «Encryption Oracle Remediation» («Исправление уязвимости шифрующего оракула»), откройте его, включите его использование, выбрав «Enabled» («Включено») и установите значение параметра в выпадающем списке на «Vulnerable» («Оставить уязвимость»)
После выполнения этих действий на вашем ПК, вы сможете подключаться к серверу также, как и раньше, но это не решение проблемы безопасности.
Как только вы подключились к серверу, установите обновления как это делается в любой десктопной версии Windows.
Если при попытке установки возникает ошибка, поверьте запущена ли служба «Windows Update» («Центр обновления Windows»). Открыть список служб можно по пути:
Start -> Windows Administrative Tools -> Services
если ваша ОС русифицирована, то:
Пуск -> Средства администрирования Windows -> Службы
Если служба не запускается, проверьте, разрешен ли ее запуск: статус не должен быть «Disabled» («Отключена»).
Если вы используете Windows Server 2012 R2 или Windows Server 2008 R2 SP1, то вы можете установить не все обновления, а только одно, исправляющее эту уязвимость и тем самым значительно быстрее решить проблему подключения к серверу.
Скачать его можно прямо с сайта Microsoft на
странице описания уязвимости
:
• обновление для
Windows Server 2012 R2
• обновление для
Windows Server 2008 R2 SP1
Если, прочитав всё описанное выше, вам так и не удалось понять, что нужно сделать или если ничего не получилось, вы всегда можете пересоздать сервер в личном кабинете – эта функция также есть у любого провайдера облачных услуг. Она существует для получения сервера чистого, как будто вы только что его заказали, он будет пустым, все ваши данных будут потеряны! Прибегаете к ней только в крайней необходимости и в случае если на вашем сервере не хранится и не работает ничего важного или требующего долгой последующей настройки.
Все образы операционных систем Windows Server на VPS.house по умолчанию содержат все последние обновления и после пересоздания сервера проблем с ошибкой «CredSSP encryption oracle remediation» при подключении к нему уже не будет.
Вопрос:
При подключении к удаленному сеансу, после ввода логина и пароля, возникает ошибка CredSSP. «Произошла ошибка при проверке подлинности. Указанная функция не поддерживается. Удаленный компьютер имя. Причиной ошибки может быть исправление шифрования CredSSP». Что делать?
Ответ:
Эта ошибка возникает из-за не корректной работы протокола CredSSP. Причиной такой работы является использование не обновленной операционной системы на стороне сервера или клиента. Существует несколько способов исправления этой проблемы.
1 способ: Самый правильный.
- Обновите ваши операционные системы как на стороне сервера, так и на стороне клиента до актуальных. Это решит проблему шифрования и обеспечит максимально безопасный доступ к сеансам удаленного рабочего стола.
2 способ: Не правильный, но как временное решение — вполне рабочий
- Вы можете удалить новое обновление безопасности, самый плохой вариант, но в ответственные моменты, иногда используется, чтобы перенести работы на вечер или ночь
3 способ: Отключение NLA (Network Level Authentication). не безопасно, но рабочий
- Если нужно быстро получить доступ к серверу и избежать проверку подлинности credssp, то я вам советую отключить на принимающем подключении сервере галку NLA (Network Level Authentication) в русском варианте «Разрешить подключение только с компьютеров, на которых работает удаленный рабочий стол с проверкой подлинности на уровне сети» или внести соответствующие изменения в реестре на стороне сервера.
Для этого запустите редактор реестра regedit.
Откройте ветку:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ Terminal Server\WinStations\RDP-Tcp
Найдите там ключ SecurityLayer и выставите ему значение 0, чтобы деактивировать Network Level Authentication.
- Remove From My Forums
-
Вопрос
-
Добрый день.
Подскажите кто знает как бороться с ошибкой подкл по RDP:
Произошла ошибка при проверке подлинности.
…
Причиной ошибки может быть защита от атак с использованием криптограф. оракула CredSSP.
Все рекомендации по этому поводу я сделал, с помощью групповых политик и редактора реестра включил функцию «Оставить уязвимость» этого оракула.
-
Устранена проблема, которая может вызвать ошибку при подключении к серверу удаленного рабочего стола. Дополнительные сведения см. в разделе обновления
CredSSP для CVE 2018-0886.
Но ничерта это не помогает! Уязвимость включена на всех ПК!!!
Что делать как решить эту проблему??
Понятно что если откл галку «Разрешите подкл только с компьютеров, на которых работает удалённый раб стол с проверкой подлинности
на уровне сети» то к серваку можно будет подкл, но это не вариант, нужно сделать чтоб работало с ней как и раньше! -
Ответы
-
Вопрос решён! Можно закрывать!
Проблема была в настройках групповых политик связанных с NTLM.
После того как я решил полностью откл NTLM эта ошибка и стала появляться, но стоило мне вернуть всё как было, как проблемы больше не стало.
-
Помечено в качестве ответа
10 января 2022 г. 6:58
-
Помечено в качестве ответа
Введение
Очередное обновление windwos 10 не обходится без сюрпризов, жаль что большая их часть связана вызывает различного рода неполадки и сбои в системе. В обновлении от 8 мая 2018 года была устранена критическая уязвимость в системе безопасности подключения к удалённым рабочим столам RDP.
Протокол поставщик поддержки безопасности учетных данных (CredSSP) — это поставщик проверки подлинности, который обрабатывает запросы на проверку подлинности для других приложений. Существует уязвимость удаленного выполнения кода в Неисправленные версии CredSSP. Злоумышленник, успешно воспользовавшийся данной уязвимостью, передает учетные данные пользователя для выполнения кода в целевой системе. Любое приложение, которое зависит от CredSSP для проверки подлинности может быть уязвимо для атаки этого типа.
И вы тут потому что, скорее всего, получили ошибку протокола CredSSP:
An authentication error has occurred.
The function is not supported.
This could be due to CredSSP encryption oracle remediation.
Пункт 1: Причины возникновения ошибки CreedSSP
Возникновение ошибки CredSSP связано с тем, что на терминальном Windows сервере, на который идёт подключение, не установлены последние обновления безопасности (CredSSP обновления для CVE-2018-0886). После обновления система по умолчанию запрещает подключаться к удалённым серверам по RDP со старой версией протокола CredSSP.
Ошибка подключения по 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)
Пункт 2: Способы решения проблем CredSSP с подключением по RDP
Для решения данной ошибки c протоколом CredSSP необходимо убрать всплывающее уведомление, которое блокирует соединение. Но это только временное решение, правильней всего будет установить необходимые обновления на терминальные сервера, к которым вы пытаетесь подключиться.
Так же читайте мою статью о том как из Windows 10 сделать терминальный сервер.
Необходимые обновления
- Windows Server 2012 R2 / Windows 8: KB4103715
- Windows Server 2008 R2 / Windows 7: KB4103712
- Windows Server 2016 / Windows 10 1607: KB4103723
Но прежде чем установить обновления на сервер, скорее всего, вам ещё нужно будет к нему подключиться. А досадная ошибка этого делать не даёт. Так как обойти протокл CredSSP?
При помощи редактирования локальных групповых политик системы!
- Через окно «Выполнить» (Win + R)
- Откройте редактор групповых политик: gpedit.msc
- Идём в раздел Computer Configuration / Administrative Templates / System / Credentials Delega (Конфигурация компьютера / Административные шаблоны / Система / Передача учетных данных)
- Включите политику Encryption Oracle Remediation (Исправление уязвимости шифрующего оракула)
- В параметрах ставим Enabled (Включено)
- Открываем окно «Выполнить» (Win + R)
- Обновляем политики на компьютере: gpupdate /force
Однако в таких редакциях как Windows Home редактора груповых политик GPO просто нет. В этом случае, для решение ошибки CredSSP Encryption Oracle Remediation, необходимо внести изменение прямо в реестр.
Одной командой через «Выполнить»
Включение команду, чтобы разрешить подключаться к рабочему столу не обращая внимания на версию протокола CredSSP:
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2
Не забудьте отключить фичу после обновления терминального сервера:
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 0
Запустив .reg файл
Содержимое .reg файла следующее:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters] "AllowEncryptionOracle"=dword:00000002
Надеюсь смог помоч с возникшей проблемой работы протокола CredSSP при подключении к удалённому рабочему столу. 😀