awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
go-acme avatar

go-acme/lego

0
View on GitHub↗
9,689 stars·1,148 forks·Go·MIT·7 viewsgo-acme.github.io/lego↗

Lego

Lego is an ACME certificate manager and lifecycle tool used to automate the request, renewal, and revocation of SSL and TLS certificates. It implements the ACME protocol to communicate with compliant certificate authorities and manages the full issuance process, including account registration and private key rollovers.

The project distinguishes itself through extensive DNS automation, utilizing a provider-based abstraction to solve DNS-01 challenges across various third-party DNS providers. It supports advanced verification workflows such as CNAME-based challenge delegation, DNS zone discovery, and the issuance of wildcard certificates and IP address certificates.

Lego provides a command line interface for manual operations and supports automation via lifecycle-based hooks that trigger external scripts during the issuance process. It handles identity verification through DNS, HTTP, and TLS-ALPN methods, while maintaining account persistence and certificate data through a structured local archive.

The tool includes detailed logging for network interaction debugging and supports the use of pre-generated certificate signing requests.

Features

  • ACME Clients - Implements the ACME protocol as a command-line tool for automated certificate lifecycle management.
  • Certificate Archives - Stores and retrieves certificate data and private keys in a structured archive for persistence.
  • Command Line Interfaces - Provides a terminal-based interface for managing certificate lifecycles, account registrations, and key rollovers.
  • ACME Protocol Implementations - Implements standardized communication flows for interacting with certificate authorities via challenge-response mechanisms.
  • CA Server Configurations - Allows specifying the CA server endpoints and settings required to validate and issue security certificates.
  • Certificate Lifecycle Management - Manages the full lifecycle of obtaining, renewing, and rotating security certificates from compliant authorities.
  • Certificate Renewal Managers - Automatically extends the validity of existing certificates before they expire to ensure continuous encryption.
  • SSL/TLS Certificate Management - Requests and renews digital certificates by completing identity challenges through various protocols.
  • Domain Ownership Verification - Proves domain control by solving identity challenges via DNS, HTTP, or TLS-ALPN methods.
  • DNS Validation Providers - Provides a common interface to manage TXT records across diverse DNS APIs for automated ownership validation.
  • ACME Account Archives - Stores account registration details and private keys in local archives for long-term management and recovery.
  • DNS Challenge Modules - Automates the creation and deletion of DNS TXT records to prove domain ownership for the DNS-01 challenge.
  • Lifecycle Event Hooks - Provides script triggers that execute during lifecycle events such as before creation or after deployment.
  • Lifecycle Script Execution - Triggers external shell scripts at predefined stages of the certificate issuance and renewal process.
  • Lifecycle Event Hooks - Lego triggers external scripts at specific stages of the issuance and renewal process to execute custom automation.
  • Challenge Delegation - Supports delegating DNS challenge resolution to secondary zones using CNAME records.
  • CNAME Challenge Resolution - Follows CNAME records during the validation process to verify domain ownership.
  • Account Management - Manages ACME account registration, private key rollovers, and account recovery for CA communication.
  • Custom Issuance Workflows - Integrates external scripts and pre-generated certificate signing requests into the automated issuance process.
  • Certificate Signing Request Managers - Supports the use of pre-generated certificate signing requests (CSRs) alongside automatic key pair generation.
  • Credential Revocation - Invalidates active certificates with the issuing authority to prevent trust in compromised credentials.
  • Identity Challenge Dispatchers - Dispatches identity verification requests across multiple network layers to satisfy various certificate authority requirements.
  • Wildcard Certificate Issuers - Generates single certificates that secure an unlimited number of subdomains for a primary domain.
  • Wildcard Certificate Management - Automates the provisioning and renewal of wildcard certificates to secure primary domains and all subdomains.
  • More to explore - Let's Encrypt client and ACME library.
  • Security and Cryptography - ACME client library and CLI tool.

Star history

Star history chart for go-acme/legoStar history chart for go-acme/lego

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Lego

Similar open-source projects, ranked by how many features they share with Lego.
  • neilpang/acme.shNeilpang avatar

    Neilpang/acme.sh

    46,922View on GitHub↗

    acme.sh is a shell-based certificate manager and ACME SSL certificate client. It automates the issuance, renewal, and installation of digital security certificates using a portable Unix shell script to remove dependencies on heavy runtime environments. The project specializes in automated domain ownership verification through a DNS challenge automator that integrates with provider APIs. It supports the generation of diverse certificate types, including wildcard certificates and issuance based on pre-existing certificate signing requests. The tool covers the full certificate lifecycle, includ

    Shell
    View on GitHub↗46,922
  • certd/certdcertd avatar

    certd/certd

    4,454View on GitHub↗

    Certd is a self-hosted platform that automates the full lifecycle of SSL certificates using the ACME protocol. It handles certificate application, renewal, and deployment across multiple domains through a pipeline-driven workflow engine, with DNS challenge orchestration and multi-cloud deployment capabilities. The platform distinguishes itself through its configurable pipeline system, which allows users to build multi-step workflows that can pass outputs between tasks, execute custom scripts, and handle errors. It supports multi-tenant access control with role-based permissions, encrypted cre

    JavaScriptacmeautoautomation
    View on GitHub↗4,454
  • cert-manager/cert-managercert-manager avatar

    cert-manager/cert-manager

    13,578View on GitHub↗

    This project is a Kubernetes controller that automates the issuance, renewal, and lifecycle management of TLS certificates. It functions as a native extension to the cluster API, using custom resource definitions and reconciliation loops to maintain the desired state of certificates and trust bundles across distributed services. By integrating directly with the cluster's admission control and secret storage systems, it ensures that cryptographic identities are consistently provisioned and available for application workloads. The project distinguishes itself through its extensive support for a

    Gocertificatecrdhacktoberfest
    View on GitHub↗13,578
  • acmesh-official/acme.shacmesh-official avatar

    acmesh-official/acme.sh

    46,911View on GitHub↗

    This project is a command-line tool that automates the entire lifecycle of security certificates using standard domain validation protocols. It functions as a background service to manage the issuance, renewal, and installation of certificates, ensuring that encrypted web traffic remains active without requiring manual intervention. The tool distinguishes itself through extensive support for automated domain ownership verification, including the ability to issue wildcard certificates by programmatically interacting with external domain name system providers. It provides flexible validation op

    Shellacmeacme-challengeacme-protocol
    View on GitHub↗46,911
See all 30 alternatives to Lego→

Frequently asked questions

What does go-acme/lego do?

Lego is an ACME certificate manager and lifecycle tool used to automate the request, renewal, and revocation of SSL and TLS certificates. It implements the ACME protocol to communicate with compliant certificate authorities and manages the full issuance process, including account registration and private key rollovers.

What are the main features of go-acme/lego?

The main features of go-acme/lego are: ACME Clients, Certificate Archives, Command Line Interfaces, ACME Protocol Implementations, CA Server Configurations, Certificate Lifecycle Management, Certificate Renewal Managers, SSL/TLS Certificate Management.

What are some open-source alternatives to go-acme/lego?

Open-source alternatives to go-acme/lego include: neilpang/acme.sh — acme.sh is a shell-based certificate manager and ACME SSL certificate client. It automates the issuance, renewal, and… certd/certd — Certd is a self-hosted platform that automates the full lifecycle of SSL certificates using the ACME protocol. It… cert-manager/cert-manager — This project is a Kubernetes controller that automates the issuance, renewal, and lifecycle management of TLS… acmesh-official/acme.sh — This project is a command-line tool that automates the entire lifecycle of security certificates using standard domain… caddyserver/certmagic — Certmagic is a Go library for automating the issuance and renewal of TLS certificates. It functions as an automatic… allinssl/allinssl — Allinssl is a multi-platform certificate manager and ACME automator designed to handle the full lifecycle of security…