Конвертация PFX-сертификата в CRT и KEY

PFX (PKCS#12) удобен для переноса: сертификат и ключ в одном зашифрованном файле. На сервере чаще нужны отдельные .crt и .key. OpenSSL решает это за две команды.

Что понадобится

  • OpenSSL в PATH
  • PFX-файл с сертификатом и ключом
  • Пароль от PFX

Извлечь сертификат

openssl pkcs12 -in certificate2024.pfx -clcerts -nokeys -out example_com.crt

Флаг -clcerts берёт клиентский сертификат; -nokeys исключает ключ из вывода.

Извлечь приватный ключ

Два шага (если нужен отдельный расшифрованный ключ):

openssl pkcs12 -in certificate2024.pfx -nocerts -out server.key
openssl rsa -in server.key -out example_com.key

Один шаг (ключ сразу без шифрования на диске — только на доверенной машине):

openssl pkcs12 -in certificate2024.pfx -nodes -nocerts -out example_com.key

Результат

Файл Содержимое
example_com.crt Сертификат (PEM)
example_com.key Приватный ключ (PEM)

Импортируйте пару в веб-сервер или балансировщик. Храните .key с минимальными правами (chmod 600), не кладите в Git.

На практике

Если nginx ругается на «key values mismatch» — в PFX мог быть промежуточный CA, а не leaf. Добавьте -clcerts при извлечении cert или проверьте цепочку через openssl pkcs12 -in file.pfx -info -noout.

Об авторе Sergey Bezpalov

Senior Solutions Architect с более чем 20-летним опытом в инженерном лидерстве в ИТ: центры обработки данных, гибридные облака, сети, информационная безопасность, VoIP, унифицированные коммуникации (UC/UCS). Работает с кросс-функциональными командами и техническими специалистами. Solutions Architect, ИТ-советник, AI-евангелист, предприниматель.
Запись опубликована в рубрике Quick Tip с метками , , , . Добавьте в закладки постоянную ссылку.

Добавить комментарий

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.