community.crypto.openssl_dhparam – Генерация параметров OpenSSL Diffie-Hellman
Примечание
Этот плагин входит в коллекцию community.crypto (версия 1.4.0).
Для его установки используйте: ansible-galaxy collection install community.crypto
Для использования в плейбуке укажите: community.crypto.openssl_dhparam
Описание
- Этот модуль позволяет (пере)генерировать параметры OpenSSL DH.
- Этот модуль использует общие аргументы файла для указания разрешений сгенерированного файла.
- Обратите внимание, что модуль перегенерирует существующие параметры DH, если они не соответствуют параметрам модуля. Если вы опасаетесь, что это может перезаписать ваши существующие параметры DH, рассмотрите использование параметра backup.
- Модуль может использовать библиотеку cryptography Python или исполняемый файл
openssl. По умолчанию он пытается определить, какой из них доступен. Это можно переопределить с помощью параметра select_crypto_backend.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- Библиотека cryptography >= 2.0
- Или двоичный файл OpenSSL
openssl
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| attributes строка добавлен в версии 2.3 ansible.builtin | Атрибуты, которые должен иметь полученный файл или каталог. Для получения поддерживаемых флагов обратитесь к справке по chattr на целевой системе. Эта строка должна содержать атрибуты в том же порядке, что и отображаемый lsattr. Оператор = предполагается по умолчанию, в противном случае операторы + или - должны быть включены в строку.алиасы: attr | |
| backup булево |
| Создать резервную копию файла с отметкой времени, чтобы вы могли получить исходные параметры DH, если случайно перезаписали их новыми. |
| 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).Если mode не указан и целевой файл не существует, по умолчанию будет использоваться umask на системе при установке режима для вновь созданного файла.Если mode не указан и целевой файл существует, будет использован режим существующего файла.Указание mode — лучший способ гарантировать, что файлы создаются с правильными разрешениями. См. CVE-2020-1736 для получения дополнительной информации. | |
| owner строка | Имя пользователя, который должен владеть файлом/каталогом, как это передается в chown. | |
| path путь / обязательный | Имя файла, в котором будут сохранены сгенерированные параметры. | |
| return_content булево добавлен в версии 1.0.0 community.crypto |
| Если установлено yes, будет возвращено содержимое (текущих или сгенерированных) параметров DH как dhparams. |
| select_crypto_backend строка добавлен в версии 1.0.0 community.crypto |
| Определяет, какой криптографический бэкенд использовать. Значение по умолчанию auto, которое пытается использовать cryptography при наличии и переходит к openssl. Если установлено openssl, попытается использовать исполняемый файл OpenSSL openssl.Если установлено cryptography, попытается использовать библиотеку cryptography. |
| selevel строка | Часть контекста файла SELinux, представляющая уровень. Это атрибут MLS/MCS, иногда известный как range.При установке в _default, будет использована часть политики level, если она доступна. | |
| serole строка | Часть контекста файла SELinux, представляющая роль. При установке в _default, будет использована часть политики role, если она доступна. | |
| setype строка | Часть контекста файла SELinux, представляющая тип. При установке в _default, будет использована часть политики type, если она доступна. | |
| seuser строка | Часть контекста файла SELinux, представляющая пользователя. По умолчанию используется политика system, где это применимо.При установке в _default, будет использована часть политики user, если она доступна. | |
| size целое число | Значение по умолчанию: 4096 | Размер (в битах) сгенерированных параметров DH. |
| state строка |
| Должны ли параметры существовать или нет, выполняя действия, если состояние отличается от указанного. |
| unsafe_writes булево добавлен в версии 2.2 ansible.builtin |
| Влияет на то, когда использовать атомарную операцию для предотвращения повреждения данных или несогласованных чтений из целевого файла. По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованных чтений из целевых файлов, но иногда системы настроены или просто неисправны способами, которые препятствуют этому. Один пример - смонтированные файлы docker, которые не могут быть обновлены атомарно изнутри контейнера и могут быть записаны только небезопасным способом. Этот параметр позволяет Ansible переходить к небезопасным методам обновления файлов, когда атомарные операции терпят неудачу (хотя это не заставляет Ansible выполнять небезопасные записи). ВАЖНО! Небезопасные записи подвержены гонкам и могут привести к повреждению данных. |
Примечания
Примечание
- Поддерживает
check_mode.
См. также
См. также
- community.crypto.x509_certificate
-
Официальная документация модуля community.crypto.x509_certificate.
- community.crypto.openssl_csr
-
Официальная документация модуля community.crypto.openssl_csr.
- community.crypto.openssl_pkcs12
-
Официальная документация модуля community.crypto.openssl_pkcs12.
- community.crypto.openssl_privatekey
-
Официальная документация модуля community.crypto.openssl_privatekey.
- community.crypto.openssl_publickey
-
Официальная документация модуля community.crypto.openssl_publickey.
Примеры
- name: Generate Diffie-Hellman parameters with the default size (4096 bits)
community.crypto.openssl_dhparam:
path: /etc/ssl/dhparams.pem
- name: Generate DH Parameters with a different size (2048 bits)
community.crypto.openssl_dhparam:
path: /etc/ssl/dhparams.pem
size: 2048
- name: Force regenerate an DH parameters if they already exist
community.crypto.openssl_dhparam:
path: /etc/ssl/dhparams.pem
force: yes
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_file строка | изменённое, если backup yes
| Имя созданного файла резервной копии. Пример: /path/to/dhparams.pem.2019-03-09@11:22~ |
| dhparams строка Добавлен в 1.0.0 community.crypto | если state present и return_content yes
| Содержимое параметров DH (текущих или сгенерированных). |
| filename строка | изменённое или успех | Путь к сгенерированным параметрам Диффи-Хеллмана. Пример: /etc/ssl/dhparams.pem |
| size целое число | изменённое или успех | Размер (в битах) параметров Диффи-Хеллмана. Пример: 4096 |
Авторы
- Thom Wiggers (@thomwiggers)
© 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/openssl_dhparam_module.html