web-dev-qa-db-ja.com

Spring Boot-SSL証明書を有効にして構成する

アプリケーションでSSLを有効にするために、この証明書/ファイルを持っています:

certificates

Spring BootでHTTPSを有効にするには、次のプロパティが必要であることがわかりました。

server.port=8089
server.ssl.enabled=true
server.ssl.key-store=src/main/resources/keystore.p12
server.ssl.key-store-password=****
server.ssl.keyStoreType=PKCS12
server.ssl.keyAlias=Tomcat

しかし、これは機能しません。私の質問は、それを機能させるために何をしなければならないのでしょうか? https://abc.lehr.co.at はURLである必要があります。

[編集]

独自のキーストアを作成しました-これにより、次の例外が発生します。

Java.io.IOException: Alias name Tomcat does not identify a key entry
at org.Apache.Tomcat.util.net.jsse.JSSESocketFactory.getKeyManagers(JSSESocketFactory.Java:596)
at org.Apache.Tomcat.util.net.jsse.JSSESocketFactory.getKeyManagers(JSSESocketFactory.Java:534)
at org.Apache.Tomcat.util.net.NioEndpoint.bind(NioEndpoint.Java:363)
at org.Apache.Tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.Java:739)
at org.Apache.coyote.AbstractProtocol.start(AbstractProtocol.Java:472)
at org.Apache.coyote.http11.Http11NioProtocol.start(Http11NioProtocol.Java:81)
at org.Apache.catalina.connector.Connector.startInternal(Connector.Java:986)

私のキーストアは次のようになります。

Keystore

実際には、組み込みTomcat(Spring Boot)のキーストアに何をインポートするのかわかりません。

11
quma

SSLを有効にするには、信頼できる証明書ではなく、秘密キーを提供する必要があります。

キーストアで、「Tomcat」はtrustedcertentryではなくprivatekeyentryのエイリアスとしてリストする必要があります。

13
Camille Vienot

秘密鍵をPFXファイルまたは特定のエイリアスを持つP12にパックする必要があります。したがって、マテリアルをロードした後、それに応じてkeyStoreから取得されます。

このツールを使用して、エイリアスとは何かを把握します。

keytool -list -storetype pkcs12 -keystore my_debug_keystore.p12 -storepass debug
3
AlexGera
server.port=8089
server.ssl.enabled=true
server.ssl.key-store=src/main/resources/keystore.p12
server.ssl.key-store-password=****
server.ssl.keyStoreType=PKCS12
server.ssl.keyAlias=Tomcat << This should be the alias of yourfile.12 if you have forgotten just create a new one and replace it>>

追加することを忘れないでください

security.require-ssl=true <<Tell Spring Security (if used) to require requests over HTTPS>>
1
joe cutter

JKS形式でキーストアを作成することをお勧めします。

 keytool -genkey -keyalg RSA -alias my_alias -keystore keystore.jks -storepass password -validity 360 -keysize 2048

次に構成を追加します。

server.port=8089
server.ssl.enabled=true
server.ssl.key-store=src/main/resources/keystore.jks
server.ssl.key-store-password=****
server.ssl.keyStoreType=JKS
server.ssl.keyAlias=my_alias
0
rena