Нужно обновить сертификат для Remote Desktop Gateway

Как всегда в прочем, в связи с ситуацией COVID-19 и указом Путина В.В. что с 30 марта по 3 апреля 2020 все не работают мне очень подфартило, что в воскресенье 29 марта истекает срок на сертификат (Let’s Encrypt) используемый на доступ к Remote Desktop Gateway сервису из вне где на нем проводится аутентификация с последующим доступ к серверам, рабочим станциям. Ну прямо все звезды выстроились в ряд, то сертификаты для CMS системы Bitrix заканчиваю на текущих выходных, а тут еще и это.

Ну да ладно, для меня это даже в радость этого я никогда не делал, а кроме меня не кому.

Шаг №1: Через заметку «Как на TMG настроить правило проброс порта» подключаюсь к системе на которой поднята роль Remote Desktop Gateway on Server 2012 R2 Std. Запускаю консоль командной строки с правами Администратора:

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667c:\acme>wacs.exe N: Create new certificate (simple for IIS) M: Create new certificate (full options) L: List scheduled renewals R: Renew scheduled S: Renew specific A: Renew *all* O: More options… Q: Quit Please choose from the menu: R [INFO] Renewing certificate for [IISBinding] mail.ekzorchik.ru [INFO] Authorize identifier: mail.ekzorchik.ru [INFO] Cached authorization result: valid [INFO] Requesting certificate [IISBinding] mail.ekzorchik.ru [INFO] Store with CertificateStore… [INFO] Installing certificate in the certificate store [INFO] Adding certificate [IISBinding] mail.ekzorchik.ru 2020.3.26 19:19:48 to stor e WebHosting [INFO] Installing with IIS… [INFO] Updating existing https binding :443 [INFO] Updating existing https binding mail.ekzorchik.ru:443 [INFO] Committing 2 https binding changes to IIS [INFO] Uninstalling certificate from the certificate store [INFO] Next renewal scheduled at 2020.6.20 19:19:49 [INFO] Renewal for [IISBinding] mail.ekzorchik.ru succeeded N: Create new certificate (simple for IIS) M: Create new certificate (full options) L: List scheduled renewals R: Renew scheduled S: Renew specific A: Renew *all* O: More options… Q: Quit Please choose from the menu: q

Шаг №2: Сертификат поместился в Win + R -> mmc -> File - Add/Remove Snap-in... - Certiciates (Add)

This snap-in will always manage certificates for: Computer account

и нажимаю Finish - Finish — потом OK окна "Console 1 - [Console Root]"

Раскрываю Console Root - Certificates (Local Computer) - Web Hosting, он тут. Его нужно перенести в Console Root - Certificates (Local Computer) Personal - Certificates

На заметку: Внимательно на Шаг №2

Шаг №3: Все еще находясь в «Шаг №2» нахожу свой продленный сертификат и через правый клик мышью по нему выбираю меню «Open» , затем перехожу на вкладку «Details» вижу поля, мне нужно поле "Thumbprint", выделяю его и копирую отпечаток, у меня он следующий: «‎03 4d 49 c7 b4 4b 69 03 25 ef a1 1f 4a 5e 2a d9 98 b5»

Данный отпечаток понадобится когда через PowerShell скрипт (входит в утилиту acme) я буду импортировать его в сервис Remote Desktop Gateway

12345c:\acme\Scripts>powershell -file ImportRDGateway.ps1 cmdlet ImportRDGateway.ps1 at command pipeline position 1Supply values for the following parameters:NewCertThumbprint: <code><span style=”color: #008000;”>034d49c7b44b690325efa11f4a5e2ad998b5</span></code> Cert thumbprint set to RD Gateway listener and service restarted

Шаг №4: Запускаю IIS

Win + X -> Control Panel - Administrative Tools - Internet Information Services (IIS) Manager - (Start Page) - SRV-TS01-GATE (ekzorchik\aollo) - Sites - Default Web Site — затем в правой части нажимаю Binding и изменяю для уже существующей записи

  • Type: https
  • Host Name: mail.ekzorchik.ru (Внешнее доменное имя на которого настроено сопоставление статического IP адреса который провайдер продает нам, а на DNS-сервере (внешнем, jino.ru,nic.ru и т.д) настроена запись A: mail.ekzorchik.ru = XXX.XXX.XXX.XXX)
  • Port: 443
  • IP Address: 192.168.9.15

выделяю эту запись и нажимаю Edit, здесь произвожу изменения сопоставление сертификата:

  • Type: https
  • IP Address: 192.168.9.15
  • Port: 443
  • Host name: mail.ekzorchik.ru
  • Requirce Server Name Indication: отмечаю галочкой
  • SSL Certificate: нажимаю Select и выбираю продленный сертификат даты которой инициализировали в «Шаг №1«, затем нажимаю OK

Для принятия изменений нужно перезапустить IIS:

Win + X -> Control Panel - Administrative Tools - Internet Information Services (IIS) Manager - (Start Page) - SRV-TS01-GATE (ekzorchik\aollo) - Sites - Default Web Site — в правой части нажимаю на (Manage WebSite) Restart

Шаг №5: Далее запускаю оснастку RD Gateway Manager

Win + X -> Control Panel - Administrative Tools - Remote Desktop Services - Remote Desktop Gateway Manager - RD Gateway Manager — и через правый клик мышью на SRV-TS01-GATE (LOCAL) перехожу в Properties — вкладка SSL Certificate —

Select an existing certificate from the RD Gateway SRV-TS01-GATE Certificates (Local Computer)/Personal store -> нажимаю на Import Certificate... и вижу свой сертификат, найти его можно по дате окончания которая в «Шаг №1» при обновлении текущего указана в выводе ниже следующей строкой

[INFO] Adding certificate [IISBinding] mail.ekzorchik.ru 2020.3.26 19:19:48 to stor

выбираю его и нажимаю Import, после чего на вкладке SSL Certificate будет значиться новый сертификат.

Для того чтобы настройки к RDG применились нужно перезапустить службу:

Win + X -> Control Panel - Administrative Tools - Services - Remote Desktop Gateway

или так

123net stop TSGateway net start TSGateway

Шаг №6: Проверяю путем запуска браузера (к примеру в Google Chrome) и указания в строке URL-адреса: https://mail.ekzorchik.ru где щелчком левой кнопкой мыши по замочку перед адресом, вижу что сертификат действителен, далее открываем инструмент просмотра сертификатов на вкладке «Общие» и тут видны

(Срок действия)

Дата выдачи: четверг, 26 марта 2020г., 19:19:48

Срок выдачи: среда, 24 июня 2020г., 19:19:48

все отлично.

Шаг №7: Если все выше проделано (как было у меня), то проверяем настроенным ранее соединением (я в клиенте Remmina on Ubuntu 18.04 Desktop) и соединение устанавливается.

Итого все задачи по поддержанию инфраструктуры компании в столь нелегкое время выполнены, сотрудники работают находясь на удаленке и не замечают, что если бы не полный цикл проверки как должно работать я бы оказалась крайним почему не предусмотрел заранее. Я ведь системный администратор и моя задача чтобы все работало, а когда работает без сбоев есть время для самообразования. На этом я прощаюсь, с уважением, автор блога Олло Александр aka ekzorchik.