Зіткнувся з дивною сполученням "Внутрішня помилка
/ An internal error has occurred
"При RDP підключенні до недавно розгорнутому сервера RDSH на Windows Server 2012 R2 з Windows 10. Буквально вчора RDP підключення до сервера працювало нормально, але після установки і настройки RemotApp додатків і перезавантаження сервера, я не можу віддалено підключитися до його робочого столу. Служба Remote Desktop Services судячи з усього працює, так як пароль користувача при підключенні запитується.
Як я зрозумів, повідомлення RDP консолі "внутрішня помилка" може з'являтися в різних випадках і мати абсолютно різні причини, пов'язані як з сервером Remote Desktop, так і з клієнтом. У цій статті я постарався зібрати всі варіанти рішення і сценарій, який допоміг мені.
В першу чергу, переконайтеся, що на RDS сервері доступний RDP порт 3389, і підключення не блокується файерволом (Test-NetConnection rdsserver -port 3389).Вивчивши логи RDP підключень на віддаленому RDS сервері, я не побачив ніяких особливих помилок. У журналі Microsoft-Windows-RemoteDesktopServices-RdpCoreTS / Operational видно, що RDP сесія створюється:
The server accepted a new TCP connection from client 10.10.1.60:64379.
Connection RDP-Tcp # 3 created
Але потім без будь-якої помилки RDP сеанс завершується:
The server has terminated main RDP connection with the client.
The disconnect reason is 0
Перевірте стан службу Remote Desktop Services на віддаленому сервері і перезапустіть її. Ви можете віддалено перезапустити службу через консоль Services.msc (Connect to another computer), але набагато простіше перевірити стан служби та перезапустити її через PowerShell:
(Get-Service TermService -ComputerName msk-ts1) .status
Служба запущено (Running), перезапустити її:
Get-Service TermService -ComputerName msk-ts1 | Restart-Service -force -verbose
Але проблему це не вирішило.
Які ще варіанти вирішення проблеми мені вдалося знайти в мережі:
- Якщо у вас на віддаленому сервері встановлений КріптоПро, він може бути джерелом проблем з rdp підключенням. Спробуйте відключити перевірку контрольних цілісності файлів (перевірки контрольних сум) в КріптоПро через реєстр. Перейдіть в гілку реєстру
HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ CProIntegrity
і змініть значення параметра CheckMode на 0. перезавантажте сервер. - Якщо в журналі подій TerminalServices-RemoteConnectionManager ви зустрінете подія з EventID 1057 (The RD Session Host Server has failed to create a new self signed certificate to be used for RD Session Host Server authentication on SSL connections), Перейдіть в каталог
C: \ ProgramData \ Microsoft \ Crypto \ RSA
, перейменуйте папку Machinekeys в Machinekeys_bak і перезапустіть службу TermService. - Також знайшов інформацію, що RDP проблема "внутрішня помилка" зустрічалася в Windows 10 1809 якщо на віддаленому комп'ютері включена політика Configure H.264 / AVC hardware encoding for Remote Desktop connections (Знаходиться в секції GPO: Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Remote Session Environment). Для вирішення цієї проблеми досить відключити UDP протокол для RDP, створивши в гілці реєстру
HKLM \ SOFTWARE \ Policies \ Microsoft \ Windows NT \ Terminal Services \ Client
параметрfClientDisableUDP
зі значенням 1.
Жоден з розглянутих вище сценаріїв ні застосуємо в моєму випадку. Я абсолютно випадково виявив, що з інших комп'ютерів немає проблем з підключенням до цього RDS сервера. Значить проблема тільки з моїм комп'ютером, а не з сервером.
Я очистив історію RDP підключень в гілці HKEY_CURRENT_USER \ Software \ Microsoft \ Terminal Server Client \ Servers
і скинув кеш RDP в каталозі C: \ Users \% Username% \ AppData \ Local \ Microsoft \ Terminal Server Client \ Cache
(Перед видаленням закрийте всі запущені сеанси mstsc.exe):
del "C: \ Users \% Username% \ AppData \ Local \ Microsoft \ Terminal Server Client \ cache"
Після цього перезавантажив свій комп'ютер, і помилка RDP підключення зникла!