This seems like a clever idea! As Ted said, .well-known probably isn't the right directory for it. If you put something in .well-known, that suggests you plan to standardize it and register it with IANA.

I'll also note that you may have a bootstrapping problem: Assuming that you verify certificates on those polling requests to your web server, this solution won't work before you've actually issued your first certificate. Similarly, if there's every a problem that results in your live certificate expiring, this process would fail.

It's also worth noting that Let's Encrypt requires DNS challenges for wildcards because they demonstrate more control over the domain namespace, and are less vulnerable to temporary hacks of the web server. You fully control the namespace, so you definitely have the ability to delegate that control in any way you see fit. Just keep in mind that this allows someone with temporary access to your nameserver to get a more powerful wildcard certificate than they otherwise would be able to.

If you wanted to add some more security, you could narrow the scope of accepted certificates on the polling connection to your web host, or (even better) have some file-level signing of the fetched JSON. Since you control both sides, an HMAC (rather than a public key signature) would suffice.

Lastly, have you seen acme-dns? This might be another way to accomplish the same thing, and has the advantage that more people are using it and therefore more likely to find bugs. https://github.com/joohoi/acme-dns

_______________________________________________
Acme mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/acme

Reply via email to