2020-06-27 13:07:19 +00:00
# ![lego](./docs/static/images/logo.png)
2018-05-31 00:03:08 +00:00
2019-03-08 18:47:06 +00:00
Let's Encrypt client and ACME library written in Go.
2015-06-13 02:45:04 +00:00
2020-09-02 01:20:01 +00:00
[![GoDoc ](https://godoc.org/github.com/go-acme/lego?status.svg )](https://pkg.go.dev/mod/github.com/go-acme/lego/v4)
2019-03-11 19:00:39 +00:00
[![Build Status ](https://travis-ci.com/go-acme/lego.svg?branch=master )](https://travis-ci.com/go-acme/lego)
2019-03-11 18:26:14 +00:00
[![Docker Pulls ](https://img.shields.io/docker/pulls/goacme/lego.svg )](https://hub.docker.com/r/goacme/lego/)
2015-06-13 19:23:27 +00:00
2018-05-31 00:03:08 +00:00
## Features
2016-03-23 18:12:47 +00:00
2020-10-27 11:01:05 +00:00
- ACME v2 [RFC 8555 ](https://tools.ietf.org/html/rfc8555 )
2016-03-23 18:12:47 +00:00
- Register with CA
2016-02-12 01:08:36 +00:00
- Obtain certificates, both from scratch or with an existing CSR
2016-03-23 18:12:47 +00:00
- Renew certificates
- Revoke certificates
- Robust implementation of all ACME challenges
- HTTP (http-01)
- DNS (dns-01)
2018-06-13 23:20:56 +00:00
- TLS (tls-alpn-01)
2016-03-23 18:12:47 +00:00
- SAN certificate support
2019-03-11 19:00:39 +00:00
- Comes with multiple optional [DNS providers ](https://go-acme.github.io/lego/dns )
2019-03-11 15:54:35 +00:00
- [Custom challenge solvers ](https://go-acme.github.io/lego/usage/library/writing-a-challenge-solver/ )
2016-03-23 18:12:47 +00:00
- Certificate bundling
- OCSP helper function
2015-06-13 02:45:04 +00:00
2019-03-11 15:54:35 +00:00
lego introduced support for ACME v2 in [v1.0.0 ](https://github.com/go-acme/lego/releases/tag/v1.0.0 ). If you still need to utilize ACME v1, you can do so by using the [v0.5.0 ](https://github.com/go-acme/lego/releases/tag/v0.5.0 ) version.
2015-12-08 02:33:40 +00:00
2019-03-08 18:47:06 +00:00
## Installation
2015-10-17 21:02:52 +00:00
2019-03-11 15:54:35 +00:00
How to [install ](https://go-acme.github.io/lego/installation/ ).
2018-05-31 00:03:08 +00:00
2019-03-08 18:47:06 +00:00
## Usage
2018-05-31 00:03:08 +00:00
2019-03-11 15:54:35 +00:00
- as a [CLI ](https://go-acme.github.io/lego/usage/cli )
2019-03-19 15:50:05 +00:00
- as a [library ](https://go-acme.github.io/lego/usage/library )
2019-03-08 18:47:06 +00:00
## Documentation
2019-03-11 15:54:35 +00:00
Documentation is hosted live at https://go-acme.github.io/lego/.
2019-03-08 18:47:06 +00:00
## DNS providers
2019-03-11 15:54:35 +00:00
Detailed documentation is available [here ](https://go-acme.github.io/lego/dns ).
2019-03-08 18:47:06 +00:00
2020-03-09 08:43:27 +00:00
<!-- START DNS PROVIDERS LIST -->
2019-03-21 10:52:01 +00:00
| | | | |
|---------------------------------------------------------------------------------|---------------------------------------------------------------------------------|---------------------------------------------------------------------------------|---------------------------------------------------------------------------------|
2020-07-08 20:16:54 +00:00
| [Akamai EdgeDNS ](https://go-acme.github.io/lego/dns/edgedns/ ) | [Alibaba Cloud DNS ](https://go-acme.github.io/lego/dns/alidns/ ) | [Amazon Lightsail ](https://go-acme.github.io/lego/dns/lightsail/ ) | [Amazon Route 53 ](https://go-acme.github.io/lego/dns/route53/ ) |
| [ArvanCloud ](https://go-acme.github.io/lego/dns/arvancloud/ ) | [Aurora DNS ](https://go-acme.github.io/lego/dns/auroradns/ ) | [Autodns ](https://go-acme.github.io/lego/dns/autodns/ ) | [Azure ](https://go-acme.github.io/lego/dns/azure/ ) |
| [Bindman ](https://go-acme.github.io/lego/dns/bindman/ ) | [Bluecat ](https://go-acme.github.io/lego/dns/bluecat/ ) | [Checkdomain ](https://go-acme.github.io/lego/dns/checkdomain/ ) | [CloudDNS ](https://go-acme.github.io/lego/dns/clouddns/ ) |
| [Cloudflare ](https://go-acme.github.io/lego/dns/cloudflare/ ) | [ClouDNS ](https://go-acme.github.io/lego/dns/cloudns/ ) | [CloudXNS ](https://go-acme.github.io/lego/dns/cloudxns/ ) | [ConoHa ](https://go-acme.github.io/lego/dns/conoha/ ) |
| [Constellix ](https://go-acme.github.io/lego/dns/constellix/ ) | [deSEC.io ](https://go-acme.github.io/lego/dns/desec/ ) | [Designate DNSaaS for Openstack ](https://go-acme.github.io/lego/dns/designate/ ) | [Digital Ocean ](https://go-acme.github.io/lego/dns/digitalocean/ ) |
| [DNS Made Easy ](https://go-acme.github.io/lego/dns/dnsmadeeasy/ ) | [DNSimple ](https://go-acme.github.io/lego/dns/dnsimple/ ) | [DNSPod ](https://go-acme.github.io/lego/dns/dnspod/ ) | [Domain Offensive (do.de) ](https://go-acme.github.io/lego/dns/dode/ ) |
| [DreamHost ](https://go-acme.github.io/lego/dns/dreamhost/ ) | [Duck DNS ](https://go-acme.github.io/lego/dns/duckdns/ ) | [Dyn ](https://go-acme.github.io/lego/dns/dyn/ ) | [Dynu ](https://go-acme.github.io/lego/dns/dynu/ ) |
2020-09-02 00:56:43 +00:00
| [EasyDNS ](https://go-acme.github.io/lego/dns/easydns/ ) | [Exoscale ](https://go-acme.github.io/lego/dns/exoscale/ ) | [External program ](https://go-acme.github.io/lego/dns/exec/ ) | [Gandi Live DNS (v5) ](https://go-acme.github.io/lego/dns/gandiv5/ ) |
| [Gandi ](https://go-acme.github.io/lego/dns/gandi/ ) | [Glesys ](https://go-acme.github.io/lego/dns/glesys/ ) | [Go Daddy ](https://go-acme.github.io/lego/dns/godaddy/ ) | [Google Cloud ](https://go-acme.github.io/lego/dns/gcloud/ ) |
| [Hetzner ](https://go-acme.github.io/lego/dns/hetzner/ ) | [Hosting.de ](https://go-acme.github.io/lego/dns/hostingde/ ) | [HTTP request ](https://go-acme.github.io/lego/dns/httpreq/ ) | [HyperOne ](https://go-acme.github.io/lego/dns/hyperone/ ) |
2020-10-27 00:03:26 +00:00
| [Infomaniak ](https://go-acme.github.io/lego/dns/infomaniak/ ) | [Internet Initiative Japan ](https://go-acme.github.io/lego/dns/iij/ ) | [INWX ](https://go-acme.github.io/lego/dns/inwx/ ) | [Joker ](https://go-acme.github.io/lego/dns/joker/ ) |
2020-12-26 16:22:01 +00:00
| [Joohoi's ACME-DNS ](https://go-acme.github.io/lego/dns/acme-dns/ ) | [Linode (v4) ](https://go-acme.github.io/lego/dns/linode/ ) | [Liquid Web ](https://go-acme.github.io/lego/dns/liquidweb/ ) | [Loopia ](https://go-acme.github.io/lego/dns/loopia/ ) |
| [LuaDNS ](https://go-acme.github.io/lego/dns/luadns/ ) | [Manual ](https://go-acme.github.io/lego/dns/manual/ ) | [MyDNS.jp ](https://go-acme.github.io/lego/dns/mydnsjp/ ) | [MythicBeasts ](https://go-acme.github.io/lego/dns/mythicbeasts/ ) |
| [Name.com ](https://go-acme.github.io/lego/dns/namedotcom/ ) | [Namecheap ](https://go-acme.github.io/lego/dns/namecheap/ ) | [Namesilo ](https://go-acme.github.io/lego/dns/namesilo/ ) | [Netcup ](https://go-acme.github.io/lego/dns/netcup/ ) |
| [Netlify ](https://go-acme.github.io/lego/dns/netlify/ ) | [NIFCloud ](https://go-acme.github.io/lego/dns/nifcloud/ ) | [NS1 ](https://go-acme.github.io/lego/dns/ns1/ ) | [Open Telekom Cloud ](https://go-acme.github.io/lego/dns/otc/ ) |
| [Oracle Cloud ](https://go-acme.github.io/lego/dns/oraclecloud/ ) | [OVH ](https://go-acme.github.io/lego/dns/ovh/ ) | [PowerDNS ](https://go-acme.github.io/lego/dns/pdns/ ) | [Rackspace ](https://go-acme.github.io/lego/dns/rackspace/ ) |
| [reg.ru ](https://go-acme.github.io/lego/dns/regru/ ) | [RFC2136 ](https://go-acme.github.io/lego/dns/rfc2136/ ) | [RimuHosting ](https://go-acme.github.io/lego/dns/rimuhosting/ ) | [Sakura Cloud ](https://go-acme.github.io/lego/dns/sakuracloud/ ) |
| [Scaleway ](https://go-acme.github.io/lego/dns/scaleway/ ) | [Selectel ](https://go-acme.github.io/lego/dns/selectel/ ) | [Servercow ](https://go-acme.github.io/lego/dns/servercow/ ) | [Stackpath ](https://go-acme.github.io/lego/dns/stackpath/ ) |
| [TransIP ](https://go-acme.github.io/lego/dns/transip/ ) | [VegaDNS ](https://go-acme.github.io/lego/dns/vegadns/ ) | [Versio.[nl/eu/uk]](https://go-acme.github.io/lego/dns/versio/) | [Vscale ](https://go-acme.github.io/lego/dns/vscale/ ) |
| [Vultr ](https://go-acme.github.io/lego/dns/vultr/ ) | [Yandex ](https://go-acme.github.io/lego/dns/yandex/ ) | [Zone.ee ](https://go-acme.github.io/lego/dns/zoneee/ ) | [Zonomi ](https://go-acme.github.io/lego/dns/zonomi/ ) |
2020-03-09 08:43:27 +00:00
<!-- END DNS PROVIDERS LIST -->