openssl_privatekey - Генерация ключей OpenSSL.
Новое в версии 2.3.
Описание
- Этот модуль позволяет (пере)генерировать ключи OpenSSL. Он использует библиотеку pyOpenSSL для взаимодействия с openssl. Можно генерировать ключи RSA или DSA. Ключи генерируются в формате PEM.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python-pyOpenSSL
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| attributes (добавлено в 2.3) | Значение по умолчанию: None | Атрибуты файла или каталога. Для получения поддерживаемых флагов см. страницу справки для chattr на целевой системе. Эта строка должна содержать атрибуты в том же порядке, что и в выводе lsattr. псевдонимы: attr |
| cipher (добавлено в 2.4) | Шифр для шифрования закрытого ключа. (шифр можно найти, выполнив команду `openssl list-cipher-algorithms`) | |
| force |
нет | Перегенерировать ключ, даже если он уже существует |
| group | Значение по умолчанию: None | Имя группы, которая должна владеть файлом/каталогом, как это передается в chown. |
| mode | Значение по умолчанию: None | Режим файла или каталога. Для тех, кто привык к /usr/bin/chmod, помните, что режимы фактически являются восьмеричными числами (например, 0644 или 01777). Опускание ведущей нули, вероятно, приведет к нежелательным результатам. С версии 1.8 режим можно указать в символическом виде (например, u+rwx или u=rw,g=r,o=r). |
| owner | Значение по умолчанию: None | Имя пользователя, который должен владеть файлом/каталогом, как это передается в chown. |
| passphrase (добавлено в 2.4) | Пароль для закрытого ключа. | |
| path обязательно | Имя файла, в котором будет записан сгенерированный закрытый ключ TLS/SSL. Его режим будет 0600. | |
| selevel | Значение по умолчанию: s0 | Часть контекста файла SELinux. Это атрибут MLS/MCS, иногда известный как range. _default функция работает, как и для seuser. |
| serole | Значение по умолчанию: None | Часть контекста файла SELinux, роль. _default функция работает, как и для seuser. |
| setype | Значение по умолчанию: None | Часть контекста файла SELinux, тип. _default функция работает, как и для seuser. |
| seuser | Значение по умолчанию: None | Часть контекста файла SELinux, пользователь. По умолчанию будет использоваться политика системы, если применимо. Если установлено _default, будет использоваться часть политики user, если она доступна. |
| size | Значение по умолчанию: 4096 | Размер (в битах) генерируемого ключа TLS/SSL. |
| state |
| Должен ли закрытый ключ существовать или нет, предпринимая действия, если состояние отличается от указанного. |
| type |
| Алгоритм, используемый для генерации закрытого ключа TLS/SSL. |
| unsafe_writes (добавлено в 2.2) |
| Обычно этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованных чтений из целевых файлов. Иногда системы настроены или просто имеют ошибки, которые препятствуют этому. Один из примеров — файлы, смонтированные в docker, они не могут обновляться атомарно и могут обновляться только небезопасным способом. Эта опция булевого типа позволяет Ansible перейти к небезопасным методам обновления файлов в тех случаях, когда у вас нет другого выбора. Имейте в виду, что это подвержено гонкам и может привести к повреждению данных. |
Примеры
# Generate an OpenSSL private key with the default values (4096 bits, RSA)
- openssl_privatekey:
path: /etc/ssl/private/ansible.com.pem
# Generate an OpenSSL private key with the default values (4096 bits, RSA)
# and a passphrase
- openssl_privatekey:
path: /etc/ssl/private/ansible.com.pem
passphrase: ansible
cipher: aes256
# Generate an OpenSSL private key with a different size (2048 bits)
- openssl_privatekey:
path: /etc/ssl/private/ansible.com.pem
size: 2048
# Force regenerate an OpenSSL private key if it already exists
- openssl_privatekey:
path: /etc/ssl/private/ansible.com.pem
force: True
# Generate an OpenSSL private key with a different algorithm (DSA)
- openssl_privatekey:
path: /etc/ssl/private/ansible.com.pem
type: DSA
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| filename строка | изменено или успех | Путь к сгенерированному файлу закрытого ключа TLS/SSL Пример: /etc/ssl/private/ansible.com.pem |
| fingerprint словарь | изменено или успех | Отпечаток отпечатка открытого ключа. Отпечаток будет сгенерирован для каждого доступного алгоритма hashlib. Требуется PyOpenSSL >= 16.0 для осмысленного вывода. Пример: {'sha1': '51:cc:7c:68:5d:eb:41:43:88:7e:1a:ae:c7:f8:24:72:ee:71:f6:10', 'sha384': '85:39:50:4e:de:d9:19:33:40:70:ae:10:ab:59:24:19:51:c3:a2:e4:0b:1c:b1:6e:dd:b3:0c:d9:9e:6a:46:af:da:18:f8:ef:ae:2e:c0:9a:75:2c:9b:b3:0f:3a:5f:3d', 'sha224': 'b1:19:a6:6c:14:ac:33:1d:ed:18:50:d3:06:5c:b2:32:91:f1:f1:52:8c:cb:d5:75:e9:f5:9b:46', 'sha256': '41:ab:c7:cb:d5:5f:30:60:46:99:ac:d4:00:70:cf:a1:76:4f:24:5d:10:24:57:5d:51:6e:09:97:df:2f:de:c7', 'sha512': 'fd:ed:5e:39:48:5f:9f:fe:7f:25:06:3f:79:08:cd:ee:a5:e7:b3:3d:13:82:87:1f:84:e1:f5:c7:28:77:53:94:86:56:38:69:f0:d9:35:22:01:1e:a6:60:...:0f:9b', 'md5': '84:75:71:72:8d:04:b5:6c:4d:37:6d:66:83:f5:4c:29'} |
| size целое число | изменено или успех | Размер (в битах) закрытого ключа TLS/SSL Пример: 4096 |
| type строка | изменено или успех | Алгоритм, используемый для генерации закрытого ключа TLS/SSL Пример: RSA |
Статус
Этот модуль помечен как превью, что означает, что гарантии обратной совместимости нет.
Автор
- Янис Гуэнан (@Spredzy)
Подсказка
Если вы заметили какие-либо проблемы в этой документации, вы можете отредактировать этот документ для его улучшения.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/openssl_privatekey_module.html