我有一个在 kubernetes 上运行的 Spring Boot 应用程序,一个为反应应用程序提供服务并将请求代理到其他服务的客户端应用程序。
该客户端应用程序可通过使用 Nginx 控制器的 Ingress 获得。我有一个针对 Nginx 控制器服务的域名,并且我已经能够使用 cert-manager 从 let's encrypt 生成有效的证书和密钥,并且证书和密钥会在必要时自动更新。
到目前为止,我使用 keytool 生成的自签名证书来保护不同应用程序之间的通信(我想我仍然可以使用该工具进行内部通信),但对于客户端应用程序,我需要使用 let's encrypt 生成的密钥。
现在我的客户端应用程序不使用 ssl(在我的 bootstrap.yml 中 ssl.enable 为 false)。所以我认为 Ngix Ingress 控制器和客户端应用程序之间的通信并不安全。
在此过程中,已使用证书和密钥创建了一个 k8s 机密,所以我想我可以使用它,但最好的方法是什么?如果可能的话,我还想自动更新证书。
感谢您的建议