ACME#

Позволяет автоматически получать сертификаты с использованием протокола ACME для серверов, определенных в контексте stream.

При сборке из исходного кода модуль не собирается по умолчанию; его необходимо включить с помощью параметра сборки --with-stream_acme_module (также требуется --with-http_acme_module). В пакетах и образах из наших репозиториев модуль включен в сборку.

Важно

Для корректной работы блок stream должен располагаться после блока http. Это связано с тем, что потоковый модуль использует определения клиентов, созданные при разборе HTTP-конфигурации.

Пример конфигурации#

Примеры конфигурации и инструкции по настройке см. в разделе ACME в потоковом модуле.

Директивы#

acme#

Синтаксис

acme имя;

По умолчанию

Контекст

server

Для всех доменов, указанных в директивах server_name во всех блоках server, которые ссылаются на клиент ACME из HTTP-модуля с именем имя, будет получен единый сертификат; если изменится конфигурация server_name, сертификат будет обновлен для учета изменений.

При каждом запуске Angie для всех доменов, у которых отсутствует действующий сертификат, запрашиваются новые сертификаты. Возможные причины включают истечение срока действия сертификатов, отсутствие файлов или невозможность прочитать их, а также изменения в настройках сертификатов.

Примечание

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

Домены со звездочкой поддерживаются только в режиме challenge=dns в acme_client.

Эта директива может быть указана несколько раз для загрузки сертификатов разных типов, например RSA и ECDSA:

server {

    listen 12345 ssl;
    server_name example.com www.example.com;

    ssl_certificate $acme_cert_rsa;
    ssl_certificate_key $acme_cert_key_rsa;

    ssl_certificate $acme_cert_ecdsa;
    ssl_certificate_key $acme_cert_key_ecdsa;

    acme rsa;
    acme ecdsa;
}

Встроенные переменные#

$acme_cert_<имя>#

Содержимое последнего файла сертификата (если он есть), полученного клиентом с этим именем.

$acme_cert_key_<имя>#

Содержимое файла ключа сертификата, используемого клиентом с этим именем.

Важно

Файл сертификата доступен, только если клиент ACME получил хотя бы один сертификат, а вот файл ключа доступен сразу после запуска.