Миграция автономного центра сертификации с Windows Server 2012 R2 на Windows Server 2022

Migrating a Standalone CA from Windows Server 2012 R2 to Windows Server 2022В этой заметке мы рассмотрим процедуру миграции автономного центра сертификации (Standalone Certification Authority) с ОС Windows Server 2012 R2 на ОС Windows Server 2022 в рамках одного и того же виртуального сервера с переустановкой ОС. Одним из условий рассматриваемого примера будет сохранение имени сервера, хотя в целом данное условие не является обязательным.

Общий план действий будет следующий:

  1. Создание резервной копии данных ЦС в Windows Server 2012 R2
  2. Удаление служб ЦС из Windows Server 2012 R2
  3. Переустановка ОС и установка служб ЦС в Windows Server 2022.
  4. Первичная конфигурация ЦС
  5. Восстановление базы данных и конфигурации ЦС из резервной копии

 

Шаг 1. Резервное копирование данных ЦС в Windows Server 2012 R2

Резервное копирование ЦС будет представлять собой сохранение сертификата ЦС, закрытого ключа ЦС и базы данных выданных сертификатов. Помимо этого нам потребуется сохранить ключ системного реестра, который хранит все настройки ЦС.

На сервере с Windows Server 2012 R2 в оснастке управления Certification Authority (certsrv.msc) в основном контекстном меню для ЦС выбираем пункт "Back up CA…"

Certification Authority - Back up CA

В открывшемся окне мастера резервного копирования включаем опции сохранения закрытого ключа и сертификата ЦС "Private key and CA certificate" и сохранения базы данных сертификатов "Certificate database and certificate database log", а также указываем путь к защищённому от стороннего доступа каталогу для сохранения резервных копий.

Certification Authority - Backup Wizard

Для защиты закрытого ключа в составе резервной копии зададим некий сложный пароль.

Certification Authority - Password for Private Key in Backup Wizard

Мастер сохранит резервную копию данных в указанный каталог и среди прочего зашифрует данные о закрытом ключе с использованием указанного нами пароля в специальном файле-контейнере.

Процедуру создания резервной копии можно выполнить не только с помощью графической оснастки управления, но и с помощью PowerShell, командой следующего вида:

Backup-CARoleService -Path "C:\CABackupPS" -Password (ConvertTo-SecureString "P@ssw0rd!" -AsPlainText -Force) -KeepLog

На выходе мы получим подкаталог с базой данных сертификатов и зашифрованный файл-контейнер в формате *.p12, содержащий в себе закрытый ключ ЦС.

Certification Authority Backup via PowerShell

Далее переходим в редактор системного реестра Windows и находим в нём ключ реестра, который хранит расширенные настройки ЦС:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration

Сохраняем содержимое этого ключа в *.reg файл, используя пункт меню "Export".

Certification Authority - Backup CA Configuration in Registry

Аналогичное действие можно выполнить с помощью командной строки и команды следующего вида:

reg export "HKLM\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration" "C:\CABackupPS\Reg-CA1-WS2012R2.reg"

Backup CA Configuration via reg export

Сохраняем содержимое каталога с файлами резервной копии в защищённое стороннее место.

 

Шаг 2. Удаление служб ЦС из Windows Server 2012 R2

Данный шаг является опциональным для автономного ЦС, но будет желательным в случае, если выполняется переустановка/миграция доменного ЦС. В случае с доменным ЦС для удаления "Active Directory Certificate Services" нам потребуется права уровня Enterprise Admins.

Сначала деактивируем компоненту "Certification Authority Web Enrollment", если она была установлена ранее. Если этого предварительно не сделать, то при попытке удаления ключевой компоненты "Certification Authority" мы получим ошибку с сообщением о том, что сначала необходимо удалить "Web Enrollment".

Uninstall-AdcsWebEnrollment -Force

Uninstall-AdcsWebEnrollment

Затем в оснастке "Server Manager" деактивируем компоненты роли "Active Directory Certificate Services"

Remove Active Directory Certificate Services role in Server Manager on Windows Server 2012 R2

 

 

Шаг 3. Переустановка ОС и установка служб ЦС в Windows Server 2022

После удаления роли AD CS, выводим сервер из домена, форматируем диск и начисто устанавливаем ОС Windows Server 2022. При настройке сервера (по условиям нашего примера) используем прежнее имя hostname.

После первичной настройки ОС и ввода в домен переходим в оснастку управления "Server Manager" и активируем ранее используемые компоненты "Certification Authority" и "Certification Authority Web Enrollment" для роли "Active Directory Certificate Services"

Add Active Directory Certificate Services role in Server Manager on Windows Server 2022

 

Шаг 4. Первичная конфигурация ЦС

После завершения процесса установки роли, переходим по ссылке "Configure Active Directory Certificate Services on the destination server"

Configure Active Directory Certificate Services on the destination server

Откроется мастер конфигурирования AD CS, в котором на шаге "Credentials" нужно указать учётные данные пользователя, от имени которого будет выполнять конфигурация ЦС. Для доменного ЦС требуются права уровня Enterprise Admins. А в нашем примере, для автономного ЦС, достаточно прав локального администратора сервера.

На шаге "Role Services" выбираем компоненты, которые хотим сконфигурировать.

AD CS Configuration - Role Services

 

На шаге "Setup Tyte" в нашем случае выбирается тип развёртывания – автономный ЦС: "Standalone CA".

AD CS Configuration - Setup Type

 

На шаге выбора типа ЦС в нашем случае выбирается "Root CA", так как в нашем примере используется развёртывание автономного корневого ЦС.

AD CS Configuration - CA Type

На шаге "Private Key" выбираем пункт экспорта сертификата ЦС и ассоциированного с ним закрытого ключа ЦС: "Use existing private key" > "Select a certificate and use its associated private key".

AD CS Configuration - Use existing private key

В окне импорта сертификата указываем путь к контейнеру *.p12 и пароль, который мы использовали ранее при создании резервной копии ЦС.

AD CS Configuration - Select PKCS 12 file

Убеждаемся в том, что сертификат ЦС подгрузился без ошибок.

Select a certificate and use its associated private key

На следующем шаге оставляем пути к БД в значениях по умолчанию и дожидаемся успешного завершения конфигурирования ЦС.

AD CS Configuration succeeded

После этого можем перейти в оснастку Certification Authority и убедиться в том, что ЦС успешно запущен со своим прежним именем и сертификатом.

 

Шаг 5. Восстановление базы данных и конфигурации ЦС из резервной копии

Теперь настало время восстановить базу данных всех ранее выданных и отозванных сертификатов. Для этого в оснастке Certification Authority в основном контекстном меню для ЦС выбираем пункт "Restore CA…"

Certification Authority - Restore CA

Перед началом работы мастера восстановления мы получим предупреждение о том, что в ходе восстановления служба сертификации будет будет остановлена.

В открывшемся окне мастера восстановления включаем опции восстановления закрытого ключа и сертификата ЦС "Private key and CA certificate" и восстановления базы данных сертификатов "Certificate database and certificate database log", а также указываем путь к каталогу с созданной ранее резервной копией ЦС.

Certification Authority Restore Wizard

Далее укажем пароль, который мы использовали ранее для защиты закрытого ключа в составе резервной копии.

Certification Authority Restore Wizard - Password for access to Private Key

Мастер восстановления должен отработать без ошибок.

Completing the Certification Authority Restore Wizard

По окончании работы мастера восстановления будет предложено снова запустить службу сертификации.

Certification Authority Restore Wizard - Start service

После этого в оснастке Certification Authority проверяем наличие выданных и отозванных ранее сертификатов.

Далее нам остаётся восстановить информацию о конфигурации ЦС в системном реестре Windows из ранее сохранённого *.reg файла.

В нашем случае восстановление из *.reg файла выполняется без каких-либо изменений в этом файле. В случае же, если миграция ЦС выполняется с изменением имени сервера, то в файл потребуется внести корректировки.

В нашей резервной копии FQDN имя сервера встречается, как минимум, 2 раза - в параметрах CAServerName и WebClientCAMachine. В случае необходимости, вы можете изменить эти параметры.

Change CAServerName in registry CA Backup file

Закрываем графическую оснастку Certification Authority, запускаем командную строку с правами администратора и выполняем последовательно команды остановки службы сертификации, восстановления настроек реестра из *.reg файла и повторного запуска службы сертификации.

net stop CertSvc
reg import "C:\CABackupPS\Reg-CA1-WS2012R2.reg"
net start CertSvc

Restore CA Configuration from registry CA Backup file

Снова открываем графическую оснастку Certification Authority и проверяем восстановленные настройки ЦС. Например, можно убедиться в том, что успешно восстановлены ранее настроенные точки публикации распространения списка отзыва сертификатов.

После окончания процедуры восстановления (в целях безопасности) не забываем провести зачистку резервных копий ЦС, содержащих закрытий ключ.

Автономный ЦС не поддерживает работу с шаблонами сертификатов, поэтому, в нашем случае, на данном этапе процесс миграции ЦС можно считать законченным. В случае же доменного ЦС, могут потребоваться дополнительные манипуляции с шаблонами сертификатов, информацию о которых можно найти по ссылкам ниже.


Дополнительные источники информации:

Добавить комментарий