--- - name: Ensure python OpenSSL dependencies are installed. pip: name: pyOpenSSL state: present - name: Copy LetsEncrypt Apache config template: src: etc/letsencrypt/options-ssl-apache.conf.j2 dest: /etc/letsencrypt/options-ssl-apache.conf owner: root group: root mode: 0644 - name: Ensure directory exists for local self-signed TLS certs. file: path: /etc/letsencrypt/live/{{ ansible_domain }} state: directory - name: Generate an OpenSSL private key. openssl_privatekey: path: /etc/letsencrypt/live/{{ ansible_domain }}/privkey.pem - name: Generate an OpenSSL CSR. openssl_csr: path: /etc/ssl/private/{{ ansible_domain }}.csr privatekey_path: /etc/letsencrypt/live/{{ ansible_domain }}/privkey.pem common_name: "{{ ansible_domain }}" - name: Generate a Self Signed OpenSSL certificate. openssl_certificate: path: /etc/letsencrypt/live/{{ ansible_domain }}/fullchain.pem privatekey_path: /etc/letsencrypt/live/{{ ansible_domain }}/privkey.pem csr_path: /etc/ssl/private/{{ ansible_domain }}.csr provider: selfsigned