【问题标题】:SSL Configuration in Spring Boot and SSL Configuration in Apache ServerSpring Boot 中的 SSL 配置和 Apache 服务器中的 SSL 配置
【发布时间】:2019-01-01 10:46:42
【问题描述】:

我需要您的帮助来了解如何在 SSL 协议上运行 Spring Boot 应用程序。到目前为止,我的理解是 SSL 配置只需要到服务器端,直到我最近发现要在 SLL 上运行 spring boot 应用程序,我们需要在 spring boot 应用程序的属性文件中进行配置。

以下是我的服务器的配置方式。我需要知道是否还需要在我的 spring boot application.properties 文件中进行任何配置?

我的 Apache 服务器在 SSL 协议上运行。任何到 80 端口的连接都会被 Apache 重定向到 443 端口。我的 Tomcat 运行在端口 8080 上。我有一个使用 mod_jk 模块配置的反向代理。所以基本上用户只在 SSL 上与我的 Apache 服务器交互,而 Apache 又在后台与 Tomcat 对话。

【问题讨论】:

  • 我建议您尽可能使用列表而不是文本板。真的很难读……
  • 恐怕我不太明白你的评论。

标签: spring-boot ssl mod-jk


【解决方案1】:

您必须将 Tomcat 和 JVM 配置为使用相同的信任库,并且还必须将 Tomcat 配置为具有用于出站请求的密钥库。

对于 Tomcat,您可以将以下内容添加到您的 application.properties 以设置密钥库和信任库:

server.ssl.key-store=file:/path/to/keystore.jks
server.ssl.key-store-password=<password>
server.ssl.key-alias=<key_alias>
server.ssl.trust-store=file:/path/to/truststore.jks
server.ssl.trust-store-password=<password>

对于 JVM,可以使用 -D 参数、系统属性等:

-Djavax.net.ssl.trustStore=/path/to/truststore.jks
-Djavax.net.ssl.trustStorePassword=<password>

请注意,这将使用 Tomcat 的默认端口。您可以在 application.properties 中覆盖它:

server.port=8443

另请注意,嵌入式 Tomcat 默认不启动 AJP 连接器。您可以使用this 博客了解如何设置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-10
    • 2014-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多