Ошибка openssl/keytool: java.lang.Exception: введите не сертификат X.509

Я создал сертификат через OpenSSL

Openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/CN=nginxsvc/O=nginxsvc"

и затем создал файл PKCS#12, используя OpenSSL:

openssl pkcs12 -export -in tls.crt -inkey tls.key -out tls.p12

и после этого преобразовать его в JKS, используя

keytool -importkeystore -srckeystore tls.p12  -srcstoretype PKCS12  -destkeystore tls.jks  -deststoretype JKS

Теперь при импорте этого файла JKS через Keytool, как это

keytool -import -noprompt -trustcacerts -alias "nginxsvc" -file tls.jks -keystore "C:\Program Files\Java\jdk1.8.0_152\jre\lib\security\cacerts"

я получаю

ошибка keytool: java.lang.Exception: введите не сертификат X.509

1 ответ

Решение

-import нужен файл сертификата, а не JKS. Пытаться:

keytool -import -noprompt -trustcacerts -alias "nginxsvc" -file tls.crt -keystore "C:\Program Files\Java\jdk1.8.0_152\jre\lib\security\cacerts"
Другие вопросы по тегам