Spec-Zone.ru › Ansible 2.10

community.crypto.get_certificate – Получение сертификата с хоста:порта

Примечание

Этот плагин входит в коллекцию community.crypto (версия 1.3.0).

Для его установки используйте: ansible-galaxy collection install community.crypto.

Для использования в книге задач укажите: community.crypto.get_certificate.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Устанавливает безопасное соединение и возвращает информацию о представленном сертификате
  • Модуль может использовать библиотеку cryptography или pyOpenSSL. По умолчанию он пытается определить, какая из них доступна. Это можно переопределить с помощью параметра select_crypto_backend. Обратите внимание, что бэкэнд PyOpenSSL был устаревшим в Ansible 2.9 и будет удален в community.crypto 2.0.0.
  • Поддержка SNI только с python >= 2.7

Требования

Ниже перечислены требования к хосту, на котором выполняется этот модуль.

  • python >= 2.7 при использовании proxy_host
  • cryptography >= 1.6 или pyOpenSSL >= 0.15

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
ca_cert
путь
Файл PEM, содержащий один или несколько корневых сертификатов; если он присутствует, сертификат будет проверен по этим корневым сертификатам.
Обратите внимание, что это только проверяет, подписан ли сертификат по цепочке; а не то, что сертификат действителен для хоста, который его предоставляет.
host
строка / обязательно
Хост, для которого требуется сертификат (IP-адрес допустим)
port
целое число / обязательно
Порт для подключения
proxy_host
строка
Прокси-хост, используемый при получении сертификата.
proxy_port
целое число
По умолчанию:
8080
Прокси-порт, используемый при получении сертификата.
select_crypto_backend
строка
    Варианты:
  • auto ←
  • cryptography
  • pyopenssl
Определяет, какой криптографический бэкэнд использовать.
По умолчанию выбрано auto, которое пытается использовать cryptography , если оно доступно, и переходит к pyopenssl.
Если установлено значение pyopenssl, будет пытаться использовать библиотеку pyOpenSSL.
Если установлено значение cryptography, будет пытаться использовать библиотеку cryptography.
timeout
целое число
По умолчанию:
10
Таймаут в секундах

Примечания

Примечание

  • При использовании ca_cert в OS X было отмечено, что в некоторых условиях проверка всегда завершается успешно.

Примеры

- name: Get the cert from an RDP port
  community.crypto.get_certificate:
    host: "1.2.3.4"
    port: 3389
  delegate_to: localhost
  run_once: true
  register: cert

- name: Get a cert from an https port
  community.crypto.get_certificate:
    host: "www.google.com"
    port: 443
  delegate_to: localhost
  run_once: true
  register: cert

- name: How many days until cert expires
  debug:
    msg: "cert expires in: {{ expire_days }} days."
  vars:
    expire_days: "{{ (( cert.not_after | to_datetime('%Y%m%d%H%M%SZ')) - (ansible_date_time.iso8601 | to_datetime('%Y-%m-%dT%H:%M:%SZ')) ).days }}"

Возвращаемые значения

Общие возвращаемые значения описаны в здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
cert
строка
успех
Полученный с порта сертификат

expired
булево
успех
Булево значение, указывающее, истек ли сертификат

extensions
список / элементы=словарь
успех
Расширения, примененные к сертификату

asn1_data
строка
успех
Контент ASN.1 в формате Base64 из расширения.

critical
булево
успех
Является ли расширение критическим.

name
строка
успех
Имя расширения.

issuer
словарь
успех
Информация о выдавшем сертификат

not_after
строка
успех
Дата истечения срока действия сертификата

not_before
строка
успех
Дата выдачи сертификата

serial_number
строка
успех
Серийный номер сертификата

signature_algorithm
строка
успех
Алгоритм, используемый для подписи сертификата

subject
словарь
успех
Информация о субъекте сертификата (отделение, общее имя и т.д.)

version
строка
успех
Номер версии сертификата



Авторы

  • John Westcott IV (@john-westcott-iv)

© 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/get_certificate_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API