使用Spring Boot激活SSL(HTTPS)-我的最佳实践
首先
我在尝试了许多方法来启用Spring Boot的SSL(HTTPS),但现在我总结了一下。简而言之,与仅使用Spring Boot本身启用SSL(HTTPS)相比,通过使用Tomcat或Nginx来启用SSL(HTTPS)更加安全。
选项1:在Spring Boot中单独启用SSL(HTTPS)。
这篇文章是一个很好的指南。
在Spring Boot中启用SSL(HTTPS)
在Spring Boot中启用SSL(HTTPS)~使用Let’s Encrypt~
如果你打算使用自签证书来进行验证,请参考上面的文章。如果你打算使用Let’s Encrypt,请参考两者。由于Let’s Encrypt是免费的,所以我认为用有安全漏洞的自签证书没有太多优势。而且Let’s Encrypt官方推荐使用Nginx,所以我个人认为案例2的方式更好。
方案2:将Spring Boot与Nginx结合,使SSL(HTTPS)生效
如果想要在Spring Boot中启用SSL(HTTPS),可以使用nginx,参考这篇文章。
如果想要在Spring Boot中启用SSL(HTTPS),请使用nginx,参考这篇文章。
您可以在上篇文章中找到有关Nginx的安装指导。而下篇文章是一个进一步的发展。在下篇文章中,解释了以下内容:“从http重定向到https”、“『www.example.com』和『example.com』的共存”、“防止运行中的Spring-boot中的『X-Forwarded-For』变为『127.0.0.1』”以及“DDoS攻击防护和速率限制的引入”。
最后
我认为现在已经完成了关于在Spring Boot中启用SSL(HTTPS)以及构建安全服务器的全部设置。服务器已经运行了大约四个月,目前还没有出现任何问题。如果有进一步的报告,我会再次发布文章。