- Ручное обновление корневых сертификатов на Windows
- Обновление сертификатов
- Получение актуальных сертификатов
- Установка/обновление корневых сертификатов
- Обновление корневых сертификатов Windows 7 — описание процесса
- Что такое корневые сертификаты Windows 7, 10 и XP
- Для чего это нужно
- Удаление старых сертификатов на Windows
- Обновление корневых сертификатов Windows 7, 10, XP
- Возможные проблемы
- Автоматическое обновление хранилища сертификатов доверенных корневых центров сертификации на компьютерах Windows не имеющих прямого доступа в Интернет.
Ручное обновление корневых сертификатов на Windows
Актуальные системы семейства Windows, подключенные к Интернету, могут автоматически обновлять корневые сертификаты. В противном случае, обновление необходимо выполнять вручную. Если это не делать, мы можем столкнуться с рядом проблем:
- Не открываются или выдают предупреждение безопасности некоторые (или все) сайты, работающие по https.
- Некорректная работа отдельных приложений (например, антивирусных систем).
- Ошибки при подключении по удаленному рабочему столу.
Это пример ошибок, который не претендует на свою полному. Чаще всего, проблемы встречаются на системах, снятых с обслуживание компанией Microsoft (Windows XP, 7, а также Server 2003, 2008).
Обновление сертификатов
Обновление доверенных корневых сертификатов выполняется во время обновления операционной системы. Если последнее включено, то нашего участия не требуется, иначе, можно установить обновление вручную. Пример такого пакета — KB931125.
Однако, если операционная система устарела, разработчик прекращает выпуск обновлений, и мы не можем воспользоваться средствами обновления системы. В таком случае, необходимо сделать выгрузку корневых сертификатов на актуальной системе и перенести их на устаревший.
Получение актуальных сертификатов
Для начала, выгрузим сертификаты на компьютере с актуальной версией Windows (10) и подключением к сети Интернет.
Создадим каталог, в который будет выгружен файл с корневыми сертификатами, например, C:\CA (папка CA на диске C).
Открываем командную строку от администратора и вводим команду:
certutil.exe -generateSSTFromWU C:\CA\roots.sst
* где C:\CA — каталог, который мы создали; roots.sst — файл, в который будут выгружены сертификаты.
В папке C:\CA мы должны увидеть файл roots.sst.
Установка/обновление корневых сертификатов
Полученный на предыдущем этапе файл переносим на компьютер, где необходимо обновить доверенные корневые сертификаты, например, также в папку C:\CA. Скачиваем утилиту rootsupd и распаковываем ее в этот же каталог.
Открываем командную строку от администратора и вводим команду:
C:\CA\rootsupd.exe /c /t:C:\CA
* где C:\CA — папка, в которую мы перенесли корневые сертификаты.
В появившемся окне Roots Update:
. выбираем No, чтобы не переписывать наш файл roots.sst.
В папке C:\CA должны появится новые файлы, в том числе, утилита updroots. Вводим теперь команду:
Обновление корневых сертификатов Windows 7 — описание процесса
Практически во всех версиях операционной системы Виндовс есть функция автоматического обновления сертификата. Однако некоторые уже не поддерживаются разработчиком, поэтому компания Microsoft перестала выпускать новые файлы. При установке старого пакета Windows есть вероятность, что сертификаты устарели, их придется устанавливать вручную. Чтобы не рисковать собственной безопасностью и не ограничивать себя в софте и сайтах, связанных с доверенными центрами, рекомендуется обновить сертификаты безопасности Windows 7, XP или 10.
Что такое корневые сертификаты Windows 7, 10 и XP
Сами по себе сертификаты — это меры безопасности. Они показывают, настоящее ли сообщение или запрос пришел пользователю, серверу или же это подделка. Корневые сертификаты являются основными.
Как удалить или обновить сертификаты на Windows
К сведению! Существуют также сертификаты для подделки подтверждения, например, SuperFish.
Эти записи учитываются в первую очередь при установке связи через Интернет. Они свидетельствуют о том, что сообщение, переданное с одного устройства на другое, настоящее, то есть оно основано на технологии, выдаваемой органом по сертификации. В операционной системе есть список этих самых сертификатов. Они по умолчанию становятся доверенными. Google Chrome, Opera, Mozilla Firefox и другие браузеры постоянно используют их для подключения к различным сайтам.
Они также служат шифром, когда пользователь передает информацию какому-либо ресурсу. Соответственно, если сертификат недостоверный, то соединение не установится в целях безопасности. Например, определенная группа сертификатов разработана для обмена данными и запросами между браузером и сайтом. С их помощью система шифрует пароли, важные файлы, исходные коды при передаче информации.
Обратите внимание! Эти удостоверения, как правило, делятся на отрасли. Одни отвечают за безопасность внутри электронных почт, другие работают с передачей и принятием данных запросов и т. д.
Еще одна функция — определение важности установки связи. Система автоматически определяет, для чего сайту нужны какие-либо данные, чтобы разрешить или отказать в доступе. Кстати, некоторые вредоносные программы могут подставлять в список свои договоренности, после чего перенаправить пользователя на вирусный сайт, где успешно украсть его информацию. Поэтому важно не устанавливать сторонний софт и ничего не подтверждать без прочтения.
Следовательно, сертификаты выполняют следующие функции:
- они шифруют данные, что предотвращает их перехват и расшифровку во время прохождения http/https запроса;
- определяют необходимость установки связи веб-браузера с сайтом;
- устанавливают соединение только с надежными источниками.
Список с папками сертификатов ОС Windows
Если бы их не существовало вообще, то все устройства доверяли бы друг другу. Из-за этого было бы множество незащищенных соединений и терабайтов перехваченной, украденной информации. Если удалить все нужные сертификаты с компьютера, то в браузере будет написано, что соединение небезопасное. В таком случае не будут работать даже самые простые программы, требующие Интернет, к примеру, карта. Даже не удастся посмотреть погоду.
К сведению! Если с компьютера вынуть батарейку, и после включения сбросится дата, то практически ни один сайт не разрешит соединение. Похожее происходит при некачественных сертификатах
Для чего это нужно
Это своего рода документы, поэтому у них есть срок годности. Всё программное обеспечение развивается, добавляются новые строчки кода, расширяется функционал, исправляются баги. Это касается сертификатов. Поскольку они напрямую работают с Интернетом, то зависят от нововведений. Если меняется технология, нужно изменить все, что работает вместе с ней. Также некоторые договоренности теряют актуальность. Их нужно вовсе удалить. Кроме того, пользователи часто устанавливают ОС Windows 7, скачанную с Интернета. Есть вероятность, что сертификаты встроены еще с 2009 г.
Что же будет, если не обновлять файлы? Во-первых, теряется вся безопасность. Информация не сможет шифроваться, потому что не будет соответствующего инструмента. И есть риск стать жертвой злоумышленников. Во-вторых, сейчас 99 % всех сайтов в Интернете использует удостоверения. При установке соединения гаджеты (клиент и сервер) обмениваются данными. Если у одного не будет сертификатов, либо файлы устаревшие, то в браузере высветится соответствующая ошибка — небезопасное подключения. То же самое случится при наличии неполадок со стороны сайта. Естественно, существуют способы обойти это, но не рекомендуется это делать.
Важно! После установки новой операционной системы нужно снести старые файлы и поставить новые удостоверения, чтобы не возникло неполадок при использовании Интернета. Также желательно избавиться от неизвестных доверенностей, поскольку система нуждается только в базовых сертификатах.
Отказано в доступе при подключении
Удаление старых сертификатов на Windows
Чтобы файлы смогли обновиться, нужно удалить старые или ненужные сертификаты:
- Нажать сочетание клавиш «Win + R». Откроется окно «Выполнить». В поле нужно ввести команду «mmc» (без кавычек). Далее потребуется щелкнуть на «Ок».
- Откроется Microsoft Management Console. Это среда для управления операционной системой. В появившемся окне нужно щелкнуть на «Файл». В меню выбрать пункт «Добавить или удалить…». Должно появиться еще одно окно.
- В управлении оснастками есть два раздела. Нужно в левой части выбрать сертификаты, после чего нажать на «Добавить». Откроется менеджер по управлению сертификатами. Далее нужно выбрать первый пункт — «Моя учетная запись пользователя», нажать на «Готово».
- После этого операционная система опять откроет консоль параметров. В левой части окна нужно раскрыть вкладку «Сертификаты — текущий профиль». Далее понадобится перейти в ветку доверенных корневых центров. Внутри есть папка «Сертификаты». Нужно щелкнуть на нее левой кнопкой мыши. В окне рядом отображены все установленные корневые центры сертификаций.
- Если есть несколько файлов, начинающихся с «УЦ» (например, криптопро), то их можно удалить, поскольку они не стандартные. Это файлы удостоверяющих центров.
- Нужно выделить все пункты, нажать правую кнопку мыши, щелкнуть по «Удалить». После чего нужно подтвердить действия.
Важно! Если при попытке удалить что-либо высвечивается ошибка, то необходимо авторизоваться с учетной записи, у которой есть права администратора.
Далее нужно удалить сертификаты безопасности на Windows 7, XP, 10 для интернет-узла. Для этого нужно вернуться в консоль управления Microsoft, затем сделать следующее:
- Выбрать вкладку «Другие пользователи».
- Перейти в соответствующую папку.
- В списке под графой «Кем выдан» нужно найти то же самое УЦ, затем нажать на «Удалить».
- Далее необходимо повторно подтвердить действия.
Удаление сертификата на Windows
Обновление корневых сертификатов Windows 7, 10, XP
Чтобы установить файлы, нужно сначала их достать. Они распространяются соответствующими удостоверяющими центрами. Также нужные данные можно найти по запросу в поисковике Google. Сам файл имеет расширение *cer (от английского «certificate»). Когда сертификат будет на компьютере, понадобится щелкнуть по нему правой кнопкой мыши, после чего выбрать «Установить сертификат» в открывшемся списке. Дальнейшие действия:
- После выбора пункта с установкой у пользователя попросят подтвердить открытие. Можно снять галочку с пункта «Всегда спрашивать при открытии этого файла», но это не обязательно. Достаточно щелкнуть на «Открыть».
- В появившемся мастере импорта сертификатов необходимо выбрать «Текущий пользователь».
- Нужно нажимать «Далее» до тех пор, пока операционная система не уведомит об успешном импорте файла в список. Затем потребуется щелкнуть на «Ок».
Таким образом устанавливается основной сертификат. Однако есть еще и файл из контейнера. Инструкция такая же, однако когда появится меню с выбором хранилища, понадобится сделать следующее:
- Щелкнуть на «Обзор».
- Выбрать вкладку с доверенными корневыми центрами сертификаций.
- После этого нужно завершить установку как обычно.
Обратите внимание! Если файл не устанавливается, а вместо этого появляется окно с ошибкой и неизвестным кодом, то, скорее всего, срок годности истек, либо файл поврежден. Рекомендуется скачать доверенность еще раз.
Возможные проблемы
Существует ряд проблем, которые могут случиться при установке новых сертификатов. К ним относятся следующие:
- если отказано в доступе либо пишет, что нет прав, то нужно зайти под другой учетной записью. Вероятно, у пользователя нет нужных прав. В случае с локальным сервером предприятия сертификат сохраняется в хранилище сервера;
- ошибка импорта. Возможно, причина в поврежденном файле. Также может быть, что срок действия истек, либо ошибка в самой операционной системе;
- если сборка Windows 7 устарела, то ОС напишет, что невозможно проверить подлинность файла, поэтому нужно обновить систему;
- если на Windows XP не получается установить новые файлы, рекомендуется скачать утилиту Rootsupd. Она доступна на сайте «Касперского». Для установки сертификатов достаточно ее запустить.
Программа Rootsupd для обновления сертификатов
Регулярное обновление сертификата предотвратит появление неожиданных отказов в доступе при соединении с сайтом. Сделать это не сложно. Обновить корневые файлы помогут пошаговые инструкции выше. Главное — найти подходящий файл.
Автоматическое обновление хранилища сертификатов доверенных корневых центров сертификации на компьютерах Windows не имеющих прямого доступа в Интернет.
Ранее уже приходилось сталкиваться с проблемой невозможности корректного развёртывания ПО из-за того, что на целевых компьютерах с OC Windows не обновляется хранилище сертификатов доверенных корневых центров сертификации (далее для краткости будем называет это хранилище TrustedRootCA). На тот момент вопрос был снят с помощью развёртывания пакета rootsupd.exe, доступного в статье KB931125, которая относилась к ОС Windows XP. Теперь же эта ОС полностью снята с поддержки Microsoft, и возможно, поэтому данная KB-статья более недоступна на сайте Microsoft. Ко всему этому можно добавить то, что уже даже на тот момент времени решение с развёртыванием уже устаревшего в ту пору пакета сертификатов было не самым оптимальным, так как тогда в ходу были системы с ОС Windows Vista и Windows 7, в которых уже присутствовал новый механизм автоматического обновления хранилища сертификатов TrustedRootCA. Вот одна из старых статей о Windows Vista, описывающих некоторые аспекты работы такого механизма — Certificate Support and Resulting Internet Communication in Windows Vista . Недавно я снова столкнулся с исходной проблемой необходимости обновления хранилища сертификатов TrustedRootCA на некоторой массе клиентских компьютеров и серверов на базе Windows. Все эти компьютеры не имеют прямого доступа в Интернет и поэтому механизм автоматического обновления сертификатов не выполняет свою задачу так, как хотелось бы. Вариант с открытием всем компьютерам прямого доступа в Интернет, пускай даже на определённые адреса, изначально рассматривался как крайний, а поиски более приемлемого решения привел меня к статье Configure Trusted Roots and Disallowed Certificates ( RU ), которая сразу дала ответы на все мои вопросы. Ну и, в общем то, по мотивам этой статьи, в данной заметке я кратко изложу на конкретном примере то, каким образом можно централизованно перенастроить на компьютерах Windows Vista и выше этот самый механизм авто-обновления хранилища сертификатов TrustedRootCA, чтобы он использовал в качестве источника обновлений файловый ресурс или веб-сайт в локальной корпоративной сети.
Для начала, на что нужно обратить внимание, это на то, что в групповых политиках, применяемых к компьютерам, не должен быть задействован параметр блокирующий работу механизма авто-обновления. Это параметр Turn off Automatic Root Certificates Update в разделе Computer Configuration > Administrative Templates > System > Internet Communication Management > Internet Communication settings. Нам потребуется, чтобы этот параметр был Выключен, либо просто Не настроен.
Если взглянуть на хранилище сертификатов TrustedRootCA в разделе Локальный компьютер, то на системах, не имеющих прямого доступа в Интернет, набор сертификатов будет прямо так скажем небольшой:
В статье KB2677070 — Доступно автоматическое обновление отозванных сертификатов для систем Windows Vista, Windows Server 2008, Windows 7 и Windows Server 2008 R2 можно найти актуальные на данный момент ссылки на файлы, прямой доступ к которым (минуя прокси с требованием аутентификации) может потребоваться для функций авто-обновления:
Но вариант прямого доступа в рамках данной заметки мы больше упоминать не станем и рассмотрим пример локализации процесса обновления в соответствии с ранее упомянутой статьёй.
Первое, что нам нужно сделать, это рассмотреть варианты получения актуальных файлов набора корневых сертификатов для их дальнейшего распространения внутри локальной сети.
Попробуем на компьютере имеющем прямое подключение к Интернету выполнить команду генерации SST файла, который будет в себе содержать актуальный набор файлов корневых сертификатов. В данном случае на компьютере с Windows 10 выполняется команда, вызывающая входящую в базовый состав ОС утилиту Certutil, которая в свою очередь обращается к веб-узлу Microsoft и создаёт по указанному нами пути SST файл:
Полученный в результате выполнения команды SST-файл по сути является контейнером, который содержит в себе все сертификаты для нужного нам обновления системы. Этот контейнер легко открывается в Проводнике Windows загружая ассоциированную с расширением файла оснастку управления сертификатами.
Этот файл удобно использовать, например, когда из всего подмножества доступных сертификатов нужно выбрать лишь некоторый набор и выгрузить их в отдельный SST файл для дальнейшей загрузки, например, с помощью консоли управления локальными сертификатами или с помощью консоли управления групповыми политиками (для импорта в какую-либо доменную политику через параметр Computer Configuration > Policies > Windows Settings > Security Settings > Public Key Policies > Trusted Root Certification Authorities).
Однако для интересующего нас способа распространения корневых сертификатов, с помощью модификации работы механизма авто-обновления на конечных клиентских компьютерах, нам потребуется несколько иное представление множества актуальных корневых сертификатов. Получить его можно с помощью всё той же утилиты Certutil, но уже с другим набором ключей.
В нашем примере в качестве локального источника распространения будет использована общая сетевая папка на файловом сервере. И здесь важно обратить внимание на то, что при подготовке такой папки обязательно нужно ограничивать доступ на запись, чтобы не получилось так, что любой желающий сможет модифицировать набор корневых сертификатов, которые потом будут «разливаться» по множеству компьютеров.
Ключи -f -f используются для форсированного обновления всех файлов в каталоге назначения.
В результате выполнения команды в указанной нами сетевой папке появится множество файлов общим объемом примерно в пол мегабайта:
Согласно ранее упомянутой статьи , назначение файлов следующее:
- Файл authrootstl.cab содержит сторонние списки доверия сертификатов;
- Файл disallowedcertstl.cab содержит список доверия сертификатов с недоверенными сертификатами;
- Файл disallowedcert.sst содержит хранилище сериализованных сертификатов, включая недоверенные сертификаты;
- Файлы с именами типа thumbprint.crt содержат сторонние корневые сертификаты.
Итак, файлы необходимые для работы механизма авто-обновления получены, и мы теперь переходим к реализации изменения схемы работы этого самого механизма. Для этого, как всегда, нам на помощь приходят доменные групповые политики Active Directory (GPO), хотя можно использовать и другие инструменты централизованного управления, весь всё, что нам нужно сделать на всех компьютерах — это изменить, вернее добавить, всего один параметр реестра RootDirURL в ветке HKLM\Software\Microsoft\SystemCertificates\AuthRoot\AutoUpdate , который и определит путь к нашему сетевому каталогу, в котором мы ранее разместили набор файлов корневых сертификатов.
Говоря о настройке GPO, для реализации поставленной задачи, опять же, можно использовать разные варианты. Например, есть «олд-скульный» вариант с созданием собственного шаблона групповой политики, так как это описано в уже знакомой нам статье . Для этого создадим файл в формате административного шаблона GPO (ADM), например, с именем RootCAUpdateLocalPath.adm и содержимым:
Скопируем этот файл на контроллер домена в каталог %SystemRoot%\inf (как правило, это каталог C:\Windows\inf ). После этого перейдём в редактор доменных групповых политик и создадим отдельную новую политику, открыв затем её на редактирование. В разделе Computer Configuration > Administrative Templates… откроем контекстное меню и выберем пункт подключения нового шаблона политик Add/Remove Templates
В открывшееся окне с помощью кнопки обзора выберем ранее добавленный файл %SystemRoot%\inf\RootCAUpdateLocalPath.adm , и после того, как шаблон появится в списке, нажмём Close.
После проделанного действия в разделе Configuration > Administrative Templates > Classic Administrative Templates (ADM) появится группа Windows AutoUpdate Settings, в которой будет доступен единственный параметр URL address to be used instead of default ctldl.windowsupdate.com
Откроем этот параметр и введём путь к локальному ресурсу, на котором мы расположили загруженные ранее файлы обновления, в формате http://server1/folder или file://\\server1\folder ,
например file://\\FILE-SERVER\SHARE\RootCAupd\GPO-Deployment
Сохраним проделанные изменения и применим созданную политику к доменному контейнеру, в котором расположены целевые компьютеры. Однако рассмотренный метод настройки GPO имеет ряд недостатков и именно поэтому я назвал его «олд-скульным».
Другой, более современный и более продвинутый метод настройки реестра клиентов — это использование Group Policy Preferences (GPP). При таком варианте мы можем создать соответствующий объект GPP в разделе групповой политики Computer Configuration > Preferences > Registry с обновлением параметра (Action: Update) реестра RootDirURL (тип значения REG_SZ)
При необходимости можем для созданного параметра GPP включить гибкий механизм нацеливания (Закладка Common > Опция Item-level targeting) на конкретный компьютер или группу компьютеров для предварительного тестирования того, что у нас в конечном итоге получиться после применения групповых политик.
Разумеется, нужно выбрать какой-то один вариант, либо с подключением собственного ADM-шаблона, либо с использованием GPP.
После настройки групповых политик на любом подопытном клиентском компьютере выполним обновление командой gpupdate /force c последующей перезагрузкой. После загрузки системы проверим в реестре наличие созданного ключа и попробуем проверить наличие факта обновления хранилища корневых сертификатов. Для проверки воспользуемся простым но действенным примером описанным в заметке Trusted Roots and Disallowed Certificates .
Для примера посмотрим, есть ли в хранилище сертификатов компьютера корневой сертификат, использованный для выпуска сертификата, который установлен на сайте с именем buypass.no (но на сам сайт пока не переходим :)).
Сделать это удобнее всего с помощью средств PowerShell:
С большой долей вероятности у нас не окажется такого корневого сертификата. Если так, то откроем Internet Explorer и обратимся к URL https://buypass.no . И если настроенный нами механизм автоматического обновления корневых сертификатов работает успешно, то в event-логе Windows Application при это появится событие c источником (Source) CAPI2, свидетельствующее об успешной загрузке нового корневого сертификата :
После этого мы можем снова выполнить указанную ранее команду запроса к хранилищу корневых сертификатов и увидим, что теперь в нём действительно появился новый корневой сертификат, именно тот который фигурировал в событии event-лога Windows:
Как видим, механизм авто-обновления работает и теперь всё, что остаётся, это организовать поддержку в актуальном состоянии файлов в сетевой папке, запланировав, например на ночное время, ежесуточное выполнение задания обновления ранее упомянутой командой:
Дополнительные источники информации: