解決方法:jno_key_entry

アンガス:

Sectigoで生成された次のファイルがあります。

  1. XXX1.pem
  2. XXX1.key
  3. XXX1.csr
  4. XXX1.crt
  5. XXX1.ca

WindowsでZulu JDK 11.0.8とSpringBoot 2.2.0を使用しています。私がやろうとしていることは、SpringBootアプリでhttpsを有効にすることです。

これは、SpringBootプロパティファイルのsslプロパティです。

server.ssl.key-store-type=JKS
server.ssl.key-store=XX1.jks
server.ssl.key-store-password=password
server.ssl.key-alias=tomcat

次のコマンドを使用してキーストアを生成しました。

keytool -import -alias tomcat -file XXX1.crt -keystore XX1.jks -storepass password

アプリを実行すると、次のエラーメッセージが表示されます。

Caused by: org.apache.catalina.LifecycleException: Protocol handler start failed
    at org.apache.catalina.connector.Connector.startInternal(Connector.java:1008) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.catalina.core.StandardService.addConnector(StandardService.java:227) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    ... 17 common frames omitted
Caused by: java.lang.IllegalArgumentException: jsse.alias_no_key_entry
    at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:99) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl(AbstractJsseEndpoint.java:71) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:218) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1124) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1210) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:586) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.catalina.connector.Connector.startInternal(Connector.java:1005) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    ... 19 common frames omitted
Caused by: java.io.IOException: jsse.alias_no_key_entry
    at org.apache.tomcat.util.net.SSLUtilBase.getKeyManagers(SSLUtilBase.java:328) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.tomcat.util.net.SSLUtilBase.createSSLContext(SSLUtilBase.java:247) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:97) ~[tomcat-embed-core-9.0.27.jar:9.0.27]
    ... 25 common frames omitted

私が間違ったことは何ですか?

ありがとうございました

dave_thompson_085:

TLDR:秘密鍵が必要

多くの場合、「証明書」のあるまたは使用するSSL / TLSサーバーについて大まかに話しますが、実際には証明書だけでなく、関連する秘密鍵(常に)と関連する中間の別名「チェーン」CA証明書(通常)が必要です。 、ただしCAやクライアントによって異なる場合があります)。証明書またはチェーンのみをインポートkeytool -importするエイリアスです-importcertこれにより、証明書/チェーンが既存の privateKeyEntryに追加されるか、trustedCertEntryが作成されます。あなたの場合、キーストアにはまだ秘密鍵が含まれていなかったため、keytoolはtrustedCertEntryを作成しました。これが、Tomcatが設定されたエイリアスが「no_key_entry」であると不平を言う理由です。必要に応じて、privateKeyEntry。

「PEMをJavaキーストアに変換」または「PEMをJKSに変換」(および「PEMをPKCS12に変換」も検索)を検索すると、過去10年間に尋ねられた数百の質問が見つかります。 :

  1. OpenSSLを持っている、または入手している場合は、を使用openssl pkcs12 -exportして、証明書、秘密鍵、およびチェーン(CA)PEM形式のファイルをPKCS12形式のファイルに結合します。最新のJava(2017以降)では、常にPKCS12を直接キーストアとして使用できます。古いバージョンではこれを実行できる場合がありますが、PKCS12をkeytool -importkeystore(ではない-import[cert]を使用してJKSに変換する必要があり、古いアンサーは以前の要件を反映しています。必要に応じて、PEM形式のファイルを、十分に安全でOpenSSLを備えた別のマシンに移動またはコピーしてから、PKCS12を移動またはコピーして戻すことができます。

    OpenSSLは、ほぼすべてのLinuxと他の多くのUnixに標準で付属していますが、Windowsには付属していません。私はhttp://slproweb.com/products/Win32OpenSSL.htmlが最もよく維持されていると考えるいくつかのソースからWindows用にそれを入手できます

  2. KeyStore Explorerをダウンロードして使用します

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

非推奨のapt-keyを解決する方法は?

分類Dev

gpgを解決する方法:無効なオプション "--full-generate-key"?

分類Dev

WebappClassLoaderBaseを解決する方法

分類Dev

SqlIntegrityConstraintViolationExceptionを解決する方法?

分類Dev

ArrayIndexOutofBoundsExceptionを解決する方法

分類Dev

onTouchListenerandroidを解決する方法

分類Dev

StackOverflowExceptionを解決する方法

分類Dev

ArrayIndexOfBoundsExceptionを解決する方法

分類Dev

IllegalFormatConversionExceptionを解決する方法

分類Dev

JSONExceptionを解決する方法

分類Dev

ModuleNotFoundErrorを解決する方法

分類Dev

<BEA-101366>の解決方法

分類Dev

解決方法「メソッドvalues()はタイプList <Map.Entry <String、String >>に対して未定義です」

分類Dev

エラー「「本番」環境の「secret_key_base」がない」を解決する方法(Rails 4.1)

分類Dev

simple_formで未定義のメソッド `to_key 'エラーを解決する方法

分類Dev

漂白Krusaderを解決する方法は?

分類Dev

このODEを解決する方法は?

分類Dev

snakeyaml NoSuchMethodError:getStyle()を解決する方法

分類Dev

HybrisでAttributeNotSupportedExceptionを解決する方法

分類Dev

Python 3.6でUnicodeDecodeErrorを解決する方法

分類Dev

AndroidでStringIndexOutOfBoundsExceptionを解決する方法

分類Dev

JavaでNoSuchElementExceptionを解決する方法

分類Dev

JavaでNoSuchElementExceptionを解決する方法

分類Dev

「TypeError:process.getuid is not a function」の解決方法

分類Dev

この例外を解決する方法

分類Dev

LambdaMetafactoryから「AbstractMethodError」を解決する方法

分類Dev

Npmエラー-WindowsNT-解決方法

分類Dev

Npmエラー-WindowsNT-解決方法

分類Dev

解決で$ routeParamsを使用する方法

Related 関連記事

  1. 1

    非推奨のapt-keyを解決する方法は?

  2. 2

    gpgを解決する方法:無効なオプション "--full-generate-key"?

  3. 3

    WebappClassLoaderBaseを解決する方法

  4. 4

    SqlIntegrityConstraintViolationExceptionを解決する方法?

  5. 5

    ArrayIndexOutofBoundsExceptionを解決する方法

  6. 6

    onTouchListenerandroidを解決する方法

  7. 7

    StackOverflowExceptionを解決する方法

  8. 8

    ArrayIndexOfBoundsExceptionを解決する方法

  9. 9

    IllegalFormatConversionExceptionを解決する方法

  10. 10

    JSONExceptionを解決する方法

  11. 11

    ModuleNotFoundErrorを解決する方法

  12. 12

    <BEA-101366>の解決方法

  13. 13

    解決方法「メソッドvalues()はタイプList <Map.Entry <String、String >>に対して未定義です」

  14. 14

    エラー「「本番」環境の「secret_key_base」がない」を解決する方法(Rails 4.1)

  15. 15

    simple_formで未定義のメソッド `to_key 'エラーを解決する方法

  16. 16

    漂白Krusaderを解決する方法は?

  17. 17

    このODEを解決する方法は?

  18. 18

    snakeyaml NoSuchMethodError:getStyle()を解決する方法

  19. 19

    HybrisでAttributeNotSupportedExceptionを解決する方法

  20. 20

    Python 3.6でUnicodeDecodeErrorを解決する方法

  21. 21

    AndroidでStringIndexOutOfBoundsExceptionを解決する方法

  22. 22

    JavaでNoSuchElementExceptionを解決する方法

  23. 23

    JavaでNoSuchElementExceptionを解決する方法

  24. 24

    「TypeError:process.getuid is not a function」の解決方法

  25. 25

    この例外を解決する方法

  26. 26

    LambdaMetafactoryから「AbstractMethodError」を解決する方法

  27. 27

    Npmエラー-WindowsNT-解決方法

  28. 28

    Npmエラー-WindowsNT-解決方法

  29. 29

    解決で$ routeParamsを使用する方法

ホットタグ

アーカイブ