Remote Desktop – миграция на Windows Server 2019


  1. В документации как-то двусмысленно написано про обновление брокеров в конфигурации active-active: в одном месте – исключите из развертывания все брокеры кроме одного, в другом – обновляйте офлайн. Обновили так: у одного выключили сеть и обновили офлайн (включили только после завершения обновления второго брокера), второго обновили онлайн (с подключенной сетью) – никаких манипуляций с конфигурацией развертывания не делали.
  2. После обновления выяснилоcь, что сервис Remote Desktop сыпется и перезапускается со страшной скоростью. Это какая-то бага. Проблема провоцируется подключением к серверу брокера по RDP. Обходной путь: запретить через GPO протокол UPD в Remote Desktop Host на брокерах. После этого сервис перестал падать при подключении с Windows 10 (хотя вроде падает при подключении с Windows 7). Проблема отслеживается на форуме Technet.

Полезные ссылки (для 2016, но актуальны):

  1. https://blogs.technet.microsoft.com/tip_of_the_day/2017/01/30/rds-tip-of-the-day-upgrading-your-remote-desktop-services-deployments-to-windows-server-2016/
  2. https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/upgrade-to-rds

PS:

Ошибка падения сервиса:

Log Name:      Application
Source:        Application Error
Date:          04.02.2019 9:48:10
Event ID:      1000
Task Category: (100)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      rdcb1.bis.bashtel.ru
Description:
Faulting application name: svchost.exe_TermService, version: 10.0.17763.1, time stamp: 0xb900eeff
Faulting module name: ntdll.dll, version: 10.0.17763.1, time stamp: 0xa369e897
Exception code: 0xc0000374
Fault offset: 0x00000000000fb349
Faulting process id: 0x1a64
Faulting application start time: 0x01d4bc421689ed0b
Faulting application path: C:\WINDOWS\System32\svchost.exe
Faulting module path: C:\WINDOWS\SYSTEM32\ntdll.dll
Report Id: 3dd20b15-d2e1-48b5-ab57-cf1cb821eb1b
Faulting package full name: 
Faulting package-relative application ID: 
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Application Error" />
    <EventID Qualifiers="0">1000</EventID>
    <Level>2</Level>
    <Task>100</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2019-02-04T04:48:10.524513800Z" />
    <EventRecordID>3268</EventRecordID>
    <Channel>Application</Channel>
    <Computer>rdcb1.bis.bashtel.ru</Computer>
    <Security />
  </System>
  <EventData>
    <Data>svchost.exe_TermService</Data>
    <Data>10.0.17763.1</Data>
    <Data>b900eeff</Data>
    <Data>ntdll.dll</Data>
    <Data>10.0.17763.1</Data>
    <Data>a369e897</Data>
    <Data>c0000374</Data>
    <Data>00000000000fb349</Data>
    <Data>1a64</Data>
    <Data>01d4bc421689ed0b</Data>
    <Data>C:\WINDOWS\System32\svchost.exe</Data>
    <Data>C:\WINDOWS\SYSTEM32\ntdll.dll</Data>
    <Data>3dd20b15-d2e1-48b5-ab57-cf1cb821eb1b</Data>
    <Data>
    </Data>
    <Data>
    </Data>
  </EventData>
</Event>

Log Name:      Application
Source:        Application Error
Date:          04.02.2019 9:21:40
Event ID:      1000
Task Category: (100)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      rdcb1.bis.bashtel.ru
Description:
Faulting application name: svchost.exe_TermService, version: 10.0.17763.1, time stamp: 0xb900eeff
Faulting module name: RDPBASE.dll, version: 10.0.17763.1, time stamp: 0x2e058d64
Exception code: 0xc0000005
Fault offset: 0x00000000000de496
Faulting process id: 0xf04
Faulting application start time: 0x01d4bc40fa908148
Faulting application path: C:\WINDOWS\System32\svchost.exe
Faulting module path: C:\WINDOWS\system32\RDPBASE.dll
Report Id: 045e21ce-373b-402e-bad2-aca8a3af462d
Faulting package full name: 
Faulting package-relative application ID: 
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Application Error" />
    <EventID Qualifiers="0">1000</EventID>
    <Level>2</Level>
    <Task>100</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2019-02-04T04:21:40.086665100Z" />
    <EventRecordID>2864</EventRecordID>
    <Channel>Application</Channel>
    <Computer>rdcb1.bis.bashtel.ru</Computer>
    <Security />
  </System>
  <EventData>
    <Data>svchost.exe_TermService</Data>
    <Data>10.0.17763.1</Data>
    <Data>b900eeff</Data>
    <Data>RDPBASE.dll</Data>
    <Data>10.0.17763.1</Data>
    <Data>2e058d64</Data>
    <Data>c0000005</Data>
    <Data>00000000000de496</Data>
    <Data>f04</Data>
    <Data>01d4bc40fa908148</Data>
    <Data>C:\WINDOWS\System32\svchost.exe</Data>
    <Data>C:\WINDOWS\system32\RDPBASE.dll</Data>
    <Data>045e21ce-373b-402e-bad2-aca8a3af462d</Data>
    <Data>
    </Data>
    <Data>
    </Data>
  </EventData>
</Event>
Реклама

Built-in OverUsed и остальное про лиценции Remote Desktop


Описано подробно в статье.

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

Remote Desktop — медленное подключение


В Windows Server 2012 и Windows Server 2012 R2 есть небольшая, но неприятная, проблема, когда при подключении по RDP вы видите черный экран некоторое время, а в логе появляется событие Event ID 20499 «Remote Desktop Services has taken too long to load the user configuration from server …».

Лечение описано в статье https://support.microsoft.com/en-us/help/4021856/sbsl-issue-when-you-create-an-rdp-connection-to-windows-server . Собственно нужно добавить в реестр ключ fQueryUserConfigFromLocalMachine со значением 1.

В Windows Server 2016/2019 проблема уже исправлена, и ключ в реестр добавлять не нужно.

 

Неприятное обновление безопасности в CredSSP и RDP


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

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

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

И так в мае 2018 вышел уже третий вариант этого обновления безопасности. Нужно патчить и клиент, и сервер. И перезагрузиться. Неприятность в том, что последнее обновление за май 2018 года изменяет умолчания с Vulnerable на Mitigated, чтобы вынудить администраторов установить обновление безопасности: если вы пропатчили клиент, то теряете доступ к непропатченному серверу. Чтобы этого избежать нужно выставить на клиенте в реестре значение ключа AllowEncryptionOracle в 2 (Vulnerable).

Можно предположить, что через месяц умолчание будет изменено на ещё более жесткое Mitigated на Force updated clients.

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

CredSSP updates for CVE-2018-0886

Предупреждения сертификатов в Remote Desktop


Попалась статья, в которой описаны несколько сценариев настройки сертификатов в Remote Desktop. Привлекает стройность статьи. Полезна, если вы только задумались о наведении порядка в своей инфраструктуре. Остальные полезности найдете тут, в моем блоге в рубрике «Remote Desktop«.

Remote Desktop — убитая консоль RD Gateway


Если кратко, то (возможно) ноябрьское кумулятивное обновление 2017 года для Windows Server 2016 убивает консоль Remote Desktop Gateway. Возможно не только её. Читать далее

Remote Desktop — как один баг может взорвать всё!


Началось всё с древнего бага, который завершил своё существование на Windows Server 2016. Неважно что за баг (это уже другая история). Факт в том, что он исправлен только в Windows Server 2016. Пришлось задуматься о миграции одного сервера на Windows Server 2016. Как минимум надо предварительно обновить сервер KMS, чтобы активировать Windows Server 2016. К тому же исходный сервер оказался терминальным… Читать далее