我在Google Cloud上为Anthos提供了Cloud Run for Anthos的服务,SSL证书是由Let's Encrypt制作的。 我想在无服务器而不是GCE上自动续订证书。
我该怎么做?
我可以在 GKE 上使用 cronJob 吗?
我只是在笔记本电脑上手动创建了证书。
sudo certbot certonly --manual --preferred-challenges dns -d '*.default.domain'
sudo kubectl create --namespace istio-system secret tls istio-ingressgateway-certs
--key /etc/letsencrypt/live/default.domain/privkey.pem
--cert /etc/letsencrypt/live/default.domain/fullchain.pem
Let's Encrypt 使用 DNS 验证手动创建的证书无法续订,除非您保存了用于签署原始 CSR 的私钥,并且能够使用 TXT DNS 质询修改域的名称服务器。
我不知道有任何应用程序接受预先创建的SSL证书。通常,这些应用程序从零开始并设置所有内容。
我建议安装证书管理器并重新颁发SSL证书并设置自动续订。
但是,您说要执行此操作"无服务器"。有许多通过互联网上的DNS挑战创建Let's Encrypt SSL证书的例子。但是,我还没有看到一个也处理续订的。这里没有技术问题,您只需要一个插件,可以使用正确的 TXT 记录修改您的名称服务器。如果您了解ACME接口,则可以开发自己的软件。否则,我会使用 Kubernetes Cert-Manager 或其他受支持的软件包。
现在我们有"使用托管TLS证书和HTTPS"的GCP文档 https://cloud.google.com/anthos/run/docs/managed-tls