更新 Cloudfront 背后的 LetsEncrypt 证书

Renew LetsEncrypt cert thats behind Cloudfront

我有一个在 AWS Cloudfront 后面有一个 LetsEncrypt 证书的域。我在安装 Cloundfront 之前对其进行了设置,因此一切正常。

现在是时候续订了,但失败了,因为:

The server experienced a TLS error during domain verification :: Failed to connect to xxx.xxx.xxx.xxx:443 for TLS-SNI-01 challenge

现在我在 Cloudfront 上有一个 AWS 证书,但我认为这不会导致问题。基本上我认为 Cloudfront 正在返回一个 404 这是意外的,因为我不允许某些 headers 或属性通过。我做了白名单 Content-Type。我发现很多关于使用 S3 执行此操作的信息,但我有一个自动更新任务,我想尽可能保留 AWS 证书而不是 Cloudfront 上的 LetsEncrypt 证书。

我怎样才能通过 Cloudfront 获得工作的挑战?

您可以使用 http-01 质询并将文件放在您的源上。我个人为 .well-known/* 配置了一个缓存行为,以转到该挑战文件所在的特定来源。