Я хочу создать самозаверяющий сертификат, чтобы использовать его с 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
Я хотел бы знать следующие вещи:
Например, см. сертификат-self-signed.yml.
Спасибо! - Это именно то, что я искал!
- openssl_privatekey:
path: /etc/stunnel/redis-server.key
size: 2048
- openssl_csr:
path: /etc/stunnel/redis-server.csr
privatekey_path: /etc/stunnel/redis-server.key
- openssl_certificate:
provider: selfsigned
path: /etc/stunnel/redis-server.crt
privatekey_path: /etc/stunnel/redis-server.key
csr_path:/etc/stunnel/redis-server.csr
oof Я думаю, вы правы, но я никогда не использовал это решение в производстве... Если ответ наберет около 5 голосов или кто-то опубликует комментарий, я приму ответ.
openssl_certificate
нужен provider: selfsigned
. В противном случае это сработало для меня. -days
может быть достигнуто с помощью selfsigned_not_after
, я думаю.
Необходимо 1) Сгенерировать закрытый ключ 2) использовать закрытый ключ для Создание запроса на подпись сертификата (CSR) и 3) использовать закрытый ключ и CSR для Создайте самоподписанный сертификат.