/lego

Let's Encrypt client and ACME library written in Go

Primary LanguageGoMIT LicenseMIT

lego

Let's Encrypt client and ACME library written in Go.

GoDoc Build Status Docker Pulls

Features

  • ACME v2 RFC 8555
  • 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
  • Comes with multiple optional DNS providers
  • Custom challenge solvers
  • Certificate bundling
  • OCSP helper function

lego introduced support for ACME v2 in v1.0.0. If you still need to utilize ACME v1, you can do so by using the v0.5.0 version.

Installation

How to install.

Usage

Documentation

Documentation is hosted live at https://go-acme.github.io/lego/.

DNS providers

Detailed documentation is available here.

Akamai EdgeDNS Alibaba Cloud DNS Amazon Lightsail Amazon Route 53
ArvanCloud Aurora DNS Autodns Azure
Bindman Bluecat Checkdomain CloudDNS
Cloudflare ClouDNS CloudXNS ConoHa
Constellix deSEC.io Designate DNSaaS for Openstack Digital Ocean
DNS Made Easy DNSimple DNSPod Domain Offensive (do.de)
DreamHost Duck DNS Dyn Dynu
EasyDNS Exoscale External program Gandi Live DNS (v5)
Gandi Glesys Go Daddy Google Cloud
Hetzner Hosting.de HTTP request HyperOne
Infomaniak Internet Initiative Japan INWX Ionos
Joker Joohoi's ACME-DNS Linode (v4) Liquid Web
Loopia LuaDNS Manual MyDNS.jp
MythicBeasts Name.com Namecheap Namesilo
Netcup Netlify NIFCloud NS1
Open Telekom Cloud Oracle Cloud OVH PowerDNS
Rackspace reg.ru RFC2136 RimuHosting
Sakura Cloud Scaleway Selectel Servercow
Stackpath TransIP VegaDNS Versio.[nl/eu/uk]
Vscale Vultr Yandex Zone.ee
Zonomi