second commit

This commit is contained in:
2026-08-19 22:33:19 +02:00
parent 411812e954
commit 199f306993
107 changed files with 5984 additions and 0 deletions

View File

@ -0,0 +1,35 @@
---
# Gemeinsame Variablen. Umgebungsspezifische Werte in
# jumphost_with_nginx.yml / jumphost_no_nginx.yml ueberschreiben
# (oder direkt hier anpassen, wenn nur eine Umgebung existiert).
jumphost_app_user: jumphost
jumphost_app_group: jumphost
jumphost_home: /opt/jumphost
jumphost_data_dir: /var/lib/jumphost
jumphost_venv: "{{ jumphost_home }}/venv"
jumphost_repo_src: "{{ playbook_dir }}/../.." # Projekt-Root (enthaelt app/, static/, templates/)
jumphost_listen_uds: /run/jumphost/app.sock
jumphost_app_port: 8443 # nur relevant wenn enable_nginx_proxy: false
guacd_port: 4822
# --- nginx / TLS ------------------------------------------------------------
enable_nginx_proxy: true
tls_mode: internal_pki # internal_pki | external_reverse_proxy | acme_public
# Nur fuer tls_mode: external_reverse_proxy relevant:
external_reverse_proxy_cidr: "10.10.5.0/24"
internal_hop_plaintext_accepted: false # bewusste Ausnahme, siehe Konzept 7.2a
# Nur fuer tls_mode: acme_public relevant:
acme_domain: "jumphost.example.com"
acme_email: "admin@example.com"
# --- Firewall ----------------------------------------------------------------
ssh_admin_access_cidr: "10.10.1.0/24" # Management-Netz fuer SSH-Zugriff AUF den Jumphost selbst
target_networks: # Netze der Zielsysteme (fuer ausgehende Regeln)
- "10.20.0.0/16"
# --- Backup --------------------------------------------------------------------
backup_dir: /var/backups/jumphost
backup_retention_days: 30

View File

@ -0,0 +1,5 @@
---
# Beispiel-Override fuer eine Umgebung OHNE nginx (siehe Konzept 7.2/9):
# Die Python-App terminiert TLS direkt.
enable_nginx_proxy: false
jumphost_app_port: 8443

View File

@ -0,0 +1,4 @@
---
# Beispiel-Override fuer eine Umgebung MIT nginx (siehe Konzept 7.2/9).
enable_nginx_proxy: true
tls_mode: internal_pki

View File

@ -0,0 +1,6 @@
---
# Mit `ansible-vault encrypt group_vars/vault.yml` verschluesseln, NIEMALS
# im Klartext committen (siehe Konzept 6.4/7.3).
vault_jumphost_kek: "CHANGE_ME_32_BYTES_HEX_0123456789abcdef0123456789abcdef"
vault_jumphost_session_secret: "CHANGE_ME_32_BYTES_HEX_0123456789abcdef0123456789abcdef"
vault_jumphost_initial_admin_password: "CHANGE_ME_STRONG_PASSWORD"

View File

@ -0,0 +1,6 @@
; Beispiel-Inventory. Kopieren nach production.ini und anpassen.
[jumphosts]
jumphost01.example.internal ansible_user=deploy
[jumphosts:vars]
ansible_python_interpreter=/usr/bin/python3