我正在使用Ansible 2.4,并且在我的一个角色中包含了letsencrypt模块,希望最后获得完整的`.pem'格式文件(密钥,链,证书)。生成密钥或使用csr来请求新证书都没有问题,挑战也没有问题,但是当一切完成后,我只拿回了证书,没有链。
当我尝试使用它们时,Apache将无法开始说密钥和证书不匹配。我以为这是因为我没有包括丢失的链条。
根据此处的文档:https://docs.ansible.com/ansible/latest/modules/acme_certificate_module.html chain|chain_dest
和fullchain|fullchain_dest
参数直到Ansible 2.5才添加。所以我升级到Ansible 2.7(通过git),但仍然遇到完全相同的错误...
FAILED! => {
"changed": false,
"msg": "
Unsupported parameters for (letsencrypt) module: chain_dest, fullchain_dest
Supported parameters include: account_email, account_key, acme_directory, agreement,
challenge, csr, data, dest, remaining_days"
}
我已经尝试了两者的别名和当前名称,但是没有任何作用。这是我当前的质询响应电话:
- name: Let the challenge be validated and retrieve the cert and intermediate certificate
letsencrypt:
account_key: /etc/ssl/lets_encrypt.key
account_email: #####@#####.###
csr: /etc/ssl/{{ myhost.public_hostname }}.csr
dest: /etc/ssl/{{ myhost.public_hostname }}.crt
chain_dest: /etc/ssl/{{ myhost.public_hostname }}.int
fullchain_dest: /etc/ssl/{{ myhost.public_hostname }}.pem
challenge: dns-01
acme_directory: https://acme-v01.api.letsencrypt.org/directory
remaining_days: 60
data: "{{ le_com_challenge }}"
tags: sslcert
文档说这是有效的,但是错误响应不包含chain|chain_dest
或fullchain|fullchain_dest
作为有效参数。
从文档中,我希望此响应将导致创建新证书(.crt),创建链(.int)和要创建的完整链(.pem)。
任何帮助将不胜感激。
答案 0 :(得分:0)
应该等待5分钟...似乎更新的参数仅在更新的模块名称acme_certificate
下可用,即使它说letsencrypt
是有效的别名。一旦我更新了它,它就起作用了。