Spec-Zone.ru › Ansible 2.10

community.crypto.openssh_keypair – Генерация открытых и закрытых ключей OpenSSH.

Примечание

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

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

Для использования в плейбуке укажите: community.crypto.openssh_keypair.

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

Описание

  • Этот модуль позволяет (повторно) генерировать открытые и закрытые ключи OpenSSH. Он использует ssh-keygen для генерации ключей. Можно сгенерировать rsa, dsa, rsa1, ed25519 или ecdsa закрытые ключи.

Требования

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

  • ssh-keygen

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
attributes
строка
добавлен в версии 2.3 ansible.builtin
Атрибуты, которые должны иметь результирующий файл или директория.
Для получения поддерживаемых флагов обратитесь к справке по chattr на целевой системе.
Эта строка должна содержать атрибуты в том же порядке, что и в выводе lsattr.
Оператор = по умолчанию, в противном случае необходимо включить операторы + или - в строку.

псевдонимы: attr
comment
строка
Предоставляет новый комментарий для открытого ключа.
force
логическое значение
    Варианты:
  • нет ←
  • да
Ключ должен быть сгенерирован заново, даже если он уже существует
group
строка
Имя группы, которая должна владеть файлом/директорией, как это делается в команде chown.
mode
сырой
Разрешения, которые должен иметь результирующий файл или директория.
Для тех, кто привык к /usr/bin/chmod, помните, что режимы фактически являются восьмеричными числами. Вы должны либо добавить ведущую ноль, чтобы интерпретатор YAML Ansible понимал, что это восьмеричное число (например, 0644 или 01777) или заключить его в кавычки (например, '644' или '1777') чтобы Ansible получил строку и мог выполнить преобразование из строки в число.
Если Ansible получит число без одного из этих правил, в результате получится десятичное число, что приведет к нежелательным результатам.
Начиная с Ansible 1.8, режим может быть задан в символической форме (например, u+rwx или u=rw,g=r,o=r).
owner
строка
Имя пользователя, который должен владеть файлом/директорией, как это делается в команде chown.
path
путь / обязательно
Имя файлов, содержащих открытый и закрытый ключи. Файл, содержащий открытый ключ, будет иметь расширение .pub.
regenerate
строка
добавлен в 1.0.0 community.crypto
    Варианты:
  • никогда
  • ошибка
  • частичная_идемпотентность ←
  • полная_идемпотентность
  • всегда
Позволяет настроить ситуации, в которых модуль разрешено повторно генерировать закрытые ключи. Модуль всегда сгенерирует новый ключ, если целевой файл не существует.
По умолчанию ключ будет сгенерирован заново, если он не соответствует параметрам модуля, за исключением случаев, когда ключ не может быть прочитан или пароль не совпадает. Обратите внимание, что это изменилось для Ansible 2.10. Для Ansible 2.9 поведение было таким же, как если бы был задан full_idempotence.
Если установлено значение never, модуль завершится с ошибкой, если ключ не может быть прочитан или пароль не совпадает, и никогда не будет генерировать существующий ключ.
Если установлено значение fail, модуль завершится с ошибкой, если ключ не соответствует параметрам модуля.
Если установлено значение partial_idempotence, ключ будет сгенерирован заново, если он не соответствует параметрам модуля. Ключ не будет сгенерирован заново, если он не может быть прочитан (поврежденный файл), ключ защищен неизвестным паролем или когда ключ не защищен паролем, но пароль указан.
Если установлено значение full_idempotence, ключ будет сгенерирован заново, если он не соответствует параметрам модуля. Это также относится к случаям, когда ключ не может быть прочитан (поврежденный файл), ключ защищен неизвестным паролем или когда ключ не защищен паролем, но пароль указан. Убедитесь, что у вас есть резервная копия при использовании этого варианта!
Если установлено значение always, модуль всегда будет повторно генерировать ключ. Это эквивалентно установке force в yes.
Обратите внимание, что изменение комментария и разрешений может быть выполнено без перегенерации. Поэтому даже при never, задача может привести к изменениям.
selevel
строка
Часть уровня SELinux контекста файла.
Это атрибут MLS/MCS, иногда называемый range.
Когда установлено значение _default, будет использоваться часть политики level, если она доступна.
serole
строка
Часть роли контекста SELinux файла.
Когда установлено значение _default, будет использоваться часть политики role, если она доступна.
setype
строка
Часть типа контекста SELinux файла.
Когда установлено значение _default, будет использоваться часть политики type, если она доступна.
seuser
строка
Часть пользователя контекста SELinux файла.
По умолчанию используется политика system, где это применимо.
Когда установлено значение _default, будет использоваться часть политики user, если она доступна.
size
целое число
Указывает количество бит в закрытом ключе для создания. Для ключей RSA минимальный размер составляет 1024 бита, а по умолчанию используется 4096 бит. Обычно достаточно 2048 бит. Ключи DSA должны иметь ровно 1024 бита, как указано в FIPS 186-2. Для ключей ECDSA размер определяет длину ключа, выбирая один из трех размеров эллиптических кривых: 256, 384 или 521 бит. Попытка использовать длины бит, отличные от этих трех значений для ключей ECDSA, приведет к ошибке этого модуля. Ключи Ed25519 имеют фиксированную длину, и размер будет проигнорирован.
state
строка
    Варианты:
  • present ←
  • absent
Определяет, должны ли существовать закрытый и открытый ключи или нет, предпринимая действия, если состояние отличается от указанного.
type
строка
    Варианты:
  • rsa ←
  • dsa
  • rsa1
  • ecdsa
  • ed25519
Алгоритм, используемый для генерации закрытого ключа SSH. rsa1 предназначен для протокола версии 1. rsa1 устарел и может не поддерживаться всеми версиями ssh-keygen.
unsafe_writes
логическое значение
добавлен в 2.2 ansible.builtin
    Варианты:
  • нет ←
  • да
Влияние на использование атомарных операций для предотвращения повреждения данных или несогласованного чтения из целевого файла.
По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованного чтения из целевых файлов, но иногда системы настроены или просто не работают так, как ожидается, что мешает этому. Один из примеров - смонтированные в Docker файлы, которые не могут быть обновлены атомарно изнутри контейнера и могут быть записаны только ненадёжным образом.
Этот параметр позволяет Ansible перейти к небезопасным методам обновления файлов, когда атомарные операции не удаются (однако, он не заставляет Ansible выполнять небезопасные записи).
ВАЖНО! Небезопасные записи подвержены проблемам гонок и могут привести к повреждению данных.

Примечания

Примечание

  • В случае повреждения или защиты SSH ключа паролем, модуль завершится с ошибкой. Установите параметр force в yes если хотите сгенерировать пару ключей заново.

Примеры

- name: Generate an OpenSSH keypair with the default values (4096 bits, rsa)
  community.crypto.openssh_keypair:
    path: /tmp/id_ssh_rsa

- name: Generate an OpenSSH rsa keypair with a different size (2048 bits)
  community.crypto.openssh_keypair:
    path: /tmp/id_ssh_rsa
    size: 2048

- name: Force regenerate an OpenSSH keypair if it already exists
  community.crypto.openssh_keypair:
    path: /tmp/id_ssh_rsa
    force: True

- name: Generate an OpenSSH keypair with a different algorithm (dsa)
  community.crypto.openssh_keypair:
    path: /tmp/id_ssh_dsa
    type: dsa

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

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

Ключ Возвращаемое значение Описание
comment
строка
изменено или успех
Комментарий сгенерированного ключа

Пример:
test@comment
filename
строка
изменено или успех
Путь к сгенерированному файлу закрытого SSH-ключа

Пример:
/tmp/id_ssh_rsa
fingerprint
строка
изменено или успех
Отпечаток ключа.

Пример:
SHA256:r4YCZxihVjedH2OlfjVGI6Y5xAYtdCwk8VxKyzVyYfM
public_key
строка
изменено или успех
Открытый ключ сгенерированного закрытого SSH-ключа

Пример:
ssh-rsa AAAAB3Nza(...omitted...)veL4E3Xcw== test_key
size
целое число
изменено или успех
Размер (в битах) закрытого SSH-ключа

Пример:
4096
type
строка
изменено или успех
Алгоритм, используемый для генерации закрытого SSH-ключа

Пример:
rsa


Авторы

  • David Kainz (@lolcube)

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

Spec-Zone.ru

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