Я хочу создать самозаверяющий сертификат, чтобы использовать его с stunnel, чтобы безопасно туннелировать мой трафик redis между сервером redis и клиентом. Я использую эту команду для генерации сертификата, и она отлично работает.
openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/stunnel/redis-server.key -out /etc/stunnel/redis-server.crt
Поскольку я использую Ansible для предоставления, я хотел бы знать, как я могу преобразовать это в более Ansible способ сделать это, используя модуль. На самом деле существует модуль под названием openssl_certificate Ansible и он сообщает «Этот модуль позволяет (ре) создавать сертификаты OpenSSL.» . Я пытался использовать модуль для генерации сертификата, но не смог заставить его работать.
- name: Generate a Self Signed OpenSSL certificate
openssl_certificate:
path: /etc/stunnel/redis-server.crt
privatekey_path: /etc/stunnel/redis-server.key
csr_path: /etc/stunnel/redis-server.csr
provider: selfsigned
Из документации я не могу указать следующие аргументы -x509 -nodes -days 3650 -newkey rsa:2048
. Конечно, я мог бы также разделить генерацию ключей и сертификатов, но это все равно не позволило бы мне использовать модуль Ansible, верно?
Пример:
openssl genrsa -out /etc/stunnel/key.pem 4096
openssl req -new -x509 -key /etc/stunnel/key.pem -out /etc/stunnel/cert.pem -days 1826
Я хотел бы знать следующее:
- а) Как получить тот же результат из исходной команды, но с использованием модуля Ansible?
- б) Есть ли лучший способ управления самозаверяющими сертификатами с помощью Ansible?