Let's Encrypt client and ACME library written in Go.
- ACME v2 RFC 8555
- Support RFC 8737: TLS Application‑Layer Protocol Negotiation (ALPN) Challenge Extension
- Support RFC 8738: certificates for IP addresses
- Support draft-ietf-acme-ari-02: Renewal Information (ARI) Extension
- Register with CA
- Obtain certificates, both from scratch or with an existing CSR
- Renew certificates
- Revoke certificates
- Robust implementation of all ACME challenges
- HTTP (http-01)
- DNS (dns-01)
- TLS (tls-alpn-01)
- SAN certificate support
- CNAME support by default
- Comes with multiple optional DNS providers
- Custom challenge solvers
- Certificate bundling
- OCSP helper function
How to install.
Documentation is hosted live at https://go-acme.github.io/lego/.
Detailed documentation is available here.
If your DNS provider is not supported, please open an issue.