← Ко всем open source проектам

acme.sh

acmesh-official/acme.sh

acme.sh — shell-клиент ACME для выпуска и обновления SSL/TLS-сертификатов с поддержкой разных CA и режимов проверки.

Форки 5,616
Автор acmesh-official
Язык Shell
Лицензия Не указано
Обновлено 2026-06-27

Что это такое

acme.sh — shell-клиент ACME для выпуска и обновления SSL/TLS-сертификатов.

Проект появился вокруг автоматизации сертификатов: ручной выпуск и продление быстро становятся источником простоев и ошибок.

Главная задача acme.sh — сделать получение сертификата повторяемым скриптом, который можно встроить в серверное обслуживание.

Что внутри репозитория

В репозитории есть features, китайская документация, список пользователей, tested OS, supported CA, supported modes и usage guide.

Проект поддерживает разные certificate authorities и несколько режимов проверки домена, поэтому его можно подстроить под разные DNS-провайдеры, webroot-сценарии и серверные схемы.

Как это обычно используют

acme.sh используют на веб-серверах, reverse proxy, личных VPS, внутренних сервисах и автоматизации обновления сертификатов.

Обычный сценарий: установить клиент, выпустить сертификат для домена, установить файлы в нужное место, настроить автоматическое продление и команду перезагрузки сервиса после успешного обновления.

Выпуск сертификата через webroot

Пример показывает типичный ACME-сценарий: подтвердить домен через webroot и выпустить сертификат.

Язык: Bash
acme.sh --issue -d example.com -w /var/www/html
acme.sh --install-cert -d example.com \
  --key-file /etc/ssl/example.key \
  --fullchain-file /etc/ssl/example.crt

Что получается на практике

Сильная сторона проекта — минималистичный shell-подход. Его легко понять, перенести и запускать на разных Unix-системах.

Еще одно преимущество — поддержка разных CA, а не только одного поставщика сертификатов.

Ограничения и аккуратные места

Ограничение в том, что автоматизация сертификатов напрямую влияет на доступность сайта. Ошибка пути, прав или reload-команды может оставить сервис со старым сертификатом.

Также DNS- и HTTP-проверки требуют аккуратной настройки домена и веб-сервера.

Кому подойдет

acme.sh лучше всего подходит администраторам и разработчикам, которым нужен прозрачный ACME-клиент без тяжелой зависимости.

В каталоге acme.sh важен как практичный инфраструктурный инструмент: он решает небольшую, но критичную задачу безопасности и доступности.

В долгой работе с таким проектом важна не только установка, но и понятная граница ответственности: что берет на себя репозиторий, какие обновления нужно отслеживать и кто в команде отвечает за правила использования.

Практически это означает: перед внедрением стоит запустить минимальный пример, посмотреть конфигурацию, проверить обновления и понять, какие данные или процессы затрагиваются. Такой короткий проход быстро показывает, где проект помогает сразу, а где потребуются решения команды.

Если проект становится частью публичного сайта, продукта или внутренней платформы, его лучше закрепить в документации команды: ссылка на источник, версия, ответственный и регулярность обновлений. Тогда открытый код остается управляемой зависимостью, а не случайным фрагментом инфраструктуры.