- Remove From My Forums
-
General discussion
-
Hi,
We have a Server 2016 with Remote Desktop Services enable but we can’t connect to it anymore (it worked before).
We tried a lot of things already but not solved it yet. It seems the RDS isn’t accepting connections on port 3389.
— telnet to it on port 3389 not working
— ping does work
— verified the port setting in registry
— rebooted the server
— added a separate rule to allow 3389 always
— netstat -an doesn’t show an listening port on 3389
Someone an idea?
Kr Kevin
-
Edited by
Wednesday, April 25, 2018 9:54 AM
-
Changed type
Quasten
Thursday, July 18, 2019 3:00 PM
I can’t check anymore because i’m not working for that company anymore. It was not a ping issue as the last repy suggested anyhow
-
Edited by
- Remove From My Forums
-
General discussion
-
Hi,
We have a Server 2016 with Remote Desktop Services enable but we can’t connect to it anymore (it worked before).
We tried a lot of things already but not solved it yet. It seems the RDS isn’t accepting connections on port 3389.
— telnet to it on port 3389 not working
— ping does work
— verified the port setting in registry
— rebooted the server
— added a separate rule to allow 3389 always
— netstat -an doesn’t show an listening port on 3389
Someone an idea?
Kr Kevin
-
Edited by
Wednesday, April 25, 2018 9:54 AM
-
Changed type
Quasten
Thursday, July 18, 2019 3:00 PM
I can’t check anymore because i’m not working for that company anymore. It was not a ping issue as the last repy suggested anyhow
-
Edited by
- Remove From My Forums
-
General discussion
-
Hi,
We have a Server 2016 with Remote Desktop Services enable but we can’t connect to it anymore (it worked before).
We tried a lot of things already but not solved it yet. It seems the RDS isn’t accepting connections on port 3389.
— telnet to it on port 3389 not working
— ping does work
— verified the port setting in registry
— rebooted the server
— added a separate rule to allow 3389 always
— netstat -an doesn’t show an listening port on 3389
Someone an idea?
Kr Kevin
-
Edited by
Wednesday, April 25, 2018 9:54 AM
-
Changed type
Quasten
Thursday, July 18, 2019 3:00 PM
I can’t check anymore because i’m not working for that company anymore. It was not a ping issue as the last repy suggested anyhow
-
Edited by
Обновлено 08.12.2022
Добрый день! Уважаемые читатели и гости, IT блога Pyatilistnik.org. В прошлый раз мы с вами поговорили, про отложенный запуск служб в Windows, сегодня я хочу вам показать еще один не приятный момент в работе терминальных служб удаленного рабочего стола, а именно ошибка подключения «Произошла внутренняя ошибка«, после чего подключение разрывается. Такое я встречал уже в Windows Server 2012 R2 и 2016. Давайте разбираться в чем дело.
Описание проблемы
Есть сервер с операционной системой Windows Server 2012 R2, сотрудник пытается к нему подключиться, через классическую утилиту «Подключение к удаленному рабочему столу», в момент авторизации, выскакивает окно с ошибкой «Произошла внутренняя ошибка».
В английском варианте ошибка звучит вот так:
An internal error has occurred
После этого у вас разрывается соединение. Когда мы видели моргающий экран по RDP, там хотя бы вы попадали на сервер и могли открыть диспетчер устройств, тут сразу все обрубается на корню. Давайте смотреть, что можно сделать.
🆘 Что есть в логах?
Если посмотреть журналы событий на удаленном сервере, куда вы пытаетесь подключиться, то там порядок событий будет такой:
События нужно искать в журнале Microsoft-Windows-RemoteDesktopServices-RdpCoreTS/Operational
- 1️⃣ Первым будет идти событие ID 131 «The server accepted a new TCP connection from client IP-адрес:60050.». Тут вы увидите IP-адрес с которого идет попытка входа.
- 2️⃣ Далее событие ID 65 «Connection RDP-Tcp#11 created «.
- 3️⃣ Затем событие 141 «PerfCounter session started with instance ID 11». Тут сессии будет назначен ID.
- 4️⃣ За ним будет идти ID 142 «TCP socket READ operation failed, error 1236».
- 5️⃣ Потом вы увидите ID 72 «Interface method called: OnDisconnected»
- 6️⃣ И же после этого вам покажут, что сервер разорвал подключение: «ID 102 The server has terminated main RDP connection with the client.»
- 7️⃣ В событии ID 145 так же появляются подробности «During this connection, server has not sent data or graphics update for 0 seconds (Idle1: 0, Idle2: 0).».
- 8️⃣ Могут быть события с ID 148 «Channel rdpinpt has been closed between the server and the client on transport tunnel: 0.» или «Channel rdpcmd has been closed between the server and the client on transport tunnel: 0.» или «Channel rdplic has been closed between the server and the client on transport tunnel: 0.»
- 9️⃣ Ну и вишенка на торте, ошибка ID 227 «‘Failed to get property Disconnect Reason’ in CUMRDPConnection::Close at 2212 err=[0x80070057]»
Исправляем ошибку «Произошла внутренняя ошибка»
Так как по RDP подключиться не получается, то первым делом нужно проверить отвечает ли порт, по умолчанию это 3389. О том, как проверить порт на удаленном сервере я вам описывал, там все сводилось к выполнению команды Telnet, ознакомьтесь. Если порт отвечает, то делаем следующее.
Нужно удаленно перезапустить службу на этом сервере, чтобы сам сервер не перезагружать, так как в этот момент, он может выполнять важные задачи, можно использовать утилиту «Управление компьютером». Открыть ее можно через команду вызова оснастки, вызываем окно «Выполнить», через одновременное нажатие клавиш WIN и R, в котором пишем:
В открывшейся оснастке, щелкните в самом верху по пункту «Управление компьютером» правым кликом мыши, и выберите пункт «Подключиться к удаленному компьютеру».
Выберите пункт «Другим компьютером» и укажите его DNS имя, или найдите его через кнопку обзор.
Когда вы подключитесь к нужному серверу, перейдите в пункт «Службы и приложения — Службы», в списке сервисов найдите службу удаленных рабочих столов (Remote Desktop Services), и перезапускаем ее. После этого ошибка подключения по RDP «Произошла внутренняя ошибка», у вас должна пропасть.
Так же вы можете использовать оболочку PowerShell запущенную от имени пользователя, у которого есть права на удаленный сервер, где будет перезапускаться служба RDP. Выполните:
Get-Service TermService -ComputerName Имя сервера | Restart-Service –force –verbose
Дополнительные методы решения
Если вам не помог первый метод, перезапускающий службу удаленных рабочих столов, то можно попробовать выполнить правку реестра. Открываете редактор реестра Windows, если у вас физического доступа к серверу нет или он далеко и вам лень до него идти, то можно попробовать подключиться к реестру удаленного сервера.
Для этого в окне «Редактор реестра» пункт меню «Файл — Подключить сетевой реестр».
В открывшемся окне «Выбор компьютера» указываем его DNS-имя или ip-адрес и нажимаем ок. У вас будет установлено подключение к удаленному реестру сервера, что испытывает проблемы.
Находим ключ CheckMode по пути
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl Session ManagerCProIntegrityCheckMode
Перед любыми правками реестра, обязательно сделайте выгрузку нужной ветки, чтобы можно было восстановить все в оперативном режиме
Выставляем ему значение о, чтобы отключить у программы КриптоПРО CSP проверку контрольных сумм. Еще один важный момент, если у вас старая версия КриптоПРО, то это так же может быть источником, проблем, недавний пример, это ошибка «Windows installer service could not be accessed». Для этого удаляем правильно КриптоПРО CSP и ставим последнюю доступную версию.
Еще можно попробовать изменить значение вот такого ключа реестра:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl Session ManagerMemory ManagementSessionImageSize
Найдите ключ SessionImageSize и задайте ему значение 0x00000020.
Дополнительные настройки RDP клиента
Например ошибка «An internal error has occurred» у меня встретилась на Windows Server 2022 и там мне помогло в настройках клиента RDP отключение некой опции. Перейдите в дополнительные настройки клиента для удаленного подключения, где н вкладке «Experiens (Взаимодействие)» вам нужно убрать галку с опции «Восстановить подключение при разрыве (Reconnect if the connection is droped)«
На каких-то сайтах предлагалось именно активировать данный пункт.
Удаление кэша подключений
Еще одним методом решения внутренней ошибки подключения по RDP может выступать поврежденный кэш, который хранится на локальном компьютере пользователя. Для его отображения вам необходимо включить отображение скрытых папок и удалить содержимое папки:
C:Usersимя пользователяAppDataLocalMicrosoftTerminal Server Client
Обновление 07.12.2022
В декабре я вновь столкнулся с внутренней ошибкой, она еще стала проявлять себя вот так:
Не удается подключиться к удаленному компьютеру
Произошла внутренняя ошибка. Код ошибки: 0x4. Расширенный код ошибки: 0x0
В логах сервера очень много ошибок:
Она возникает, при каждой попытке войти на рабочий стол, это и есть проблема в моем конкретном случае. Устраните ее, и ошибка с подключекнием уйдет. Перезагрузка не нужна.
Данная ошибка говорит, что на тот сертификат, что использует удаленный сервер, нет прав у самого сервера, подробности выше по ссылке
На клиентской машине откуда я пытался произвести подключение было три события:
ID 1024: Выполняется подключение RDP ClientActiveX к серверу (ter104)
ID 1105: Мультитранспортное подключение разорвано.
ID 1028: Отключение RDP ClientActiveX (Причина= 2308)
Код 2808 — Ваш сеанс служб удаленных рабочих столов завершен. Соединение с удаленным компьютером было потеряно, возможно, из-за проблем с сетевым подключением. Попробуйте снова подключиться к удаленному компьютеру. Если проблема не исчезнет, обратитесь к сетевому администратору или в службу технической поддержки.
Так как у меня это была виртуальная машина, то я смог легко подключиться через консоль. В случае с ошибкой «Отключение RDP ClientActiveX (Причина= 2308)«, я отключил на сервере и клиенте autotuninglevel:
netsh interface tcp set global autotuninglevel=disabled
Не забываем перезагрузиться.
Это не помогло, далее я выполнил еще несколько рекомендаций. Я установил на сервер валидный SSL сертификат для RDP сессии. В ошибке 0x907, RDP соединение разрывалось, так как клиентская система не доверяла самоподписному сертификату удаленного сервера. Это нужно поправить, ссылку я указал, обязательно проверьте, кто сейчас выступает в роли активного:
Get-WmiObject «Win32_TSGeneralSetting» -Namespace rootcimv2terminalservices -Filter «TerminalName=’RDP-tcp'»
Еще я создал параметр реестра MaxOutstandingConnections. В Windows по умолчанию есть ограничения на количество сетевых подключений, так например в серверной версии, это параметр равен 3000, в десктопной 100. Из-за нестабильной сети, они могут быстро забиваться. Одно из решений проблемы с внутренней ошибкой подключения, является увеличение этого значения. В командной строке в режиме администратора выполните:
REG ADD «HKLMSYSTEMCurrentControlSetControlTerminal Server» /v MaxOutstandingConnections /t REG_DWORD /d 65536
New-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetControlTerminal Server»
-Name MaxOutstandingConnections -Value 10000 -PropertyType DWORD -Force
После этого нужно перезагрузиться.
Временное решение
Пока вы не уберете ошибку «Код ошибки, возвращенный модулем шифрования: ошибка 0x8009030D», описанную выше, вы можете понизить уровень безопасности вот такими манипуляциями, это устранит «An internal error has occurred».
На обычном сервере все это помогло, а вот на ноде RDSH ошибка оставалась. Тут я решил проверить догадку с уровнем безопасности «Configure security settings». На моей ферме был уровень «Согласования (Negotiate)«
Я пошел на сервер, где были проблемы подключения и решил проверить один параметр локальной политики gpedit.msc.
Конфигурация компьютера — Административные шаблоны- Компоненты Windows — Службы удаленных рабочих столов — Узел сеансов удаленных рабочих столов — Безопасность — Требовать использование специального уровня безопасности для удаленных подключений по протоколу RDP
Тут попробуйте выставить уровень RDP. В результате у меня после этих настроек все заработало. Теперь нужно понять, что изменилось. В настройках RDS фермы указано, что мы используем уровень согласование:
* Согласование: метод согласования принудительно применяет самый безопасный метод, поддерживаемый клиентом. Если поддерживается протокол TLS версии 1.0, то он используется для проверки подлинности сервера узла сеансов удаленных рабочих столов. Если протокол TLS не поддерживается, то для обеспечения безопасности взаимодействий используется собственное шифрование протокола удаленного рабочего стола (RDP), но проверка подлинности сервера узла сеансов удаленных рабочих столов не выполняется. В отличие от SSL-шифрования, использовать собственное шифрование RDP не рекомендуется.
Если и это вам не помогло, то нужно смотреть вариант в сторону обновления или переустановки драйверов на сетевую карту, тут вы определяете модель вашей карты или материнской платы, если в нее все интегрировано и обновляете. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.
Дополнительные ссылки
- https://serverfault.com/questions/934026/windows-10-pro-rdp-server-an-internal-error-has-occurred
- https://social.technet.microsoft.com/Forums/en-US/e1d60cc0-0096-4859-a0e7-eb7f11905737/remote-desktop-v10-error-0x4-from-mac?forum=winRDc
- https://learn.microsoft.com/en-us/answers/questions/108219/can-not-rdp-to-2012-r2-standard-server-after-septe.html
- https://serverfault.com/questions/541364/how-to-fix-rdp-on-windows-server-2012
58 / 57 / 47 Регистрация: 31.10.2016 Сообщений: 182 |
|
1 |
|
15.05.2019, 11:56. Показов 9860. Ответов 1
Доброго! Прямого доступа (через кливиатуру и монитор) к этой виртуалке нет, чтобы удалить последнее обновление (видимо само поставилось вчера) или изменить настройки RDP на самом сервере. При попытке подключиться (пробовал на Win10 и 7) вылазит ошибка (см. скрин). Пробовал вот это: И вот это: Миниатюры
__________________
0 |
58 / 57 / 47 Регистрация: 31.10.2016 Сообщений: 182 |
|
15.05.2019, 18:21 [ТС] |
2 |
upd: Компьютер, к которому пытаюсь подключиться, есть в сети, общие папки открываются, логин/пароль админа есть. Может есть возможность без RDP удаленно открыть параметры удаленного доступа? Добавлено через 11 минут На машинах с Win10 и Win7 установил последние обновления, тоже не помогло Добавлено через 5 часов 46 минут
0 |
В последнее время всё чаще у пользователей Windows 7 возникает ошибка при подключении к удаленному рабочему столу на Windows Server 20162019 через шлюз удаленных рабочих столов.
Ошибка следующая — “Не удалось подключиться к удаленному компьютеру, так как сервер шлюза удаленных рабочих столов временно недоступен. Попробуйте подключиться позже или обратитесь за помощью к администратору сети.”
Рисунок 1 — Ошибка подключения к серверу
Данная ошибка происходит из-за того что “Подключение к удаленному рабочему столу (mstsc.exe)” не поддерживает протокол удаленного рабочего стола 8.1.
Рисунок 2 — Старая версия утилиты ms
Причина — не стоят обновления на Windows 7. В этом случае можно установить все обновления на Windows 7 через центр обновления Windows.
Рисунок 3 — Центр обновления Windows
Второй способ — установить требуемые обновления вручную.
Обновления нужно ставить в зависимости от разрядности ОС Windows 7 (32 или 64-битной).
Обновления устанавливаются в следующем порядке:
- Windows6.1 — KB2574819-v2
- Windows6.1 — KB2830477
- Windows6.1 — KB2857650
- Windows6.1 — KB2913751
Компьютер перезагрузится один раз.
После обновления мы получаем “Подключение к удаленному рабочему столу (mstsc.exe)” версии 6.3.9600 с возможностью подключаться к Windows Server 20162019:
Рисунок 4 — Версия после обновления
Требуется помощь? Напишите в наш чат!