Последнее обновление: | Вся документация
Let’s Encrypt использует ACME-протокол для подтверждения ваших прав на данное доменное имя, а также для выпуска сертификата для него. Чтобы получить сертификат Let’s Encrypt, вам необходимо использовать ACME-клиент.
Представленные ниже ACME-клиенты разрабатываются сторонними организациями. Let’s Encrypt не управляет их разработкой, не проверяет их код и не предоставляет гарантий их безопасности и надёжности.
Существуют ACME-клиенты в виде расширений для браузеров, но мы не приводим их здесь по причине необходимости ручного обновления сертификатов.
Рекомендуемый клиент: Certbot
Для большинства пользователей мы рекомендуем начать с ACME-клиента Certbot. С ним очень просто получить сертификат, или установить имеющийся, в зависимости от ваших задач. Он прост в использовании, работает на большинстве операционных систем, и отлично документирован.
Если Certbot не то что вам нужно или вы просто хотите попробовать что-то ещё, ниже можно выбрать гораздо больше клиентов, сгруппированных по языку или среде, в которой они работают.
ACMEv1 и ACMEv2
Все следующие ниже клиенты поддерживают ACMEv2 API (RFK 8555). В июне 2021 года мы прекратили поддержку ACMEv1. Если вы уже используете один из клиентов ниже, убедитесь, что вы обновились до последней версии. Если используемый вами клиент не указан ниже, возможно он не поддерживает ACMEv2, в этом случае мы рекомендуем связаться с сопровождающими проекта или перейти на другой клиент.
Bash
- GetSSL (bash, also automates certs on remote hosts via ssh)
- acme.sh (Compatible to bash, dash and sh)
- dehydrated (Compatible to bash and zsh)
- ght-acme.sh (batch update of http-01 and dns-01 challenges is available)
- bacme (simple yet complete scripting of certificate generation)
- wdfcert.sh (Only supports DNS-01 challenges and ECDSA-384 bit keys for both accounts and certificates, native Joker DNS support including wildcard plus root domain support for single-TXT-record DNS providers)
C
- OpenBSD acme-client
- uacme
- acme-client-portable
- Apache httpd Support via the module mod_md.
- mod_md Separate, more frequent releases of the Apache module.
- CycloneACME (client implementation of ACME dedicated to microcontrollers)
C++
- acme-lw
- esp32-acme-client allows IoT devices to get certificates
Clojure
Configuration management tools
- Ansible acme_certificate module
- Terraform ACME Provider
- Ansible collection: acme (ACME V2 integration with acme_certificate module. Supports multiple providers for challenges)
D
Domino
- CertMatica (ACME certificate installation and renewals for HCL Domino™ servers)
- HCL Domino (Full ACME V2 flow integration for HCL Domino™ servers)
Docker
Go
- Caddy
- Lego
- acmetool
- Lets-proxy2 (Reverse proxy to handle https/tls)
- autocert
- Traefik
- ACMEz
- Step CLI
- J8a (Reverse proxy for JSON APIs with auto-renewing TLS 1.3)
- certmanager (Supports certificate sharing across instances/pods and split-horizon DNS with acme-proxy)
HAProxy
Java
Kubernetes
Lua
- Mako Server's ACME Plugin The plugin’s main objective is to provide certificates for servers on private networks.
Microsoft Azure
- Azure WebApp SSL Manager (Serverless, Compatible with any App Service, requires Azure DNS)
- App Service Acmebot (Compatible to Azure Web Apps / Functions / Web App for Containers)
- Key Vault Acmebot (Work with Azure Key Vault Certificates)
- Az-Acme (The simplest ACME Issuer for Azure Key Vault)
nginx
- njs-acme JavaScript library compatible with the ’ngx_http_js_module’ runtime (NJS), allows for the automatic issue of TLS/SSL certificates for NGINX without restarts
- lua-resty-auto-ssl
- Nginx ACME
- docker-openresty An Openresty image with auto ssl, using acme.sh
- docker-nginx An Nginx image with auto ssl, using acme.sh
- lua-resty-acme
Node.js
- Greenlock for Express.js
- acme-http-01-azure-key-vault-middleware (Express middleware for storing certificates securely on Azure Key Vault)
OpenShift
Perl
- acme (Simple json config, autogen keys, issue cert, refresh cert, apache/nginx integration)
- Crypt::LE
PHP
- kelunik/acme-client
- AcmePHP
- FreeSSL.tech Auto
- Yet another ACME client
- itr-acme-client PHP library
- Acme PHP
- RW ACME client
Python
- ACME Tiny
- simp_le
- acmebot
- sewer
- acme-dns-tiny (Python 3)
- Automatoes ACME V2 ManuaLE replacement with new features
- acertmgr
- acme-cert-tool
- serverPKI PKI for internet server infrastructure, supporting distribution of certs, FreeBSD jails, DNS DANE support
- acmetk acmetk is an ACMEv2 proxy to centralize certificate requests and challenges within an organisation and direct them using a single account to Let’s Encrypt or other ACMEv2 capable CA’s.
Ruby
- unixcharles/acme-client
- acme-distributed
- Combine-acme: Generate and upload crt to CloudFlare(enterprise) and GCP.
Rust
Windows / IIS
- Crypt::LE (previously ZeroSSL project)
- win-acme (.NET)
- Posh-ACME (PowerShell)
- Certes
- ACME-PS (PowerShell)
- kelunik/acme-client (PHP)
- Certify The Web (Windows)
- WinCertes Windows client
- GetCert2 (simple GUI - .Net, C#, WPF, WCF)
- TekCERT (GUI, CLI)
Server
- Certera (Crossplatform PKI to centrally manage keys and certificates)
Библиотеки
4D
- acme component ACME Client v2 for 4D v18+
C++
- acme-lw
- esp32-acme-client allows IoT devices to get certificates
D
Delphi
- DelphiACME (Embarcadero Delphi)
Go
- Lego
- acmetool
- eggsampler/acme
- ACMEz
- certmanager (Supports certificate sharing across instances/pods and split-horizon DNS with acme-proxy)
Java
.NET
- Certes (.NET Standard)
- PKISharp/ACMESharpCore (.NET Standard)
Node.js
Perl
- acme (Simple json config, autogen keys, issue cert, refresh cert, apache/nginx integration)
- Crypt::LE
- Net::ACME2
- wdfcert.sh (Only supports DNS-01 challenges and ECDSA-384 bit keys for both accounts and certificates, native Joker DNS support including wildcard plus root domain support for single-TXT-record DNS providers)
PHP
- kelunik/acme
- ACMECert PHP library
- LEClient PHP library
- le-acme2-php library
- stonemax/acme2 PHP client
- Acme PHP Library
Python
- Модуль Python acme является частью Certbot, но также используется рядом других клиентов и доступен как отдельный пакет в PyPI, Debian, Ubuntu, Fedora и других дистрибутивах.
- txacme (Twisted client for Python 2 / 3)
Ruby
Rust
- instant-acme is an async, pure-Rust ACME (RFC 8555) client which relies on Tokio
- rustls-acme provides TLS certificate management and serving using rustls
- tokio-rustls-acme is an easy-to-use, async ACME client library for rustls
Проекты интеграции с Let's Encrypt
- Aegir
- Aerys
- Apache HTTP Server
- ApisCP
- Caddy
- CentminMod LEMP Stack
- Certhub
- Cloudfleet
- Cloudron
- cPanel
- Froxlor Server Management Panel
- Gitlab
- ISPConfig
- LiveConfig Hosting Control Panel
- Mail-in-a-Box
- Own-Mailbox
- pfSense
- Plesk Web Hosting Control Panel
- Ponzu CMS
- ruxy
- SWAG - Secure Web Application Gateway
- Synchronet BBS System
- Vesta Control Panel
- Virtualmin Web Hosting Control Panel
- WildFly Application Server
- Zappa
- Proxmox Virtual Environment
Добавление клиента/проекта
Если вы знаете клиент ACME или проект, интегрированный с ACMEv2 API Let’s Encrypt, отсутствующий на приведенной выше странице, пожалуйста, отправьте пул-реквест в наш репозиторий веб-сайта на GitHub, обновление в файл data/clients.json
.
Перед отправкой пул-реквеста, пожалуйста, убедитесь, что:
- Клиент соблюдает Политику использования товарных знаков Let’s Encrypt.
- Клиент не основан на браузере и поддерживает автоматическое обновление сертификатов.
- Клиент выполняет регулярное обновление в случайное время или поощряет такую настройку.
- Ваш коммит добавляет новый клиент в конец соответствующего раздела (не забудьте про раздел “acme_v2”, если необходимо!).
- В вашем коммите вы обновили дату в поле
lastmod
, в начале файлаdata/clients.json
.