/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 all-inkl 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) Domeneshop DreamHost Duck DNS
Dyn Dynu EasyDNS Exoscale
External program freemyip.com Gandi Live DNS (v5) Gandi
Glesys Go Daddy Google Cloud Hetzner
Hosting.de HTTP request Hurricane Electric DNS HyperOne
Infoblox Infomaniak Internet Initiative Japan Internet.bs
INWX Ionos Joker Joohoi's ACME-DNS
Linode (v4) Liquid Web Loopia LuaDNS
Manual MyDNS.jp MythicBeasts Name.com
Namecheap Namesilo Netcup Netlify
NIFCloud Njalla NS1 Open Telekom Cloud
Oracle Cloud OVH Porkbun PowerDNS
Rackspace reg.ru RFC2136 RimuHosting
Sakura Cloud Scaleway Selectel Servercow
Simply.com Sonic Stackpath TransIP
VegaDNS Versio.[nl/eu/uk] VinylDNS Vscale
Vultr WEDOS Yandex Zone.ee
Zonomi

If your DNS provider is not supported, please open an issue.