We created a certificate for our subdomains that are CNAMEd to cloudfront. Then we went into cloudfront and enabled this certificate instead of the default Amazon ACM one.
Yes, it works. Might have been browser cache. Oops
Question: LE certs may be just for 3 months. How can I set this to auto-renew without any additional manual step to go into Cloudfront and associate a new cert to the CDN? Can the same cert be updated via cron or something?
Thanks so much!
PS. Amazon Certificates are becoming more cumbersome. In my AWS account they seem to say “no more public certs”, although their documentation mentions 100 per account. I’ve only used 10 or so. Anyway, personally I like LE and would like to support this amazing endeavour. It’s also easy to manage over time, for us.
ACM and CloudFront have APIs. I believe it's possible to programmatically upload a new certificate and configure a distribution to use it, but I haven't tried it, and I don't know if anyone else has written a plugin for it.
Yeah. The documentation's wrong. As far as I can tell, some accounts are limited to 10 certificates, and some may be limited to 100. I'm not sure if the limit is per-region or global. Check the ACM forum, there are posts about it.
I think you can contact AWS support to fix your account.
Otherwise, you have to keep under 11 certificates.
Thank you. But I don’t know what that means. In the DNS validation can I automate things? That sounds like an even more manual step. If the only option here is manual, then LE is basically not an option at all.
I’ll try the ACM limit increase route. But it doesn’t fill me with promise. Their support is hideous in recent times.
The ability to automate DNS validation depends on your Let's Encrypt client and on your DNS provider. If your DNS provider offers an API that's supported by your Let's Encrypt client, then you can automate issuance and renewal. You can also use a CNAME record for _acme-challenge in your DNS zone to point at a different DNS provider (or an acme-dns instance) that does support an appropriate API.