Как сделать pfx файл сертификата

Обновлено: 05.07.2024

У меня есть два отдельных файла: сертификат (.cer или pem) и закрытый ключ (.crt), но IIS принимает только файлы .pfx.

Я, очевидно, установил сертификат, и он доступен в диспетчере сертификатов (mmc), но когда я выбираю мастер экспорта сертификатов, я не могу выбрать формат PFX (он неактивен)

правда, но его ответ не ясен и ничего не исправляет в моем случае Openssl совершенно не нужен почти во всех случаях. Просто добавил мой ответ (который я создаю для записи в блоге). Ирония в том, что когда вы генерируете CSR, как задумано, вам, вероятно, даже не понадобится PFX.

Вам нужно будет использовать openssl.

openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt

Файл ключа - это просто текстовый файл с вашим закрытым ключом.

Если у вас есть корневой CA и промежуточные сертификаты, включите их, используя несколько -in параметров

openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt -in intermediate.crt -in rootca.crt

Вы можете установить openssl отсюда: openssl

«Файл ключа - это просто текстовый файл с вашим закрытым ключом». Правда, кроме случаев, когда это не так. Спасибо, я также добавлю, если у вас есть корневой CA или промежуточный сертификат, вы можете добавить его, openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt -in intermediate.crt -in rootca.crt Сделал работу за меня. Как небольшое замечание, для запуска этого на компьютере с Windows необходимо запустить openssl в командной строке администратора. Где вы берете файл ключа? Я получил сертификат SSL, но нигде не вижу ключевой файл. Только что получил файл p7b и кучу файлов * .crt.

Утилита командной строки Microsoft Pvk2Pfx, кажется, обладает необходимой вам функциональностью:

C: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ 10.0.15063.0 \ x64 \ pvk2pfx.exe

Если вы ищете Windows GUI, проверьте DigiCert. Я просто использовал это, и это было довольно просто.

На вкладке SSL я сначала импортировал сертификат. Затем, выбрав сертификат, я смог экспортировать его как PFX, как с ключом, так и без него.

Когда я делаю это, он говорит мне, что у меня нет импортированного закрытого ключа на моем компьютере. Что является правдой. @NielsBrinch Когда я это делаю, мне также говорят, что у меня нет импортированного закрытого ключа на моем компьютере. Ожидайте, что это ложно, он находится в той же папке, что и сертификат . Я могу порекомендовать DigiCert, основываясь на многолетнем опыте работы с ними. Не забудьте включить закрытый ключ в корневой каталог DigiCertUtil.exe исполняемого файла. Проще всего скопировать его в папку сертификата.

Вам не нужно openssl или makecert или что-либо из этого. Вам также не нужен личный ключ, предоставленный вам вашим CA. Я могу почти гарантировать, что проблема в том, что вы ожидаете, что сможете использовать файлы ключей и сертификатов, предоставленные вашим ЦС, но они не основаны на «способе IIS». Я так устал видеть плохую и сложную информацию здесь, что решил написать в блоге тему и решение. Когда ты поймешь, что происходит, и увидишь, как это легко, ты захочешь меня обнять :)

На серверы с операционной системой Windows и на их веб-серверы IIS необходимо устанавливать нестандартные форматы файлов сертификата - .pfx. После выпуска сертификата, приобретенного у нас, вам доступны для скачивания файлы в формате PEM (.crt, .ca-bundle), которых может быть недостаточно для установки на Windows хостинг.

Если взять один зашифрованный файл формата .pfx, в нем хранятся сразу и приватный ключ (.key), и сертификат (.crt), и цепочка сертификатов (.ca-bundle).

Мы расскажем, как из файлов SSL-сертификата получить файлы в формате .pfx.

Попасть в SSL-панель можно из Панели клиента на нашем сайте. Перейдите в раздел Мои услуги, нажмите кнопку Детали возле сертификата.

Далее в разделе Панель управления - кнопка Открыть.

В архиве вам необходимы:

  • файл сертификата с расширением .crt
  • промежуточные сертификаты (.ca-bundle), или “цепочка сертификатов”

2. Найти приватный ключ .KEY

При генерации CSR-запроса на Windows сервере, вместе с ним был сгенерирован и сохранен на сервере приватный ключ RSA (.key). Найдите данный файл на сервере. Это необходимо для следующего шага.

3. Объединить файлы .CRT, .KEY и .CA-BUNDLE

Для того, чтобы это сделать, установите на ваш компьютер программу openssl.exe.

Откройте данную утилиту и введите команду:

pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt -certfile domain.name.ca-bundle

domain.key — имя файла с приватным ключом RSA;

domain.crt — имя файла сертификата;

domain.ca-bundle — имя файла цепочки сертификатов.

Если конвертация прошла успешно, вы увидите слово Verifying.

В случае, когда вариант, представленный выше не подходит, вы можете найти много вариантов конвертации с помощью online-сервисов в интернете. Некоторые из таких вариантов мы собрали ниже:

4. Установить сертификат на ваш веб-сервер IIS

Вы можете установить SSL-сертификат, руководствуясь нашими инструкциями:

Наша служба поддержки ответит и поможет вам в любое время в чате, если возникнут вопросы.

pfx to pem

Для чего нужно преобразование сертификатов

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

Давайте я подробнее покажу как выглядит ошибка импортирования сертификата. Во первых когда вы получаете от comodo ваш архив с сертификатами, то там будет два файла:

  • с расширением .ca-bundle
  • с расширением .crt

crt сертификат comodo

Попытавшись на сервере IIS произвести их импорт вы увидите вот такую картинку.

сертификат не содержит закрытого ключа

И тут нет ничего удивительного, так как это не pfx архив, то в нем нет нужного приватного ключа. Для его получения придется слегка постараться.

Как получить PFX ключ на IIS

нажимаем сочетание клавиш WIN+R и вводим mmc, для вызова оснастки. Я вам уже рассказывал о ее применении и удобстве для системного администратора.

Вызов mmc консоли

Далее вам необходимо через меню "Файл" добавить новую оснастку.

Добавление оснастки сертификаты компьютера

Находим сертификаты и нажимаем кнопку "Добавить"

добавление оснастки сертификаты

В следующем окне выбираем "для учетной записи компьютера"

сертификаты компьютера windows

подтверждаем, что нас интересует локальный компьютер.

локальное хранилище сертификатов

Далее находим пункт "Запросы заявок на сертификат", тут вы обнаружите ваш запрос, находите его и через правый клик экспортируете его.

Запросы заявок на сертификат

У вас откроется мастер экспорта сертификатов

Далее вы выбираете "Да, экспортировать закрытый ключ"

Ставим галку "Включить по возможности все сертификаты в путь сертификации" и начинаем наш экспорт PFX архива.

Теперь мастер экспорта, просит вас указать два раза нужный вам пароль, для защиты pfx архива.

задаем пароль на сертификат

Через кнопку обзор, указываем место сохранения вашего файла.

указываем место pfx файла

Как видим, все успешно выгружено.

Установка OpenSSL для Windows

Теперь нам необходимо наш файл pfx переделать в pem, Pem преобразовать в key:

  • с расширением .ca-bundle
  • с расширением .crt
  • key

Вы получите из этих трех файлов, нужный для импорта pfx архив. Во всем этом нам поможет утилита OpenSSL для Windows.

В итоге у вас будет архив, распакуйте его куда вам будет угодно. Далее выберите вашу папку, зажмите SHIFT и щелкните по ней правым кликом, в открывшемся контекстном меню, выберите пункт "Открыть окно команд".

openssl в windows

В результате чего у вас откроется командная строка Windows, но уже в нужной папке содержащей утилиту openssl.exe, она нам и поможет все сделать красиво.

Преобразование PFX в PEM

Теперь приступаем к получению фала в формате Pem. Положите в папку с дистрибутивом файл в формате pfx.

openssl.exe pkcs12 -in "имя вашего pfx файла" -nocerts -out key.pem

openssl.exe pkcs12 -in api.pyatilistnik.ru.pfx" -nocerts -out key.pem

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

pft to pem

В папке с дистрибутивом OpenSSL вы обнаружите файл key.pem, он нам нужен будет для следующего этапа.

Преобразование PFX в PEM

Преобразование PEM в KEY

Теперь получим файл с расширением key, для этого есть вот такая команда:

Вас попросят указать пароль от pem ключа.

Преобразование PEM в KEY

В итоге я получил закрытый ключ в формате key.

PEM to KEY

Осталась финишная прямая.

Получаем PFX ключ для импорта в IIS

Теперь когда у вас есть все составляющие, вы можете выполнить последнюю команду для создания PFX файла для IIS сервера.

openssl pkcs12 -export -out doman_com.pfx -inkey doman_com.key -in doman_com.crt -certfile doman_com.ca-bundle

Задаем пароль для pfx файла, потребуется при импортировании.

PFX ключ для импорта в IIS

В итоге вы получаете нужный вам файл, который можно загружать на ваш почтовый сервер.

полученный pfx

Что делать если нет сертификата в запросах заявок на сертификат

Бывают ситуации, что на вашем сервере по каким-то причинам, в папке запросы на сертификат, может не оказаться вашего, в этом случае вам необходимо будет перейти в этой же mmc в раздел "Личное-Сертификаты". Выбираем нужный и делаем экспорт.

Появится мастер экспорта сертификатов.

Обратите внимание, что в pfx выгрузить не получится, но это не страшно, нам подойдет и p7b, но с включенной галкой "Включить по возможности все сертификаты в путь сертификации"

p7b в pfx

Указываем путь сохраняемого файла.

p7b в pem

Видим, что все успешно выполнено.

полученный файл p7b

Преобразование p7b в pem

Попробует такое преобразование.

openssl pkcs7 -in cert.p7b -inform DER -print_certs -out cert.pem

p7b to pem-2

p7b to pem

Ну, а дальше уже по инструкции сверху. Если у вас выскочит ошибка, по типу

То наш вариант это .crt в .der и уже .der в .pem

Преобразование CRT в PEM

Кладем так же все в одну папку, файл crt вам должны были прислать вместе с ca-bundle.

Узнайте, как создать профиль сертификата, использующий полномочия сертификации для учетных данных. В этой статье освещаются конкретные сведения о профилях сертификатов обмена персональными данными (PFX). Дополнительные сведения о создании и настройке этих профилей см. в профилей сертификатов.

Диспетчер конфигурации позволяет создать профиль сертификата PFX с помощью учетных данных, выданных органом сертификата. В качестве органа сертификации можно выбрать Microsoft или Entrust. При развертывании на устройствах пользователей PFX-файлы создают сертификаты, определенные пользователем, для поддержки зашифрованного обмена данными.

Чтобы импортировать учетные данные сертификатов из существующих файлов сертификатов, см. в профилей сертификатов Import PFX.

Предварительные требования

Прежде чем приступить к созданию профиля сертификата, убедитесь, что необходимые предпосылки готовы. Дополнительные сведения см. в странице Необходимые условия для профилей сертификатов. Например, для профилей сертификатов PFX необходима роль системной роли точки регистрации сертификатов.

Создание профиля

В консоли Configuration Manager перейдите в рабочее пространство Assets and Compliance, расширьте требования Параметры, расширьте доступ к ресурсам компании, а затем выберите профили сертификатов.

На вкладке Главная лента в группе Create выберите Создать профиль сертификата.

На общей странице мастера профилей сертификатов укажите следующие сведения:

Имя. Введите уникальное имя для профиля сертификата. Можно использовать не более 256 символов.

Описание. В описании представлен обзор профиля сертификата, который помогает идентифицировать его в консоли Configuration Manager. Можно использовать не более 256 символов.

Параметр Import получает сведения из существующего сертификата для создания профиля сертификата. Дополнительные сведения см. в профилей сертификатов Import PFX.

На странице Поддерживаемые платформы выберите версии ОС, поддерживаемые этим профилем сертификата. Дополнительные сведения о поддерживаемых версиях ОС для версии Configuration Manager см. в дополнительных сведениях о поддерживаемых версиях ОС для клиентов и устройств.

На странице Власти сертификатов выберите точку регистрации сертификатов (CRP) для обработки сертификатов PFX:

  1. Основной сайт. Выберите сервер, содержащий роль CRP для ЦС.
  2. Органы сертификации. Выберите соответствующий ЦС.

Параметры на странице сертификата PFX различаются в зависимости от выбранного ЦС на общей странице:

Настройка параметров сертификата PFX для Microsoft CA

Для имени шаблона сертификата выберите шаблон сертификата.

Чтобы использовать профиль сертификата для подписи или шифрования S/MIME, вмени использование сертификата.

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

Задай формат имя субъекта как общему имени, так и полностью различаемой фамилии. Если вы не знаете, какой из них использовать, обратитесь к администратору ca.

Для альтернативного имени Subject впишите адрес электронной почты и имя принципа пользователя (UPN), соответствующие вашему ЦС.

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

Установите срок действия сертификата до срока службы сертификата.

Если в точке регистрации сертификата указаны учетные данные Active Directory, включить публикацию Active Directory.

Если выбрана одна или несколько Windows 10 поддерживаемых платформ:

Установите хранилище Windows для пользователя. (Параметр Local Computer не развертывает сертификаты и не выбирает их.)

Выберите один из следующих поставщиков служба хранилища ключей (KSP):

  • Установка в доверенный модуль платформы (TPM) при его настоящем
  • Установка в доверенный модуль платформы (TPM) в противном случае не удается
  • Установка Windows Hello для бизнеса в противном случае не удается
  • Установка в поставщике ключа служба хранилища программного обеспечения

Завершите работу мастера.

Настройка параметров сертификата PFX для службы доверить ЦС

Для конфигурации цифрового ID выберите профиль конфигурации. Администратор Entrust создает параметры конфигурации цифрового ID.

Чтобы использовать профиль сертификата для подписи или шифрования S/MIME, вмени использование сертификата.

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

Чтобы отобрать маркеры формата "Доверить субъекту" полям Configuration Manager, выберите Format.

Диалоговое окно форматирования имен сертификатов перечисляет переменные конфигурации конфигурации Доверенные цифровые удостоверения. Для каждой переменной Доверить выберите соответствующие поля Диспетчер конфигурации.

Чтобы составить карту Маркеры альтернативного имени объекта для поддерживаемых переменных LDAP, выберите Формат.

Диалоговое окно форматирования имен сертификатов перечисляет переменные конфигурации конфигурации Доверенные цифровые удостоверения. Для каждой переменной Доверить выберите соответствующую переменную LDAP.

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

Установите срок действия сертификата до срока службы сертификата.

Если в точке регистрации сертификата указаны учетные данные Active Directory, включить публикацию Active Directory.

Если выбрана одна или несколько Windows 10 поддерживаемых платформ:

Установите хранилище Windows для пользователя. (Параметр Local Computer не развертывает сертификаты и не выбирает их.)

Выберите один из следующих поставщиков служба хранилища ключей (KSP):

  • Установка в доверенный модуль платформы (TPM) при его настоящем
  • Установка в доверенный модуль платформы (TPM) в противном случае не удается
  • Установка Windows Hello для бизнеса в противном случае не удается
  • Установка в поставщике ключа служба хранилища программного обеспечения

Завершите работу мастера.

Развертывание профиля

После создания профиля сертификата он теперь доступен в узле Профилей сертификатов. Дополнительные сведения о его развертывании см. в странице Развертывание профилей доступа к ресурсам.

После выпуска сертификата в нашей SSL панели вы можете скачать файлы в формате PEM (например, .crt), которых обычно достаточно для установки сертификата на сервер. Однако бывает, что для установки необходимы файлы с расширением .pfx. Например, если вы устанавливаете сертификат на веб-сервер IIS и используете Windows хостинг.

Файлы формата PFX используются для хранения приватных ключей (.key), сертификатов (.crt) и цепочек сертификатов (.ca-bundle) в одном зашифрованном файле. Это необходимо для импорта и экспорта файлов SSL-сертификатов на Windows сервер.

Мы расскажем, как конвертировать файлы SSL-сертификата в формат .pfx.

1. Скачайте архив сертификата из SSL панели.

Для этого зайдите в вашу Панель клиента - раздел Мои услуги - кнопка Контрольная панель возле соответствующего сертификата.



В нем содержатся:

  • файл сертификата (.crt)
  • цепочка сертификатов (.ca-bundle) или “промежуточные сертификаты”

Если вы генерировали CSR-запрос на Windows сервере, в паре с ним сгенерировался и сохранился на самом сервере приватный ключ RSA (.key). Для того, чтобы пойти дальше, вам следует найти данный файл по его имени.

Если генерировали CSR-запрос в нашей SSL панели, связку ключей CSR-RSA мы отправили вам на почту в письме с темой "Your generated CSR and keys" от no-reply@sslpanel.io. В таком случае скопируйте ключ, который, начинается строчкой -----BEGIN RSA PRIVATE KEY----, в созданный на компьютере обычный текстовый документ и сохраните файл с расширением .key.

2. Объедините файлы .CRT с .KEY и .CA-BUNDLE.

Для этого установите утилиту openssl.exe для конвертации файлов.

Далее откройте установленную программу и введите команду:

pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt -certfile domain.name.ca-bundle

domain.name.key — имя файла с приватным ключом RSA;

domain.name.crt — имя файла сертификата.

domain.name.ca-bundle — имя файла цепочки сертификатов.

Итогом успешной конвертации будет появление слова Verifying.

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

Читайте также: