Server-Bibliothek
2026-07-23 548bab93e55f6e514557571d3c9da9b1c1d59c35
CHANGELOG.md
@@ -102,6 +102,27 @@
  eingepackt, der Zielrechner braucht für die Installation selbst kein
  Netzwerk mehr (nur die abschließende, optionale Protokoll-Meldung).
## v9 – Zugriffsbeschränkung lokal (Server) vs. Netzwerk
Auslöser: Wird der Server über das Netzwerk erreicht (nicht direkt am
Server), soll nur die Software-Anforderung sichtbar sein, um "Blödsinn" zu
verhindern (Katalog verändern, Protokolle einsehen usw. nur direkt am
Server). Wer aus dem Netzwerk Software herunterlädt, muss sich mit Namen
eintragen, und alle Zugriffe werden protokolliert.
- Unterscheidung über `request.remote_addr` (127.0.0.1/::1 = lokal, alles
  andere = Netzwerk)
- Für Netzwerk-Zugriffe: alle Routen außer der Software-Anforderung
  (`/einrichten`) geben 403 mit Hinweisseite zurück
- Software-Anforderung heißt bei Netzwerkzugriff bewusst anders
  ("Software anfordern" statt "Rechner einrichten") und weist auf die
  Protokollierung hin
- Neues Zugriffsprotokoll (`/zugriffslog`, ebenfalls nur lokal einsehbar):
  Zeitpunkt, IP-Adresse, per Reverse-DNS ermittelter Rechnername (falls
  auflösbar), selbst angegebener Name, Aktion
- **Bewusst nicht umgesetzt:** echte Windows-Benutzername-Erkennung. Das
  bräuchte NTLM/Kerberos-Integration (z. B. IIS-Reverse-Proxy vor Flask),
  was über reines Flask/HTTP nicht möglich ist – im Architektur-Dokument als
  offener Punkt festgehalten, nicht stillschweigend als "erledigt" behandelt
## Offene Design-Frage: Skript-Ansatz vs. automatische Verteilung
Nach dem ersten Test im Firmennetz wurde nochmal grundsätzlich hinterfragt,
ob der Skript-Ansatz (manueller Download + Ausführen auf dem Zielrechner)