ACME#
Позволяет автоматически получать сертификаты
с использованием протокола ACME
для серверов, определенных в контексте stream
.
При сборке из исходного кода
модуль не собирается по умолчанию; его необходимо
включить с помощью параметра сборки
--with-stream_acme_module
(также требуется --with-http_acme_module
).
В пакетах и образах из наших репозиториев
модуль включен в сборку.
Важно
Для корректной работы блок stream
должен располагаться после блока http
.
Это связано с тем, что потоковый модуль использует определения клиентов,
созданные при разборе HTTP-конфигурации.
Пример конфигурации#
Примеры конфигурации и инструкции по настройке см. в разделе ACME в потоковом модуле.
Директивы#
acme#
Для всех доменов, указанных в директивах 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 получил хотя бы один сертификат, а вот файл ключа доступен сразу после запуска.