acme_challenge_cert_helper – Подготовка сертификатов, необходимых для вызовов ACME, таких как tls-alpn-01
Новое в версии 2.7.
Обзор
- Подготавливает сертификаты для вызовов ACME, таких как
tls-alpn-01. - Исходные данные предоставляются модулем acme_certificate, и их необходимо преобразовать в сертификат для использования при проверке вызова. Этот модуль предоставляет простой способ генерации необходимых сертификатов.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- cryptography >= 1.3
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| challenge строка / обязательно |
| Тип вызова. |
| challenge_data словарь / обязательно | Элемент challenge_data, предоставленный модулем acme_certificate для вызова. | |
| private_key_content строка | Содержание закрытого ключа для использования с этим сертификатом вызова. Взаимоисключающее с private_key_src. | |
| private_key_src путь | Путь к файлу, содержащему закрытый ключ для использования с этим сертификатом вызова. Взаимоисключающее с private_key_content. |
См. также
См. также
- Система автоматического управления сертификатами (ACME)
- Спецификация протокола ACME (RFC 8555).
- Расширение вызова ACME TLS ALPN
- Спецификация вызова
tls-alpn-01(RFC 8737).
Примеры
- name: Create challenges for a given CRT for sample.com
acme_certificate:
account_key_src: /etc/pki/cert/private/account.key
challenge: tls-alpn-01
csr: /etc/pki/cert/csr/sample.com.csr
dest: /etc/httpd/ssl/sample.com.crt
register: sample_com_challenge
- name: Create certificates for challenges
acme_challenge_cert_helper:
challenge: tls-alpn-01
challenge_data: "{{ item.value['tls-alpn-01'] }}"
private_key_src: /etc/pki/cert/key/sample.com.key
loop: "{{ sample_com_challenge.challenge_data | dictsort }}"
register: sample_com_challenge_certs
- name: Install challenge certificates
# We need to set up HTTPS such that for the domain,
# regular_certificate is delivered for regular connections,
# except if ALPN selects the "acme-tls/1"; then, the
# challenge_certificate must be delivered.
# This can for example be achieved with very new versions
# of NGINX; search for ssl_preread and
# ssl_preread_alpn_protocols for information on how to
# route by ALPN protocol.
...:
domain: "{{ item.domain }}"
challenge_certificate: "{{ item.challenge_certificate }}"
regular_certificate: "{{ item.regular_certificate }}"
private_key: /etc/pki/cert/key/sample.com.key
loop: "{{ sample_com_challenge_certs.results }}"
- name: Create certificate for a given CSR for sample.com
acme_certificate:
account_key_src: /etc/pki/cert/private/account.key
challenge: tls-alpn-01
csr: /etc/pki/cert/csr/sample.com.csr
dest: /etc/httpd/ssl/sample.com.crt
data: "{{ sample_com_challenge }}"
Возвращаемые значения
Общие возвращаемые значения описаны в документе, следующие — поля, уникальные для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| challenge_certificate строка | всегда | Сертификат вызова в формате PEM. |
| domain строка | всегда | Домен, для которого предназначен вызов. Сертификат должен быть предоставлен, если он указан в заголовке запроса Host. |
| identifier строка добавлен в 2.8 | всегда | Идентификатор фактического ресурса. Будет именем домена, если тип dns, или IP-адресом, если тип ip. |
| identifier_type строка добавлен в 2.8 | всегда | Тип идентификатора фактического идентификатора ресурса. Будет dns или ip. |
| regular_certificate строка | всегда | Самоподписанный сертификат для домена вызова. Если существующий сертификат отсутствует, может быть использован для первоначальной настройки HTTPS, если это необходимо для предоставления вызова. |
Статус
- Для этого модуля не гарантируется обратная совместимость интерфейса. [предварительная версия]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Felix Fontein (@felixfontein)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете изменить этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/acme_challenge_cert_helper_module.html