Certutil -generateSSTFromWU roots.sst: обновление корневых сертификатов Windows

Команда certutil -generateSSTFromWU roots.sst выгружает актуальные корневые сертификаты напрямую с серверов Windows Update в файл roots.sst — это основной способ обновить хранилище доверенных корневых центров сертификации на компьютере без доступа к интернету или в изолированной корпоративной сети. Если на автономной машине браузер или приложение ругается на недоверенный сертификат, а стандартное автоматическое обновление корней недоступно, проблема решается именно через эту связку: выгрузка SST-файла на подключённом ПК и последующий импорт на целевом.

Утилита certutil.exe встроена во все современные версии Windows и не требует установки дополнительных компонентов. Далее разберём, как правильно выполнить команду, как импортировать полученный файл, какие ошибки встречаются чаще всего и как проверить результат.

Что делает параметр -generateSSTFromWU

Ключ -generateSSTFromWU указывает утилите certutil обратиться к службе Windows Update и сформировать файл в формате SST (Serialized Certificate Store), содержащий полный набор корневых сертификатов, которые Microsoft распространяет через программу Windows Root Certificate Program. Именно этот механизм использует сама ОС, когда автоматически подгружает недостающий корень при проверке цепочки сертификатов.

Файл roots.sst — это контейнер, который можно перенести на другой компьютер и развернуть там штатными средствами. Такой подход применяется для:

  • 🖥️ Обновления корневых сертификатов на ПК без доступа в интернет
  • 🏢 Настройки изолированных сегментов корпоративной сети
  • 🔧 Исправления ошибок проверки цифровой подписи драйверов и установщиков
  • 🌐 Устранения предупреждений о недоверенном соединении в браузерах, использующих системное хранилище
⚠️ Внимание: для выполнения команды на исходном компьютере требуется доступ к серверам Windows Update. Если служба обновлений отключена политиками или трафик блокируется прокси, выгрузка завершится ошибкой.

Синтаксис и выполнение команды

Запускайте командную строку от имени администратора, иначе часть операций с хранилищем будет недоступна. Базовый синтаксис выглядит так:

certutil -generateSSTFromWU C:\certs\roots.sst

Путь и имя файла можно задавать произвольно — roots.sst используется по соглашению. Папка назначения должна существовать заранее: утилита не создаёт несуществующие каталоги и в этом случае вернёт ошибку. Процесс занимает от нескольких секунд до пары минут в зависимости от скорости соединения с серверами обновлений.

Дополнительно полезно проверить, что файл действительно создан и имеет ненулевой размер. Пустой или отсутствующий файл — признак того, что обращение к Windows Update не состоялось.

☑️ Подготовка к выгрузке roots.sst

Выполнено: 0 / 5

Импорт сертификатов на целевой компьютер

Перенеся roots.sst на автономную машину, сертификаты нужно установить в хранилище «Доверенные корневые центры сертификации». Есть два рабочих способа. Первый — через контекстное меню файла: двойной клик по SST-файлу открывает мастер импорта, где хранилище выбирается вручную.

Второй способ — массовая установка через certutil или оснастку certlm.msc. Для развёртывания на множестве машин удобнее использовать групповые политики: SST-файл или отдельные сертификаты распространяются через раздел конфигурации компьютера, посвящённый доверенным корневым центрам.

Проверить результат можно через оснастку certlm.msc: откройте узел «Доверенные корневые центры сертификации» → «Сертификаты» и убедитесь, что список пополнился свежими записями с актуальными сроками действия.

📊 Для какого сценария вы используете generateSSTFromWU?
Обновление ПК без интернета
Корпоративная изолированная сеть
Исправление ошибок подписи драйверов
Развёртывание через групповые политики

Типичные ошибки и их решения

Чаще всего команда завершается неудачей из-за недоступности Windows Update. Возможные причины: отключённая служба wuauserv, блокировка на прокси или файрволе, а также перенаправление обновлений на внутренний WSUS-сервер, который не отдаёт нужный контент.

СимптомВероятная причинаЧто проверить
Ошибка сети или тайм-аутНет доступа к серверам Microsoft UpdateНастройки прокси, файрвол, DNS
Файл не создаётсяНесуществующий путь назначенияСоздать папку заранее, проверить права записи
Отказано в доступеЗапуск без прав администратораПерезапустить cmd с повышением прав
Долгое зависание командыСлужба Windows Update остановлена или перенаправлена на WSUSСостояние службы wuauserv, политики обновлений
SST импортирован, но ошибки сертификатов осталисьПриложение использует собственное хранилищеНастройки конкретной программы или браузера
⚠️ Внимание: некоторые браузеры и приложения (например, использующие собственное хранилище корней вместо системного) не учитывают сертификаты, импортированные в Windows. В этом случае обновлять хранилище нужно средствами самого приложения.
Как проверить состояние службы Windows Update

Выполните в командной строке: sc query wuauserv — в выводе строка STATE должна показывать RUNNING или STOPPED. Если служба остановлена, запустите её командой net start wuauserv и повторите выгрузку SST.

Альтернативные способы обновления корневых сертификатов

Если -generateSSTFromWU по какой-то причине недоступен, существуют обходные пути. На машине с интернетом корневые сертификаты обновляются автоматически при первом обращении к ресурсу, защищённому новым сертификатом, — достаточно открыть такой сайт в браузере, использующем системное хранилище.

Для точечной установки конкретного корня сертификат можно выгрузить в формате .cer с эталонного компьютера и импортировать командой certutil -addstore Root файл.cer. Это удобно, когда требуется не весь набор, а один-два конкретных центра сертификации.

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

Проверка результата после импорта

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

Для диагностики конкретного сертификата пригодится команда проверки цепочки:

certutil -verify -urlfetch файл_сертификата.cer

Вывод покажет, строится ли цепочка до доверенного корня и нет ли проблем с отзывом. Если проверка завершается успешно, хранилище обновлено корректно. Устаревшие корневые сертификаты — одна из скрытых причин сбоев при установке подписанных драйверов и обновлений на давно не обновлявшихся системах.

Часто задаваемые вопросы

Работает ли команда certutil -generateSSTFromWU в Windows 10 и 11?

Да, утилита certutil с этим параметром входит в состав современных версий Windows, включая Windows 10, 11 и серверные редакции. Точный набор поддерживаемых ключей можно посмотреть командой certutil -? в вашей системе.

Можно ли выполнить выгрузку без интернета?

Нет: параметр -generateSSTFromWU обращается к серверам Windows Update, поэтому на исходном компьютере требуется сетевое подключение. Сам файл roots.sst затем переносится на автономные машины любым способом.

Куда импортировать roots.sst — для пользователя или для компьютера?

Для системных задач (проверка подписей драйверов, работа служб) сертификаты устанавливают в хранилище локального компьютера через certlm.msc с правами администратора. Установка только в хранилище пользователя может не решить проблему для системных компонентов.

Как часто нужно обновлять roots.sst?

Жёсткого регламента нет: набор корневых сертификатов Microsoft периодически пересматривается — одни центры добавляются, другие исключаются. Разумная практика для изолированных машин — обновлять файл при появлении ошибок доверия или в рамках планового обслуживания.

Чем отличается SST от обычного CER-файла?

Файл .cer содержит один сертификат, а SST — это сериализованное хранилище, включающее сразу множество сертификатов. Именно поэтому SST удобен для массового обновления корневого хранилища одной операцией.