Обновление корневых сертификатов в Windows в офлайн режиме | Windows для системных администраторов

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

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

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

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

Примечание. В  том случае, если пользователи получают доступ в интернет через прокси сервер, для того, что работало автоматическое обновление корневых сертификатов на компьютера пользователей, Microsoft рекомендует открыть прямой доступ (bypass)  к узлам Microsoft. Но это не всегда возможно/применимо.

Утилита rootsupd.exe


В Windows XP для обновления корневых сертификатов использовалась утилита rootsupd.exe, список корневых и отозванных сертификатов, зашитых в  которой регулярно обновлялся. Сама утилита распространялась в виде отдельного обновления KB931125 (Update for Root Certificates). Посмотрим, можно ли использовать ли ее сейчас.

  1. Скачайте утилиту rootsupd.exe, перейдя по ссылке http://download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe (по состоянию на 15.09.2017 ссылка не работает, возможно в Microsoft решили убрать ее из общего доступа).
  2. Для установки сертификатом, достаточно запустить файл. Но мы попробуем более внимательно рассмотреть его содержимое, распаковав его с помощью команды: rootsupd.exe /c /t: C:\PS\rootsupd rootsupd.exe утилита обновления списка корневых сертфикатов для Windows XP
  3. Сертификаты содержатся в 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
В результате в целевом каталоге появится файл SST, содержащий актуальный список сертификатов. Дважды щелкните по нему для открытия. Данный файл представляет собой контейнер, содержащий сертификаты.

sst файл - контейнер для сертификатовКак вы видите, откроется знакомая оснастка управления сертификатами, из которой вы можете экспортировать любой из полученных сертификатов. В моем случае, список сертификатов содержал 358 элементов. Естественно, экспортировать сертификаты и устанавливать по одному не рационально.

Совет. Для генерации индивидуальных файлов сертификатов можно использовать команду certutil -syncWithWU. Полученные таким образом сертификаты можно распространить на клиентов с помощью GPO.

Для установки всех сертификатов, содержащихся в файле, воспользуемся утилитой updroots.exe (она содержится в архиве rootsupd.exe, который мы распаковали в предыдущем разделе).

Установка сертификатов из STT фалйла выполняется командой:

updroots.exe roots.sst

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

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

Есть еще один способ получения списка сертификатов с сайта Microsoft. Для этого нужно скачать файл http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/authrootstl.cab (обновляется дважды в месяц).С помощью любого архиватора (или проводника Windows) распакуйте содержимое архива authrootstl.cab. Он содержит один файл authroot.stl.

authroot.stl

Файл authroot.stl представляет собой контейнер со списком доверенных сертификатов в формате Certification Trust List.

Certification Trust List

Данный файл можно установить в системе с помощью контекстного меню файла STL (Install CTL).

Install CTL

Или с помощью утилиты certutil:

certutil -addstore -f root authroot.stl

После выполнения команды, в консоли управления сертификатами (certmgr.msc) в контейнере  Trusted Root Certification Authorities появится новый раздел с именем Certificate Trust List.

Certificate Trust List в Trusted Root Certification Authorities

Аналогичным образом можно скачать и установить список с отозванными сертификатами, которые были исключены из программы  Root Certificate Program. для этого, скачайте файл disallowedcertstl.cab (http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/disallowedcertstl.cab), распакуйте его и добавьте в раздел Untrusted Certificates командой:

certutil -addstore -f  disallowed disallowedcert.stl

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

Еще записи по теме: Windows 10, Windows 7
Понравилась статья? Скажи спасибо и расскажи друзьям!
Назад:
Вперед:

Комментариев: 8

Оставить комментарий
  1. andrew | 23.03.2017

    вроде метод через updroots.exe надежнее чем через Install CTL или certutil -addstore
    по крайней мере на винде без обновлений из STL файла импортятся далеко не все сертификаты. и если его открыть то там очень много будет сертификатов без имени.

    Ответить
    • itpro | 24.03.2017

      Согласен, на мой взгляд это самый правильный способ. Но устанавливается 300+ сертификатов, жуть

      Ответить
      • Сергей | 22.07.2017

        команда «certutil.exe -generateSSTFromWU roots.sst» на Win7 не должна работать? Как лучше на семерке с выключенными обновлениями, но с интернетом обновить сертификаты? Вторым указанным в статье способом?

        Ответить
  2. Игорь | 12.08.2017

    Добрый день!
    Как добавить сертификат в хранилище компьютера? certmgr.msc работает же с сертификатами текущего пользователя. Также как добавить сертификат в хранилище root?

    Ответить
    • itpro | 16.08.2017

      Добрый!
      Запустите mmc и добавьте новую оснастку Сертификаты. При добавлении у вас спросят хотоите ли вы управлять сертфикатами пользователя, компьютера или учетной записи службы

      Ответить
      • Игорь | 16.08.2017

        большое спасибо за инфу!

        Ответить
  3. rsuan | 14.09.2017

    Ссылка
    http://download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe
    не работает. Какая новая ссылка?

    Ответить
    • itpro | 15.09.2017

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

      Ответить
Полные правила комментирования на сайте winitpro.ru. Вопросы, не связанные с содержимым статьи или ее обсуждением удаляются.

Сказать Спасибо! можно на этой странице или (еще лучше) поделиться с друзями ссылкой на понравившуюся статью в любимой социальной сети(специально для этого на сайте присуствуют кнопки популярных соц. сетей).

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)



MAXCACHE: 0.26MB/0.00119 sec