Из URL вашего сервера CA я буду предполагать, что вы используете Microsoft CA.
Партнер отправил вам CSR. Это означает, что у них есть закрытый ключ по их местонахождению, поэтому у вас нет причин создавать его для них - при условии, что вы имеете в виду keyfile .
Все, что вам нужно сделать, это подписать CSR с вашим Microsoft CA и экспортировать сертификат в виде файла PEM.
Как только вы вернули сертификат партнеру, он сможет его установить. Если это означает, что им нужно связать сертификат с закрытым ключом и создать файл PKCS # 12, то пусть будет так; но это задача для них, а не для вас, поскольку вы не хотите обрабатывать их закрытый ключ.
Чтобы уточнить команду OpenSSL, на всякий случай вам нужно объяснить это вашей партнерской организации:
openssl pkcs12
сообщает утилите, что вы работаете с файлами PKCS # 12;
-certfile cert-intermediaire.cer
является подчиненным (или промежуточным) сертификатом CA. Это сертификат вашего Microsoft CA. Если у вас есть трехуровневая PKI, просто добавьте дополнительные параметры -certfile
, чтобы охватить все ваши сертификаты CA. Если у вас одноуровневая PKI, удалите эту или следующую опцию (оба -certfile
)
-certfile cert-racine.cer
- сертификат корневого ЦС (сертификат, подписавший сертификат вашего ЦС). Обычно нет необходимости отправлять этот сертификат в файл PKCS # 12, так как ваш партнер должен был получить и установить его с помощью более формального процесса, который должен включать проверку подлинности файла и достоверности PKI вашей организации. С другой стороны, при отправке нет никакого вреда.
-in certificat-ssl.cer
- это сертификат, который вы сгенерировали для них с помощью своего CA;
-inkey cle-privee.key
- это закрытый ключ, который должны храниться только у ваших партнеров (именно поэтому они должны выполнять эту команду);
-export
сообщает утилите, что она экспортирует новый файл PKCS # 12;
-out certificat-ssl.pfx
- это имя файла, в который вы экспортируете.