IIS: SSL (Создаём *.PFX из *.CRT и *.KEY)

ssl Задача: Установить купленный SSL сертификат  в IIS.

История. Для приобретения сертификата нужно сформировать CSR запрос. Открываю консоль IIS 8.5 иду в «servers sertificate» и генерирую certificate request, длинной не меньше 2048 bit. У одного из хостеров копирую его в форму генерации SSL сертификата и вижу ошибки.  Не принимает запрос, говорит не верный и всё. Пробовал разные длинны ключа. Не очень хотелось генерировать CSR запрос на стороне. Так как не секюрно и проблем с приватным ключом меньше. НО! Пришлось использовать форму хостера (далее расскажу почему была проблема) и там создать CSR запрос и получить приватный ключ. СОХРАНИТЕ ЭТОТ КЛЮЧ в текстовом файлике *.key (пригодится!) Далее валидация домена при помощи кода на почту…. И вот у меня есть сертификат .crt.

Вот тут началось… из-за незнания! Что делать с приватным ключом. Его нужно сохранить в MyDomain.key и беречь! Это залог безопасности того, что будете оберегать SSL ключём! Вот по этому и не хотелось генерировать csr и получать приватный ключ на стороне. Далее необходимо добавить ключь и сертификат в хранилище Windows server. Windows примет сертификат, но без приватного ключа он бесполезен, а импорт возможен в спец формате *.pfx. Это запароленный бинарь с ключём и сертификатом. Так вот как создать этот бинарь.

Создаём *.PFX из *.CRT и *.KEY для импорта сертификата.

Можно сделать несколькими способами. Нам нужна утилита которая сконвертирует по сути текстовые файлы crt и key в бинарь.

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

openssl.exe для Windows можно взять  тут. Далее

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

pvk2pfx.exe это компонент SDK и чтобы его получит, нужно скачать SDK 10, Установить и мотом использовать pvk2pfx.exe.

Я пошёл по 1му пути. А потом всё просто. Открываем оснастку управления сертификатами

RUN > MMC > FIle> Add Remove Snap -In…  и импортируем наш pfx файл в нужное нам хранилище!

А когда сертификат и ключ в хранилище, тогда всё хорошо! Открываем IIS — свойства сайта, и биндим наш SSL на 443 порт. Всё.

А, да.. Причина по которой хостер не принимал сертификат это CSR запрос sha1. Который деприкейтнут! Проверить валидность CSR запроса можно тутКак создать CSR запрос с SHA2 (SHA256)в Windows и тут

CSR SHA2

 

 

 

 

P.S Ранее рассказывал как получить бесплатный сертификат на 1 или 3 года. Но на китайцев наехали и они прикрыли китайскую лавочку с щедрым аттракционом по раздаче SSL.  Но вот тут вроде есть триальные на 90 дней startssl.com и comodo.com

Об авторе Alex

Работаю Администратором. В основном Windows. Специализируюсь на Hyper-V, поддержке продуктивных сред и во всём помогает POSH. Малость Sharepoint. Чуть чуть работаю с железом
Запись опубликована в рубрике Windows, Администрирование, Безопасность. Добавьте в закладки постоянную ссылку.

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