pescobar.dehydrated

Build-Status Ansible Galaxy

ansible-role-dehydrated

Installiere den dehydrated letsencrypt/acme Client

Rollenvariablen

dehydrated_config_dir: "/etc/dehydrated"

dehydrated_wellknown_dir: "/var/www/dehydrated/"

dehydrated_certs_dir: "{{ dehydrated_config_dir }}/certs"

dehydrated_version: "master"

dehydrated_install_dir: "/usr/local/bin"

dehydrated_contact_email: "[email protected]"

dehydrated_domains:
  - "{{ ansible_fqdn }}"

dehydrated_hook_script_path: "{{ dehydrated_config_dir }}/hook.sh"

# dies ist der Befehl, der ausgeführt wird, wenn ein neues Zertifikat bereitgestellt wird
# dieser Befehl ist in der Funktion deploy_cert() im
# dehydrated-Hook-Skript definiert
dehydrated_hook_deploy_cert_cmd: |
  systemctl reload httpd

Beispiel-Playbook (unter Verwendung von geerlingguy.apache)

- name: Webserver mit SSL konfigurieren
  hosts: webserver
  gather_facts: True
  remote_user: root

  vars:

    dehydrated_contact_email: "[email protected]"

    vhost_public_domain: meinecoolewebseite.com

    apache_global_vhost_settings: |
      DirectoryIndex index.php index.html
      Alias /.well-known/acme-challenge/ {{ dehydrated_wellknown_dir }}
      <Directory {{ dehydrated_wellknown_dir }} >
          Require all granted
      </Directory>

    apache_vhosts:
      - servername: "{{ vhost_public_domain }}"
        serveralias: "www.{{ vhost_public_domain }}"
        serveradmin: "{{ dehydrated_contact_email }}"
        documentroot: "/var/www/{{ vhost_public_domain }}"
        extra_parameters: |

          # leite gesamten Verkehr auf https um, außer die letsencrypt-Anfragen
          RewriteEngine On
          RewriteCond %{HTTPS} off
          RewriteCond %{REQUEST_URI} !^/.well-known/
          RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

    apache_vhosts_ssl:
      - servername: "{{ vhost_public_domain }}"
        serveralias: "www.{{ vhost_public_domain }}"
        serveradmin: "{{ dehydrated_contact_email }}"
        documentroot: "/var/www/{{ vhost_public_domain }}"
        certificate_file: "{{ dehydrated_certs_dir }}/{{ vhost_public_domain }}/cert.pem"
        certificate_key_file: "{{ dehydrated_certs_dir }}/{{ vhost_public_domain }}/privkey.pem"
        certificate_chain_file: "{{ dehydrated_certs_dir }}/{{ vhost_public_domain }}/fullchain.pem"

    # diese Variable ist erforderlich für die Rolle "geerlingguy.apache", damit ssl vhosts
    # nur konfiguriert werden, wenn das SSL-Zertifikat vorhanden ist.
    apache_ignore_missing_ssl_certificate: false

  tasks:

    - name: Installiere und konfiguriere den Apache-Webserver (noch kein SSL)
      import_role:
        name: geerlingguy.apache

    - name: Installiere den dehydrated letsencrypt/acme Client
      import_role:
        name: ansible-role-dehydrated

    # führe Handler aus, damit Apache den .well-known-Ordner aktiviert und
    # dehydrated die SSL-Zertifikate anfordert
    - meta: flush_handlers

    - name: Installiere und konfiguriere den Apache-Webserver erneut (konfiguriere SSL vhosts)
      import_role:
        name: geerlingguy.apache

Lizenz

GPLv3

Autoreninformation

Pablo Escobar

Über das Projekt

Install the dehydrated letsencrypt/acme client

Installieren
ansible-galaxy install pescobar.dehydrated
GitHub Repository
Lizenz
Unknown
Downloads
1.4k
Besitzer
Systems engineer. Linux/HPC/Cloud/BioInfo