community.crypto.acme_certificate_revoke – Отмена сертификатов с помощью протокола ACME
Примечание
Этот плагин входит в коллекцию community.crypto (версия 1.3.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 (тестовой и рабочей средой), Buypass (тестовой и рабочей средой) и Pebble testing server. | |
| acme_version целое число |
| Версия ACME конечной точки. Должно быть 1 для классических конечных точек Let’s Encrypt и Buypass ACME или 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 булево |
| Определяет, будут ли вызываемые запросы к каталогу ACME проверять TLS-сертификаты. Предупреждение: должно быть установлено значение no *только* в тестовых целях, например, при тестировании с локальным сервером Pebble. |
Примечания
Примечание
- Ровно один из
account_key_src,account_key_content,private_key_srcилиprivate_key_contentдолжен быть указан. - Попытка отменить уже отменённый сертификат должна привести к неизменённому статусу, даже если причина отмены отличалась от указанной здесь. Также, в зависимости от сервера, может быть возвращена какая-либо другая ошибка, если сертификат уже был отменён.
- Если доступна новая достаточно версия библиотеки
cryptography(см. Требования для деталей), она будет использоваться вместо бинарникаopenssl. Это можно явно отключить или включить с помощью параметраselect_crypto_backend. Обратите внимание, что использование бинарникаopensslбудет медленнее и менее безопасно, поскольку содержимое закрытого ключа всегда должно храниться на диске (см.account_key_content). - Несмотря на то, что значения по умолчанию выбраны так, чтобы модуль можно было использовать с CA Let’s Encrypt, модуль в принципе может быть использован с любой CA, предоставляющей конечную точку 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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/crypto/acme_certificate_revoke_module.html