umbau 1.0
This commit is contained in:
@ -27,8 +27,45 @@ 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"
|
||||
# Netze der Zielsysteme (fuer ausgehende Regeln der Output-Chain, siehe
|
||||
# ansible/roles/firewall_nftables/templates/jumphost.nft.j2). War bislang
|
||||
# 10.20.0.0/16 -- die tatsaechlichen RDP-/SSH-Ziele liegen in 10.0.0.0/8
|
||||
# (Befund B5, Umsetzungsauftrag_Sonnet5.md Teil A.3): stand die Adresse
|
||||
# ausserhalb dieses Bereichs, wurden guacds ausgehende RDP-Pakete von der
|
||||
# Output-Chain (policy drop) still verworfen -- kein Reject, kein Log --
|
||||
# und der Benutzer sah nur "Server timeout" statt eines erklaerbaren
|
||||
# Fehlers. An das tatsaechliche Zielnetz anpassen, falls es abweicht.
|
||||
target_networks:
|
||||
- "10.0.0.0/8"
|
||||
|
||||
# --- Login-Rate-Limiting (E8, Umsetzungsauftrag Teil E) ----------------------
|
||||
# Drei unabhaengige Bremsen, alle IP-basiert (siehe app/security/rate_limit.py,
|
||||
# app/config.py login_rate_limit_*): App-Rate-Limiter (JUMPHOST_LOGIN_RATE_
|
||||
# LIMIT_MAX_EVENTS/_WINDOW_S), dieses nginx-limit_req und die fail2ban-
|
||||
# Schwelle unten. ACHTUNG: greifen pro Quell-IP -- sitzen mehrere interne
|
||||
# Benutzer hinter derselben NAT-Adresse (typischer Buerofall), teilen sie
|
||||
# sich dieses Budget, und ein paar Tippfehler beliebiger Kollegen koennen
|
||||
# die ganze Gruppe aussperren. Der kontenbezogene Lockout
|
||||
# (JUMPHOST_MAX_FAILED_LOGINS) bleibt davon unberuehrt und ist die
|
||||
# eigentliche scharfe Bremse. Bewusst an die erwartete Umgebung anpassen
|
||||
# (z.B. hier anheben und/oder bekannte interne Netze in der Firewall-Regel
|
||||
# gesondert behandeln) und die Entscheidung im Betriebshandbuch festhalten
|
||||
# -- NICHT ungeprueft mit den unten stehenden Standardwerten produktiv gehen,
|
||||
# wenn mehrere Benutzer hinter derselben Adresse sitzen koennen.
|
||||
jumphost_login_rate_limit: "10r/m" # nginx limit_req_zone rate=
|
||||
jumphost_fail2ban_maxretry: 8 # fail2ban [jumphost-login] maxretry
|
||||
|
||||
# --- Obergrenzen gleichzeitiger Sitzungen (E.4, Umsetzungsauftrag Teil E) ----
|
||||
# jumphost_uvicorn_limit_concurrency ist die AEUSSERSTE Bremse (uvicorn lehnt
|
||||
# neue Verbindungen ab, bevor die Anwendung ueberhaupt beteiligt ist) und
|
||||
# sollte daher spuerbar UEBER JUMPHOST_MAX_SESSIONS_GLOBAL liegen (siehe
|
||||
# app/config.py) -- sie deckt zusaetzlich kurzlebige HTTP-Anfragen
|
||||
# (Katalog, Dateitransfer, Adminbereich) mit ab, nicht nur WS-Sitzungen.
|
||||
# jumphost_limit_nofile mit Marge fuer: 2x Sockets je Sitzung + guacd-
|
||||
# Verbindung (RDP) + Aufzeichnungsdatei + normale Prozess-FDs.
|
||||
jumphost_uvicorn_limit_concurrency: 150
|
||||
jumphost_uvicorn_backlog: 100
|
||||
jumphost_limit_nofile: 4096
|
||||
|
||||
# --- Backup --------------------------------------------------------------------
|
||||
backup_dir: /var/backups/jumphost
|
||||
|
||||
Reference in New Issue
Block a user