如何设置 letsencrypt SSL 证书并在 Spring Boot 应用程序中使用它?

新手上路,请多包涵

我是保护服务器的新手,所以我对此不太了解,但我需要让在 Digital Ocean Droplet 上运行的 Spring Boot 应用程序使用 HTTPS。

我的想法是注册一个 letsencrypt 证书,然后告诉 Spring 使用它。

但是,我不知道该怎么做。

谢谢。

原文由 BrandenS 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 540
1 个回答

我写了 2 篇关于 Let’s Encrypt 和 Spring Boot 的博文。

  1. 颁发证书。 由 Let’s Encrypt 证书保护的 Spring Boot 应用程序
  2. 更新证书Let’s Encrypt 证书更新:用于 Spring Boot

简而言之,步骤如下:

  1. 拉取 Let’s Encrypt 客户端(certbot)。

  2. 为您的域生成证书(例如 example.com)

./certbot-auto certonly -a standalone -d example.com -d www.example.com

事物生成于 /etc/letsencrypt/live/example.com 。 Spring Boot 需要 PKCS#12 格式的文件。这意味着您必须将密钥转换为 PKCS#12 密钥库(例如使用 OpenSSL)。如下:

  1. 打开 /etc/letsencrypt/live/example.com 目录。
  2. openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out keystore.p12 -name tomcat -CAfile chain.pem -caname root`


带有 PKCS12 的文件 _keystore.p12_ 现在生成在 `/etc/letsencrypt/live/example.com` 中。

是时候配置您的 Spring Boot 应用程序了。打开 application.properties 文件并将以下属性放在那里:

server.port=8443 security.require-ssl=true server.ssl.key-store=/etc/letsencrypt/live/example.com/keystore.p12 server.ssl.key-store-password= server.ssl.keyStoreType=PKCS12 server.ssl.keyAlias=tomcat

”`

阅读我的 博客文章 以获取更多详细信息和评论。

原文由 Emad Van Ben 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题