community.crypto.acme_certificate_revoke – Отмена сертификатов с протоколом ACME
Примечание
Этот плагин входит в коллекцию community.crypto (версия 1.4.0).
Для его установки используйте: ansible-galaxy collection install community.crypto.
Чтобы использовать его в книге задач, укажите: community.crypto.acme_certificate_revoke.
Обзор
- Позволяет отменять сертификаты, выданные центром сертификации, поддерживающим протокол ACME, например Let’s Encrypt.
Требования
Ниже перечислены требования, необходимые на хосте, который выполняет этот модуль.
- python >= 2.6
- либо openssl, либо cryptography >= 1.5
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| account_key_content строка | Содержимое ключа учетной записи ACME RSA или эллиптической кривой. Обратите внимание, что необходимо указать ровно один из account_key_src, account_key_content, private_key_src или private_key_content.
Предупреждение: содержимое будет записано во временный файл, который будет удалён Ansible по завершении модуля. Поскольку это важный закрытый ключ, который может быть использован для изменения ключа учетной записи или для аннулирования ваших сертификатов без знания их закрытых ключей, это может быть неприемлемо. В случае использования cryptography, содержимое не записывается во временный файл. Тем не менее, оно может быть записано в файл на диске Ansible в процессе перемещения модуля со своим аргументом на узел, где он выполняется. | |
| account_key_src путь | Путь к файлу, содержащему ключ учетной записи ACME RSA или эллиптической кривой. Ключи RSA можно создать с помощью openssl rsa .... Ключи эллиптических кривых можно создать с помощью openssl ecparam -genkey .... Также можно использовать любой другой инструмент, создающий закрытые ключи в формате PEM.Взаимоисключающие с account_key_content.Требуется, если не используется account_key_content.псевдонимы: account_key | |
| account_uri строка | Если указано, предполагается, что URI учетной записи указано. Если ключ учетной записи не соответствует этой учетной записи или учетная запись с этим URI не существует, модуль завершится ошибкой. | |
| acme_directory строка | Используемый каталог ACME. Это URL-адрес точки входа для доступа к API сервера CA. Для безопасности по умолчанию используется тестовый сервер Let’s Encrypt (для протокола ACME v1). Это создаст технически корректные, но недоверенные сертификаты. Значение по умолчанию: https://acme-staging.api.letsencrypt.org/directory. Обратите внимание, что в community.crypto 2.0.0 этот параметр будет *обязательным* и больше не будет иметь значения по умолчанию. Все тестовые конечные точки Let's Encrypt можно найти здесь: https://letsencrypt.org/docs/staging-environment/. Все конечные точки Buypass можно найти здесь: https://community.buypass.com/t/63d4ay/buypass-go-ssl-endpoints
Для Let's Encrypt URL каталога производства для ACME v1 составляет https://acme-v01.api.letsencrypt.org/directory, а для ACME v2 — https://acme-v02.api.letsencrypt.org/directory. Для Buypass URL каталога производства для ACME v2 и v1 составляет https://api.buypass.com/acme/directory. Предупреждение: модуль тестировался только с Let's Encrypt (тестовый и production), Buypass (тестовый и production) и тестовым сервером Pebble. | |
| acme_version целое число |
| Версия ACME конечной точки. Должно быть 1 для классических конечных точек ACME Let’s Encrypt и Buypass, или 2 для стандартных конечных точек ACME v2. Значение по умолчанию 1. Обратите внимание, что в community.crypto 2.0.0 этот параметр будет *обязательным* и больше не будет иметь значения по умолчанию. Также следует отметить, что поддержка ACME v1 в конечном счете будет снята. |
| certificate путь / обязательно | Путь к сертификату, который нужно отменить. | |
| private_key_content строка | Содержимое закрытого ключа сертификата. Обратите внимание, что необходимо указать ровно один из account_key_src, account_key_content, private_key_src или private_key_content.
Предупреждение: содержимое будет записано во временный файл, который будет удалён Ansible по завершении модуля. Поскольку это важный закрытый ключ, который может быть использован для изменения ключа учетной записи или для аннулирования ваших сертификатов без знания их закрытых ключей, это может быть неприемлемо. В случае использования cryptography, содержимое не записывается во временный файл. Тем не менее, оно может быть записано в файл на диске Ansible в процессе перемещения модуля со своим аргументом на узел, где он выполняется. | |
| private_key_src путь | Путь к закрытому ключу сертификата. Обратите внимание, что необходимо указать ровно один из account_key_src, account_key_content, private_key_src или private_key_content. | |
| revoke_reason целое число | Один из кодов причины аннулирования, определенных в разделе 5.3.1 RFC5280. Возможные значения: 0 (неопределено), 1 (keyCompromise), 2 (cACompromise), 3 (affiliationChanged), 4 (superseded), 5 (cessationOfOperation), 6 (certificateHold), 8 (removeFromCRL), 9 (privilegeWithdrawn), 10 (aACompromise). | |
| select_crypto_backend строка |
| Определяет используемый криптографический модуль. Значение по умолчанию auto, которое пытается использовать cryptography, если доступно, и в противном случае переходит на openssl.Если установлено openssl, будет использоваться бинарный файл openssl. Если установлено cryptography, будет использоваться библиотека cryptography. |
| validate_certs булево |
| Определяет, будут ли TLS-сертификаты проверяться при вызове каталога ACME. Предупреждение: для тестирования, например, при тестировании на локальном сервере Pebble, *необходимо* устанавливать значение no. |
Примечания
Примечание
- Необходимо указать ровно один из
account_key_src,account_key_content,private_key_srcилиprivate_key_content. - Попытка аннулировать уже аннулированный сертификат не должна изменять его состояние, даже если причина аннулирования отличалась от указанной здесь. Кроме того, в зависимости от сервера, может быть возвращено другое сообщение об ошибке, если сертификат уже был аннулирован.
- Не поддерживает
check_mode. - Если доступна достаточно новая версия библиотеки
cryptography(подробнее см. Требования), она будет использоваться вместо бинарного файлаopenssl. Это можно явно отключить или включить с помощью параметраselect_crypto_backend. Обратите внимание, что использование бинарного файлаopensslбудет медленнее и менее безопасным, поскольку содержимое закрытого ключа всегда должно храниться на диске (см.account_key_content). - Хотя значения по умолчанию выбраны таким образом, чтобы модуль можно было использовать с центром сертификации Let’s Encrypt, в принципе модуль можно использовать с любым центром сертификации, предоставляющим конечную точку ACME, например Buypass Go SSL.
См. также
См. также
- Документация Let’s Encrypt
-
Документация центра сертификации Let’s Encrypt. Предоставляет полезную информацию, например, о ограничениях на частоту запросов.
- Автоматическое управление сертификатами ACME
-
Спецификация протокола ACME (RFC 8555).
- community.crypto.acme_inspect
-
Позволяет отлаживать проблемы.
Примеры
- name: Revoke certificate with account key
community.crypto.acme_certificate_revoke:
account_key_src: /etc/pki/cert/private/account.key
certificate: /etc/httpd/ssl/sample.com.crt
- name: Revoke certificate with certificate's private key
community.crypto.acme_certificate_revoke:
private_key_src: /etc/httpd/ssl/sample.com.key
certificate: /etc/httpd/ssl/sample.com.crt
Авторы
- Felix Fontein (@felixfontein)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/crypto/acme_certificate_revoke_module.html