【发布时间】:2019-05-28 21:10:56
【问题描述】:
我想创建一个自签名证书以将其与 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
我想知道以下几点:
- a) 我怎样才能从原始命令中获得相同的结果,但使用 Ansible 模块?
- b) 有没有更好的方法来使用 Ansible 管理自签名证书?
【问题讨论】:
-
必须 1) Generate private key 2) 使用 Generate Certificate Signing Request (CSR) 的私钥和 3) 使用 Generate a Self Signed certificate 的私钥和 CSR。
-
谢谢! - 这正是我想要的!