forked from TrueCloudLab/lego
WIP: Let's Encrypt/ACME client and library written in Go
Vitaliy Potyarkin
9ff9d5be25
Ephemeral keys worked fine while keys loaded from filesystem would generate invalid signatures. This was caused by destroying private key material during calls to Wallet.Close() and Account.Close(). Since these calls do nothing except wiping the private key, we omit them now. Responsibility for private key security is delegated to caller of getKey() Signed-off-by: Vitaliy Potyarkin <v.potyarkin@yadro.com> |
||
---|---|---|
.github | ||
acme | ||
certcrypto | ||
certificate | ||
challenge | ||
cmd | ||
docs | ||
e2e | ||
internal | ||
lego | ||
log | ||
platform | ||
providers | ||
registration | ||
.dockerignore | ||
.gitcookies.enc | ||
.gitignore | ||
.golangci.yml | ||
.goreleaser.yml | ||
buildx.Dockerfile | ||
CHANGELOG.md | ||
CONTRIBUTING.md | ||
Dockerfile | ||
go.mod | ||
go.sum | ||
LICENSE | ||
Makefile | ||
README.md |
Automatic Certificates and HTTPS for everyone.
Lego
Let's Encrypt client and ACME library written in Go.
Features
- 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-03: 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
Installation
How to install.
Usage
Documentation
Documentation is hosted live at https://go-acme.github.io/lego/.
DNS providers
Detailed documentation is available here.
If your DNS provider is not supported, please open an issue.