у меня есть mycert.jks только файл. Теперь мне нужно извлечь и сгенерировать .key и .crt файл и используйте его на сервере apache httpd.
SSLCertificateFile /usr/local/apache2/conf/ssl.crt/server.crt
SSLCertificateKeyFile /usr/local/apache2/conf/ssl.key/server.key
Может ли кто-нибудь перечислить все шаги, чтобы это сделать. Я искал, но нет конкретного примера, чтобы понять, смешанные и согласованные шаги.
Пожалуйста, предложите!
[РЕДАКТИРОВАТЬ] Получение ошибки после выполнения шагов из нижеприведенного ответа.
8/21/2015 9:07 PM] Sohan Bafna:
[Fri Aug 21 15:32:03.008511 2015] [ssl:emerg] [pid 14:tid 140151694997376] AH02562: Failed to configure certificate 0.0.0.0:4545:0 (with chain), check /home/certs/smp_c
ert_key_store.crt
[Fri Aug 21 15:32:03.008913 2015] [ssl:emerg] [pid 14:tid 140151694997376] SSL Library Error: error:0906D06C:PEM routines:PEM_read_bio:no start line (Expecting: TRUSTED
CERTIFICATE) -- Bad file contents or format - or even just a forgotten SSLCertificateKeyFile?
[Fri Aug 21 15:32:03.008959 2015] [ssl:emerg] [pid 14:tid 140151694997376] SSL Library Error: error:140DC009:SSL routines:SSL_CTX_use_certificate_chain_file:PEM lib
.jks - это хранилище ключей, которое относится к Java.
использовать keytool бинарный из Java.
экспортировать .crt:
keytool -export -alias mydomain -file mydomain.der -keystore mycert.jks
преобразовать сертификат в PEM:
openssl x509 -inform der -in mydomain.der -out certificate.pem
экспортировать ключ:
keytool -importkeystore -srckeystore mycert.jks -destkeystore keystore.p12 -deststoretype PKCS12
концерт PKCS12 ключ к незашифрованному PEM:
openssl pkcs12 -in keystore.p12 -nodes -nocerts -out mydomain.key
кредиты:
Вот что я делаю,
Сначала экспортируйте ключ:
keytool -importkeystore -srckeystore mycert.jks -destkeystore keystore.p12 -deststoretype PKCS12
Для файла сертификата apache ssl вам нужен только сертификат:
openssl pkcs12 -in keystore.p12 -nokeys -out my_key_store.crt
Для файла ключей ssl вам понадобятся только ключи:
openssl pkcs12 -in keystore.p12 -nocerts -nodes -out my_store.key
Нашел здесь ответ:
Было показано, как создать crt из файла хранилища ключей jks в Chrome в Windows:
перейдите по URL-адресу в браузере, который использует jks с красной линией, и слева будет символ блокировки
при нажатии на незащищенную часть открывается информационный диалог
щелкните сертификат (недействительный), и когда он откроется, щелкните Подробнее
нажмите на копировать в файл ... и следуйте инструкциям
В конце у вас есть файл хранилища ключей в crt