Где хранятся сертификаты в windows системах
Добрый день уважаемые читатели блога Pyatilistnik.org, меня уже на протяжении этого месяца, несколько раз спрашивали в электронной почте, где хранятся сертификаты в windows системах, ниже я подробнейшим образом вам расскажу про этот вопрос, рассмотрим структуру хранилища, как находить сертификаты и где вы это можете использовать на практике, особенно это интересно будет для тех людей, кто часто пользуется ЭЦП (электронно цифровой подписью)
Для чего знать где хранятся сертификаты в windows
Давайте я вам приведу основные причины, по которым вы захотите обладать этим знанием:
- Вам необходимо посмотреть или установить корневой сертификат
- Вам необходимо посмотреть или установить личный сертификат
- Любознательность
Ранее я вам рассказывал какие бывают сертификаты и где вы их можете получить и применять, советую ознакомиться с данной статьей, так как информация изложенная в ней является фундаментальной в этой теме.
Во всех операционных системах начиная с Windows Vista и вплоть до Windows 10 Redstone 2 сертификаты хранятся в одном месте, неком таком контейнере, который разбит на две части, один для пользователя, а второй для компьютера.
В большинстве случаев в Windows поменять те или иные настройки вы можете через mmc оснастки, и хранилище сертификатов не исключение. И так нажимаем комбинацию клавиш WIN+R и в открывшемся окне выполнить, пишем mmc.
Теперь в пустой mmc оснастке, вы нажимаете меню Файл и выбираете Добавить или удалить оснастку (сочетание клавиш CTRL+M)
В окне Добавление и удаление оснасток, в поле Доступные оснастки ищем Сертификаты и жмем кнопку Добавить.
Тут в диспетчере сертификатов, вы можете добавить оснастки для:
- моей учетной записи пользователя
- учетной записи службы
- учетной записи компьютера
Я обычно добавляю для учетной записи пользователя
и компьютера
У компьютера есть еще дополнительные настройки, это либо локальный компьютер либо удаленный (в сети), выбираем текущий и жмем готово.
В итоге у меня получилось вот такая картина.
Сразу сохраним созданную оснастку, чтобы в следующий раз не делать эти шаги. Идем в меню Файл > Сохранить как.
Задаем место сохранения и все.
Как вы видите консоль хранилище сертификатов, я в своем примере вам показываю на Windows 10 Redstone, уверяю вас интерфейс окна везде одинаковый. Как я ранее писал тут две области Сертификаты - текущий пользователь и Сертификаты (локальный компьютер)
Сертификаты - текущий пользователь
Данная область содержит вот такие папки:
- Личное > сюда попадают личные сертификаты (открытые или закрытые ключи), которые вы устанавливаете с различных рутокенов или etoken
- Доверительные корневые центры сертификации > это сертификаты центров сертификации, доверяя им вы автоматически доверяете всем выпущенным ими сертификатам, нужны для автоматической проверки большинства сертификатов в мире. Данный список используется при цепочках построения доверительных отношений между CA, обновляется он в месте с обновлениями Windows.
- Доверительные отношения в предприятии
- Промежуточные центры сертификации
- Объект пользователя Active Directory
- Доверительные издатели
- Сертификаты, к которым нет доверия
- Сторонние корневые центры сертификации
- Доверенные лица
- Поставщики сертификатов проверки подлинности клиентов
- Local NonRemovable Certificates
- Доверительные корневые сертификаты смарт-карты
В папке личное, по умолчанию сертификатов нет, если вы только их не установили. Установка может быть как с токена или путем запроса или импорта сертификата.
В мастере импортирования вы жмете далее.
далее у вас должен быть сертификат в формате:
- PKCS # 12 (.PFX, .P12)
- Стандарт Cryprograhic Message Syntax - сертификаты PKCS #7 (.p7b)
- Хранилище сериализованных сертификатов (.SST)
На вкладке доверенные центры сертификации, вы увидите внушительный список корневых сертификатов крупнейших издателей, благодаря им ваш браузер доверяет большинству сертификатов на сайтах, так как если вы доверяете корневому, значит и всем кому она выдал.
Двойным щелчком вы можете посмотреть состав сертификата.
Из действий вы их можете только экспортировать, чтобы потом переустановить на другом компьютере.
Экспорт идет в самые распространенные форматы.
Еще интересным будет список сертификатов, которые уже отозвали или они просочились.
Список пунктов у сертификатов для компьютера, слегка отличается и имеет вот такие дополнительные пункты:
- AAD Token Issue
- Windows Live ID Token
- Доверенные устройства
- Homegroup Machine Certificates
Думаю у вас теперь не встанет вопрос, где хранятся сертификаты в windows и вы легко сможете найти и корневые сертификаты и открытые ключи.
certmgr.msc и сразу попадаем в нужную консоль
Как я и писал, в сертификаты компьютера вы так не попадете.
А где они реально сами лежат в файлах, реестре?
Спасибо! Всё описал и ничего лишнего!
Спасибо!
Всегда, рад помочь.
Интересует некий нюанс экспорта/импорта сертификатов.
Если есть необходимость ВСЕ установленные сертификаты перенести на этот же комп, после переустановки системы. Т.е. групповой экспорт/импорт.
Опять же интересует такая вещь, что если существуют «общесистемные» сертификаты (т.е. которые уже есть в винде при установке, по умолчанию), то наверное их не надо экспортировать/импортировать, потому что в старой системе могут оказаться отозванные, просроченные и пр. устаревшие сертификаты.
Т.е как вытянуть только все свои, установленные пользователем сертификаты, за один проход?
Через графический интерфейс ни как, попробуйте воспользоваться Powershell комапдлетами.
Спасибо.
Так и остался не отвеченным вопрос, где они физически находятся…
Win 7 x64
Папка: C:\Users\sa-024\AppData\Roaming\Microsoft\SystemCertificates\My
Реестр: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Crypto Pro\Settings\Users\S-1-5-21-2466579141-2672595957-3228453836-1000\Keys
Только пока не нашел, где доверенные сертификаты лежат.
Спасибо за пошаговую инструкцию . Сейчас буду пытатьсяработать с сертифкатом .
Дорогие мои!
Не тратьте время на пустое!
Не надо их переносить и искать физически.
За исключением случаев переноса сертификата для особых целей.
Совет специалиста.
Во время работы в Интернете, откройте Консоль как показано в этой статье
и удалите ничего не опасаясь все без исключения сертификаты!
Далее посетите сайты
_microsoft.com
_google.com
_yahoo.com
И все нужные сертификаты с обновленным Сроком действия снова вернутся на ваш Компьютер!
Вопрос. Укажите, пожалуйста, где же хранятся сертификаты в Windows 10?
Какие именно, личные или промежуточные, корневые?
библиотека Python response при обращении к https:\\ требует указания в качестве параметра пути к сертификатам. Какой путь надо указать для windows 10 и windows server 2012?
Очень помогла статья!!!Спасибо вам огромное за вашу работу!
Здравствуйте, а сертификаты безопасности, что с ними делать? а то у меня не работает и-за них Директ Коммандер.
В каком формате или виде они вас, опишите не совсем понятно
на телефоне как удалить?плиис,помогите
Что за телефон?
всем любопытным ответ на вопрос:
физически они находятся в реестре
Большое спасибо, что действительно помогли мне 🙂
гениальный ответ Дениса заставляет прослезится, вопрос был ГДЕ находятся сертификаты. То что они в реестре и так известно
Полезная статья, спасибо!)
Рад, что вам подошло
Спасибо!
Добрый день.
Попробовал скопировать сертификат из реестра одного компьютера на другой.
При экспорте с закрытым ключем запрашивает пароль. Ввожу пароль из цифр.
Однако при импорте этого ключа пароль не принимается. Пишет неправильный пароль. Что не так и как скопировать сертификат с закрытым ключом ?
Вообще странно, если пароль вы установили, то измениться он не мог. ОС какая у вас?
@echo off
setlocal
:start
echo. # Export Certificates CryptoPro and SystemCertificatesPK to .Reg Files #
echo. Export Certificates CryptoPro — 1
echo. Export Certificates SystemCertificatesPK — 2
echo.
set /p choice= Enter the Number:
rem if not ‘%choice%’==» set choice=%choice:~0;1%
if ‘%choice%’==’1’ goto 1
if ‘%choice%’==’2’ goto 2
if not ‘%choice%’==» echo «%choice%» Bad points
cls
goto start
:1
mkdir %systemdrive%\Cert_User\%username%
set «exec=wmic useraccount where name=»%username%» get sid /value»
for /f %%i in (‘ «%exec%» ‘) do 1>nul set «%%i»
reg export «HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crypto Pro\Settings\Users\%sid%\Keys» %systemdrive%\Cert_User\%username%_Cert_CryptoPro.reg /y
start %systemdrive%\Cert_User\%username%
cls
goto start
:2
mkdir %systemdrive%\Cert_User\SystemCertificates
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\ACRS» %systemdrive%\Cert_User\SystemCertificates\ACRS_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\ADDRESSBOOK» %systemdrive%\Cert_User\SystemCertificates\ADDRESSBOOK_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\AuthRoot» %systemdrive%\Cert_User\SystemCertificates\AuthRoot_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\CA» %systemdrive%\Cert_User\SystemCertificates\CA_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\ClientAuthIssuer» %systemdrive%\Cert_User\SystemCertificates\ClientAuthIssuer_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\Disallowed» %systemdrive%\Cert_User\SystemCertificates\Disallowed_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\Local NonRemovable Certificates» %systemdrive%\Cert_User\SystemCertificates\Local_NonRemovable_Certificates_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\MSIEHistoryJournal» %systemdrive%\Cert_User\SystemCertificates\MSIEHistoryJournal_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\My» %systemdrive%\Cert_User\SystemCertificates\My_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\REQUEST» %systemdrive%\Cert_User\SystemCertificates\REQUEST_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\Root» %systemdrive%\Cert_User\SystemCertificates\Root_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\SmartCardRoot» %systemdrive%\Cert_User\SystemCertificates\SmartCardRoot_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\trust» %systemdrive%\Cert_User\SystemCertificates\trust_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\TrustedPeople» %systemdrive%\Cert_User\SystemCertificates\TrustedPeople_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\TrustedPublisher» %systemdrive%\Cert_User\SystemCertificates\TrustedPublisher_Cert.reg /y
reg export «HKEY_CURRENT_USER\SOFTWARE\Microsoft\SystemCertificates\UserDS» %systemdrive%\Cert_User\SystemCertificates\UserDS_Cert.reg /y
start %systemdrive%\Cert_User\SystemCertificates
cls
goto start
Ну так ГДЕ корневые сертификаты находятся на локальном диске физически? Это лишь консоль (и за неё спасибо), но всё же, ГДЕ сами файлы оказываются… Надо искать через программу обнаружитель изменений, типа «Простой наблюдатель»… Или через поисковик Виндовс просто найти по расширению.
В реестре
C:\Users\имя вашего пользователя\AppData\Roaming\Microsoft\SystemCertificates\My
Подскажите, есть ли возможность экспортировать сертификат в формат.sst? В мастере экспорта этот пункт неактивен