Spec-Zone.ru › Ansible

community.general.ipa_dnsrecord модуль — Управление записями DNS FreeIPA

Примечание

Этот модуль является частью коллекции community.general (версия 9.5.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install community.general.

Чтобы использовать её в книге задач, укажите: community.general.ipa_dnsrecord.

  • Описание
  • Параметры
  • Атрибуты
  • Примеры
  • Возвращаемые значения

Описание

  • Добавление, изменение и удаление записи DNS IPA с использованием API IPA.

Параметры

Параметр

Комментарии

ipa_host

string

IP-адрес или имя хоста сервера IPA.

Если значение не указано в задаче, вместо него будет использовано значение переменной среды IPA_HOST.

Если и переменная среды IPA_HOST и значение не указаны в задаче, то DNS будет использоваться для попытки обнаружения сервера FreeIPA.

Необходимая запись в FreeIPA - это запись ipa-ca.

Если недоступны ни запись DNS, ни переменная среды IPA_HOST, ни значение в задаче, то будет использовано значение по умолчанию.

Default: "ipa.example.com"

ipa_pass

string

Пароль административного пользователя.

Если значение не указано в задаче, вместо него будет использовано значение переменной среды IPA_PASS.

Обратите внимание, что если библиотека urllib_gssapi доступна, можно использовать GSSAPI для аутентификации в FreeIPA.

Если переменная среды KRB5CCNAME доступна, модуль будет использовать этот кеш учетных данных Kerberos для аутентификации на сервере FreeIPA.

Если доступна переменная среды KRB5_CLIENT_KTNAME, и KRB5CCNAME нет; модуль будет использовать этот ключ Kerberos для аутентификации.

Если GSSAPI недоступен, требуется использование ipa_pass.

ipa_port

integer

Порт сервера FreeIPA / IPA.

Если значение не указано в задаче, вместо него будет использовано значение переменной среды IPA_PORT.

Если и переменная среды IPA_PORT и значение не указаны в задаче, то устанавливается значение по умолчанию.

Default: 443

ipa_prot

string

Протокол, используемый сервером IPA.

Если значение не указано в задаче, вместо него будет использовано значение переменной среды IPA_PROT.

Если и переменная среды IPA_PROT и значение не указаны в задаче, то устанавливается значение по умолчанию.

Choices:

  • "http"
  • "https" ← (default)

ipa_timeout

integer

Указывает таймаут простоя (в секундах) для соединения.

Для массовых операций может потребоваться увеличить это значение, чтобы избежать таймаута со стороны сервера IPA.

Если значение не указано в задаче, вместо него будет использовано значение переменной среды IPA_TIMEOUT.

Если и переменная среды IPA_TIMEOUT и значение не указаны в задаче, то устанавливается значение по умолчанию.

Default: 10

ipa_user

string

Административная учетная запись, используемая на сервере IPA.

Если значение не указано в задаче, вместо него будет использовано значение переменной среды IPA_USER.

Если и переменная среды IPA_USER и значение не указаны в задаче, то устанавливается значение по умолчанию.

Default: "admin"

record_name

aliases: name

string / required

Имя записи DNS для управления.

record_ttl

integer

Установите TTL для записи.

Применяется только при добавлении новой или изменении значения record_value или record_values.

record_type

string

Тип имени записи DNS.

Поддержка NS была добавлена в comunity.general 8.2.0.

Поддержка SSHFP была добавлена в community.general 9.1.0.

Choices:

  • "A" ← (default)
  • "AAAA"
  • "A6"
  • "CNAME"
  • "DNAME"
  • "MX"
  • "NS"
  • "PTR"
  • "SRV"
  • "TXT"
  • "SSHFP"

record_value

string

Управлять именем записи DNS с этим значением.

Взаимоисключающее с record_values, и должно быть указано ровно одно из record_value и record_values.

Используйте record_values если вам нужно указать несколько значений.

В случае типов записей A или AAAA, это будет IP-адрес.

В случае типа записи A6, это будут данные записи A6.

В случае типа записи CNAME, это будет имя хоста.

В случае типа записи DNAME, это будет целевое имя DNAME.

В случае типа записи NS, это будет имя хоста сервера имен. Имя хоста должно уже иметь действительную запись A или AAAA.

В случае типа записи PTR, это будет имя хоста.

В случае типа записи TXT, это будет текст.

В случае типа записи SRV, это будет запись службы.

В случае типа записи MX, это будет запись почтового обмена.

В случае типа записи SSHFP, это будет запись отпечатка SSH.

record_values

list / elements=string

Управлять именем записи DNS с этим значением.

Взаимоисключающее с record_value, и должно быть указано ровно одно из record_value и record_values.

В случае типов записей A или AAAA, это будет IP-адрес.

В случае типа записи A6, это будут данные записи A6.

В случае типа записи CNAME, это будет имя хоста.

В случае типа записи DNAME, это будет целевое имя DNAME.

В случае типа записи NS, это будет имя хоста сервера имен. Имя хоста должно уже иметь действительную запись A или AAAA.

В случае типа записи PTR, это будет имя хоста.

В случае типа записи TXT, это будет текст.

В случае типа записи SRV, это будет запись службы.

В случае типа записи MX, это будет запись почтового обмена.

В случае типа записи SSHFP, это будет запись отпечатка SSH.

state

string

Состояние, которое необходимо обеспечить

Choices:

  • "absent"
  • "present" ← (default)

validate_certs

boolean

Это применимо только если ipa_prot равно https.

Если установлено значение false, сертификаты SSL не будут проверены.

Это значение следует устанавливать только в false на сайтах с самоподписанными сертификатами, контролируемыми лично.

Варианты:

  • false
  • true ← (по умолчанию)

zone_name

string / обязательно

Имя зоны DNS, для которой необходимо управлять записями DNS.

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может работать в check_mode и возвращать прогноз статуса изменений без модификации целевого объекта.

diff_mode

Поддержка: нет

Возвращает подробности о том, что изменилось (или, возможно, требует изменения в check_mode) при использовании режима сравнения.

Примеры

- name: Ensure dns record is present
  community.general.ipa_dnsrecord:
    ipa_host: spider.example.com
    ipa_pass: Passw0rd!
    state: present
    zone_name: example.com
    record_name: vm-001
    record_type: 'AAAA'
    record_value: '::1'

- name: Ensure that dns records exists with a TTL
  community.general.ipa_dnsrecord:
    name: host02
    zone_name: example.com
    record_type: 'AAAA'
    record_values: '::1,fe80::1'
    record_ttl: 300
    ipa_host: ipa.example.com
    ipa_pass: topsecret
    state: present

- name: Ensure a PTR record is present
  community.general.ipa_dnsrecord:
    ipa_host: spider.example.com
    ipa_pass: Passw0rd!
    state: present
    zone_name: 2.168.192.in-addr.arpa
    record_name: 5
    record_type: 'PTR'
    record_value: 'internal.ipa.example.com'

- name: Ensure a TXT record is present
  community.general.ipa_dnsrecord:
    ipa_host: spider.example.com
    ipa_pass: Passw0rd!
    state: present
    zone_name: example.com
    record_name: _kerberos
    record_type: 'TXT'
    record_value: 'EXAMPLE.COM'

- name: Ensure an SRV record is present
  community.general.ipa_dnsrecord:
    ipa_host: spider.example.com
    ipa_pass: Passw0rd!
    state: present
    zone_name: example.com
    record_name: _kerberos._udp.example.com
    record_type: 'SRV'
    record_value: '10 50 88 ipa.example.com'

- name: Ensure an MX records are present
  community.general.ipa_dnsrecord:
    ipa_host: spider.example.com
    ipa_pass: Passw0rd!
    state: present
    zone_name: example.com
    record_name: '@'
    record_type: 'MX'
    record_values:
      - '1 mailserver-01.example.com'
      - '2 mailserver-02.example.com'

- name: Ensure that dns record is removed
  community.general.ipa_dnsrecord:
    name: host01
    zone_name: example.com
    record_type: 'AAAA'
    record_value: '::1'
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret
    state: absent

- name: Ensure an NS record for a subdomain is present
  community,general.ipa_dnsrecord:
    name: subdomain
    zone_name: example.com
    record_type: 'NS'
    record_value: 'ns1.subdomain.exmaple.com'
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: ChangeMe!

- name: Retrieve the current sshfp fingerprints
  ansible.builtin.command: ssh-keyscan -D localhost
  register: ssh_hostkeys

- name: Update the SSHFP records in DNS
  community.general.ipa_dnsrecord:
    name: "{{ inventory_hostname}}"
    zone_name: example.com
    record_type: 'SSHFP'
    record_values: "{{ ssh_hostkeys.stdout.split('\n') | map('split', 'SSHFP ') | map('last') | list }}"
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: ChangeMe!

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

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

Ключ

Описание

dnsrecord

словарь

Запись DNS, возвращенная API IPA.

Возвращается: всегда

Авторы

  • Abhijeet Kasurde (@Akasurde)

Ссылки на коллекцию

  • Отслеживание задач
  • Репозиторий (исходный код)
  • Задать вопрос
  • Отправить отчет об ошибке
  • Запросить новую функцию
  • Общение

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/ipa_dnsrecord_module.html

Spec-Zone.ru

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