This commit is contained in:
2026-08-20 01:00:29 +02:00
parent da19ef8b70
commit 1229bb0cb5

View File

@ -14,6 +14,11 @@
- name: "Modus internal_pki / external_reverse_proxy: Zertifikat per ACME gegen interne CA beziehen" - name: "Modus internal_pki / external_reverse_proxy: Zertifikat per ACME gegen interne CA beziehen"
block: block:
- name: openssl sicherstellen (fuer selbstsigniertes Uebergangs-Zertifikat)
ansible.builtin.apt:
name: openssl
state: present
- name: step-ca ACME-Client (step-cli) installieren - name: step-ca ACME-Client (step-cli) installieren
ansible.builtin.apt: ansible.builtin.apt:
name: step-cli name: step-cli
@ -27,6 +32,34 @@
Unternehmens-PKI beziehen und ALS ansible-vault-verschluesselte Unternehmens-PKI beziehen und ALS ansible-vault-verschluesselte
Dateien unter files/tls/{{ inventory_hostname }}.crt / .key ablegen; Dateien unter files/tls/{{ inventory_hostname }}.crt / .key ablegen;
diese Rolle kopiert sie dann per copy-Task (siehe unten, auskommentiert). diese Rolle kopiert sie dann per copy-Task (siehe unten, auskommentiert).
# TODO: Echten ACME-Request gegen die interne CA (step-ca) hier ergaenzen,
# sobald deren URL/Root-Fingerprint/Provisioner bekannt sind (Konzept
# 7.2a). Bis dahin wird als Uebergangsloesung ein selbstsigniertes
# Zertifikat erzeugt, damit nginx ueberhaupt starten kann -- Browser
# zeigen dafuer eine Vertrauenswarnung, das ist KEIN Ersatz fuer eine
# echte interne PKI und muss vor Produktivbetrieb ersetzt werden.
- name: Selbstsigniertes UEBERGANGS-Zertifikat erzeugen (bis echte interne PKI angebunden ist)
ansible.builtin.command:
cmd: >-
openssl req -x509 -newkey rsa:4096 -nodes
-keyout /etc/jumphost/tls/server.key
-out /etc/jumphost/tls/server.crt
-days 825
-subj "/CN={{ acme_domain | default(inventory_hostname) }}"
-addext "subjectAltName=DNS:{{ acme_domain | default(inventory_hostname) }}"
creates: /etc/jumphost/tls/server.crt
when: not (tls_mode == 'external_reverse_proxy' and (internal_hop_plaintext_accepted | default(false)))
- name: Warnung wegen selbstsigniertem Uebergangs-Zertifikat ausgeben
ansible.builtin.debug:
msg: >
ACHTUNG: Es wird ein SELBSTSIGNIERTES Uebergangszertifikat unter
/etc/jumphost/tls/server.crt verwendet (kein Vertrauensanker im
Client). Browser zeigen eine Zertifikatswarnung. Vor
Produktivbetrieb durch ein echtes Zertifikat aus der
Unternehmens-PKI ersetzen (s. Hinweis oben / Konzept 7.2a).
when: not (tls_mode == 'external_reverse_proxy' and (internal_hop_plaintext_accepted | default(false)))
when: tls_mode in ['internal_pki', 'external_reverse_proxy'] when: tls_mode in ['internal_pki', 'external_reverse_proxy']
# Alternative zu ACME: vorab per Unternehmens-PKI ausgestellte Dateien einspielen. # Alternative zu ACME: vorab per Unternehmens-PKI ausgestellte Dateien einspielen.