Winxp sp3 and Window last - https help.

Материал из support.qbpro.ru

Обновление корневых сертификатов в Windows

В операционных системах семейства Windows, начиная с Windows 7, присутствует система автоматического обновления корневых сертификатов с сайта Microsoft. MSFT в рамках программы Microsoft Trusted Root Certificate Program, ведет и публикует в своем онлайн хранилище список сертификатов для клиентов и устройств Windows. В том, случае если проверяемый сертификат в своей цепочке сертфикации относится к корневому CA, который участвует в этой программе, система автоматически скачает с узла Windows Update и добавит такой корневой сертификат в доверенные.

В том случае, если у Windows отсутствует прямой доступ к каталогу Windows Update, то система не сможет обновить корневой сертификат, соответственно у пользователя могут быть проблемы с открытием сайтов (SSL сертификаты которых подписаны CA, к которому нет доверия), либо с установкой / запуском подписанных приложений или скриптов.

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

Утилита rootsupd.exe

  • В Windows XP для обновления корневых сертификатов использовалась утилита rootsupd.exe, список корневых и отозванных сертификатов, зашитых в которой регулярно обновлялся. Сама утилита распространялась в виде отдельного обновления KB931125 (Update for Root Certificates). Посмотрим, можно ли использовать ли ее сейчас.
  • Скачайте утилиту rootsupd.exe, перейдя по ссылке rootsupd.exe
    (по состоянию на 15.09.2017 ссылка не работает, возможно в Microsoft решили убрать ее из общего доступа).
  • Для установки сертификатом, достаточно запустить файл. Но мы попробуем более внимательно рассмотреть его содержимое, распаковав его с помощью команды:
rootsupd.exe /c /t: C:\PS\rootsupd

Rootsupd-update-root-ms-certs.jpg

  • Сертификаты содержатся в SST файлах: authroots.sst, delroot.sst и т.п. Для удаления/установки сертификатов можно воспользоваться командами:
updroots.exe authroots.sst
updroots.exe -d delroots.sst

Но, как вы видите, дата создания этих файлов 4 апреля 2013 (почти за год до окончания официальной поддержки Windows XP). Таким образом, с этого времени утилита не обновлялась и не может быть использована для установки актуальных сертификатов.

Получения списка корневых сертификатов с узла Windows Update с помощью Сertutil

  • Последняя версия утилиты для управления и работы с сертификатам Сertutil (представленная в Windows 10), позволяет скачать и сохранить в SST файл актуальный список корневых сертификатов.
  • Для генерации SST файла, на компьютере Windows 10 с прямым доступом в Интернет, выполните с правами администратора команду:
certutil.exe -generateSSTFromWU roots.sst
Certutil.exe-generateSSTFromWU.jpg
  • В результате в целевом каталоге появится файл SST, содержащий актуальный список сертификатов. Дважды щелкните по нему для открытия. Данный файл представляет собой контейнер, содержащий сертификаты.
Root-sst-file.jpg
  • Как вы видите, откроется знакомая оснастка управления сертификатами, из которой вы можете экспортировать любой из полученных сертификатов. В моем случае, список сертификатов содержал 358 элементов. Естественно, экспортировать сертификаты и устанавливать по одному не рационально.
  • {!} - Совет. Для генерации индивидуальных файлов сертификатов можно использовать команду certutil -syncWithWU. Полученные таким образом сертификаты можно распространить на клиентов с помощью GPO.
  • Для установки всех сертификатов, содержащихся в файле, воспользуемся утилитой updroots.exe (она содержится в архиве rootsupd.exe, который мы распаковали в предыдущем разделе).
  • Установка сертификатов из STT фалйла выполняется командой:
updroots.exe roots.sst

Update-trusted-root-certification-authority.jpg

  • Запустите оснастку certmgr.msc и убедитесь, что все сертификаты были добавлены в хранилище Trusted Root Certification Authority.

Список корневых сертификатов в формате STL

Есть еще один способ получения списка сертификатов с сайта Microsoft. Для этого нужно скачать файл:authrootstl.cab
(обновляется дважды в месяц)

  • С помощью любого архиватора (или проводника Windows) распакуйте содержимое архива authrootstl.cab.

Он содержит один файл authroot.stl.

Authroot-stl.jpg
  • Файл authroot.stl представляет собой контейнер со списком доверенных сертификатов в формате Certification Trust List
Certification-trusted-list-info.jpg
  • Данный файл можно установить в системе с помощью контекстного меню файла STL (Install CTL).
Install-ctl.jpg
  • Или с помощью утилиты certutil:
certutil -addstore -f root authroot.stl
  • После выполнения команды, в консоли управления сертификатами (certmgr.msc) в контейнере Trusted Root Certification Authorities появится новый раздел с именем Certificate Trust List.

Certificate-Trust-List.jpg

  • Аналогичным образом можно скачать и установить список с отозванными сертификатами, которые были исключены из программы Root Certificate Program. для этого, скачайте файл: disallowedcertstl.cab, распакуйте его и добавьте в раздел Untrusted Certificates командой:
certutil -addstore -f  disallowed disallowedcert.stl
  • В это статье мы рассмотрели несколько простейших способов обновления списка корневых сертификатов на изолированной от Интернета системе Windows. В том случае, если возникла задача регулярного обновления корневых сертификатов в отделенном от внешней сети домене, есть несколько более сложная схема обновления локальных хранилищ сертификатов на компьютерах домена с помощью групповых политик. Об этом подробнее в одной из ближайших статей.

РЕСУРСЫ