github.com/russbt/lego

Let's Encrypt client and ACME library written in Go


License
MIT
Install
go get github.com/russbt/lego

Documentation

lego

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

GoDoc Build Status Docker Pulls

Features

  • 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.

Alibaba Cloud DNS Amazon Lightsail Amazon Route 53 Aurora DNS
Autodns Azure Bindman Bluecat
Cloudflare ClouDNS CloudXNS ConoHa
Designate DNSaaS for Openstack Digital Ocean DNS Made Easy DNSimple
DNSPod Domain Offensive (do.de) DreamHost Duck DNS
Dyn EasyDNS Exoscale External program
FastDNS Gandi Live DNS (v5) Gandi Glesys
Go Daddy Google Cloud Hosting.de HTTP request
Internet Initiative Japan INWX Joker Joohoi's ACME-DNS
Linode (deprecated) Linode (v4) Liquid Web Manual
MyDNS.jp Name.com Namecheap Namesilo
Netcup NIFCloud NS1 Open Telekom Cloud
Oracle Cloud OVH PowerDNS Rackspace
RFC2136 Sakura Cloud Selectel Stackpath
TransIP VegaDNS Vscale Versio
Vultr Zone.ee