Я выполнил шаги , перечисленные здесь , чтобы создать новый закрытый ключ и сертификат.Теперь я пытаюсь объединить их в файл .pfx.
OpenSSL должен иметь возможность читать как закрытый ключ, так и сертификат из одного файла, и, согласно man man
docs, также должен бытьумеет читать с stdin
.Однако, похоже, это не работает для меня.
В Mac OS X 10.14.3 и openssl version
выдает "LibreSSL 2.6.5".
Я объединил свой сертификат и ключв один файл (называемый «комбинированный.pem»).Я сделал это с помощью следующих команд:
$ openssl genrsa -out private.key 2048
$ openssl req -new -x509 -key private.key -out public.cer -days 365
$ cat public.cer >> combined.pem
$ cat private.key >> combined.pem
Для справки combined.pem
выглядит примерно так:
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----
...
-----END RSA PRIVATE KEY-----
Когда я запускаю следующую команду, все работает нормально:
$ openssl pkcs12 -export -out x509.pfx -in combined.pem
Когда я запускаю эту команду, я получаю сообщение об ошибке:
$ openssl pkcs12 -export -out x509.pfx < combined.pem
unable to load certificates
Я также пытался:
$ cat combined.pem | openssl pkcs12 -export -out x509.pfx
unable to load certificates
Чего мне не хватает?Разве OpenSSL не может читать из stdin
для этого?
Также из man
документов:
-in file
The input file to read from, or standard input if not specified. The order doesn't matter but one private key and its corresponding certificate should
be present. If additional certificates are present, they will also be included in the PKCS#12 file.
-inkey file
File to read a private key from. If not present, a private key must be present in the input file.