# Changelog - Setup-Konsolidierung v4.0.0

## Übersicht der Änderungen

Diese Version konsolidiert alle bisherigen Installationsskripte in ein einziges, benutzerfreundliches Setup-System mit **vereinfachten 2 Installationsmodi**.

## 🔄 Strukturelle Änderungen

### Neue Dateien

- **`setup.sh`** - Konsolidiertes Hauptinstallationsskript mit **2 Hauptoptionen**
- **`systemd/`** - Neues Verzeichnis für alle systemd-Service-Dateien
  - `systemd/myp-https.service`
  - `systemd/myp-kiosk.service`
  - `systemd/kiosk-watchdog.service`
  - `systemd/kiosk-watchdog-python.service`
  - `systemd/myp-firewall.service` - **Erweiterte Firewall-Konfiguration**
- **`docs/SETUP_ANLEITUNG.md`** - Detaillierte Anleitung für das neue Setup-System

### Entfernte Dateien

- **`combined.sh`** - Konsolidiert in `setup.sh`
- **`installer.sh`** - Konsolidiert in `setup.sh`
- Service-Dateien aus dem Stammverzeichnis (verschoben nach `systemd/`)

### Aktualisierte Dateien

- **`README.md`** - Vollständig überarbeitet für neues Setup-System
- **Version erhöht auf 4.0.0**

## 🔄 Neue Features

### Vereinfachte Installation
Das neue `setup.sh` bietet **nur 2 Hauptoptionen** für maximale Benutzerfreundlichkeit:

1. **Abhängigkeiten installieren für manuelles Testen**
   - Vollständige Systemvorbereitung
   - Alle Abhängigkeiten installiert
   - Anwendung deployed und getestet
   - Bereit für manuelle Entwicklung
   - **Ideal für**: Entwicklung, Tests, Debugging

2. **Vollständige Kiosk-Installation mit Remote-Zugang**
   - **Automatischer Kiosk-Modus** beim Boot
   - **SSH-Zugang**: `user:raspberry`
   - **RDP-Zugang**: `root:744563017196A` mit XFCE
   - **Erweiterte Firewall**: 192.168.0.0/16 + localhost + m040tbaraspi001
   - **Automatischer Login** und Browser-Start
   - **Ideal für**: Produktionsumgebungen, finale Deployment

### Erweiterte Firewall-Konfiguration
- **Netzwerk-Bereich**: `192.168.0.0/16` (erweitert von /24)
- **Localhost-Support**: IPv4 und IPv6
- **Hostname-Integration**: Automatische Erkennung lokaler und Remote-Hostnames
- **Spezifischer Remote-Host**: `m040tbaraspi001`
- **Automatische Konfiguration** beim Systemstart

### Automatischer Kiosk-Start
- **Vollautomatische Konfiguration** ohne manuelle Eingriffe
- **X-Server-Autostart** beim Login
- **Browser-Autostart** mit HTTPS-Backend-Erkennung
- **Robuste Fehlerbehandlung** und Fallback-Mechanismen
- **Optimierte Performance** für Kiosk-Umgebungen

### Erweiterte Netzwerk-Sicherheit
- **IPv6 vollständig deaktiviert** auf allen Ebenen (GRUB, Kernel, Firewall)
- **IP-Spoofing-Schutz** mit Reverse Path Filtering
- **SYN-Flood-Schutz** mit optimierten TCP-Einstellungen
- **DDoS-Abwehr** durch Broadcast-Ping-Schutz
- **TCP-RFC-Compliance** verhindert aggressive Paketwiederholungen
- **Optimierte Netzwerk-Performance** durch TCP-Window-Skalierung
- **Anti-Fingerprinting** durch deaktivierte TCP-Timestamps
- **Verdächtige Pakete werden geloggt** (Martian-Pakete)
- **Paketweiterleitung deaktiviert** (kein Router-Verhalten)

## 🔧 Technische Verbesserungen

### SSL-Zertifikat-Management

- **Automatische Mercedes-Zertifikat-Installation**
- **DER-zu-PEM Konvertierung**
- **Zertifikat-Validierung**
- **Ablaufüberwachung**

### Service-Management

- **Zentralisierte Service-Dateien** in `systemd/` Verzeichnis
- **Automatische systemd-Konfiguration**
- **Service-Abhängigkeiten optimiert**
- **Watchdog-Integration verbessert**

### Systemoptimierung

- **Minimale X11-Installation** für Kiosk-Modus
- **Browser-Fallback-Mechanismen** (Chromium → Firefox)
- **Speicher-Überwachung** und automatische Bereinigung
- **Netzwerk-Konnektivitätsprüfung**

## 📊 Kompatibilität

### Unterstützte Systeme

- **Debian 11+** (Bullseye und neuer)
- **Raspberry Pi OS** (alle aktuellen Versionen)
- **Ubuntu 20.04+** (experimentell)

### Rückwärtskompatibilität

- **Bestehende Installationen** können mit Option 3 aktualisiert werden
- **Datenbank-Migration** automatisch
- **Konfigurationsdateien** bleiben erhalten

## 🛡️ Sicherheitsverbesserungen

### Systemd-Härtung

- **NoNewPrivileges** für alle Services
- **ProtectSystem=strict** für Dateisystem-Schutz
- **Minimale Capabilities** für privilegierte Ports
- **Service-Isolation** verbessert

### SSL/TLS-Optimierung

- **Starke Cipher-Suites** konfiguriert
- **TLS 1.2+ erzwungen**
- **Zertifikat-Rotation** automatisiert
- **Corporate-Zertifikat-Integration**

## 🔄 Migration von alten Installationen

### Automatische Migration

```bash
# Backup erstellen
sudo cp -r /opt/myp /opt/myp.backup

# Neue Installation
sudo ./setup.sh
# Option 3: Nur Services installieren
```

### Manuelle Schritte (falls erforderlich)

1. **Service-Dateien aktualisieren**
2. **Systemd-Konfiguration neu laden**
3. **Services neu starten**
4. **Funktionstest durchführen**

## 📈 Performance-Verbesserungen

### Installation

- **Parallele Paket-Downloads** wo möglich
- **Intelligente Abhängigkeitsauflösung**
- **Reduzierte Installationszeit** durch Optimierungen
- **Bessere Fehlerbehandlung** verhindert Neuinstallationen

### Laufzeit

- **Watchdog-Optimierung** für geringeren Ressourcenverbrauch
- **Browser-Cache-Management** automatisiert
- **Speicher-Überwachung** mit automatischer Bereinigung
- **Service-Restart-Logik** verbessert

## 🐛 Behobene Probleme

### Installation

- **npm-Installation** robuster mit Fallback-Strategien
- **SSL-Zertifikat-Generierung** zuverlässiger
- **Service-Abhängigkeiten** korrekt konfiguriert
- **Berechtigungsprobleme** behoben

### Kiosk-Modus

- **Browser-Autostart** zuverlässiger
- **Display-Erkennung** verbessert
- **Crash-Recovery** automatisiert
- **Speicher-Leaks** behoben

## 📚 Dokumentation

### Neue Dokumentation

- **`docs/SETUP_ANLEITUNG.md`** - Vollständige Setup-Anleitung
- **Erweiterte README.md** mit neuen Installationsoptionen
- **Inline-Kommentare** in `setup.sh` für bessere Wartbarkeit

### Aktualisierte Dokumentation

- **API-Dokumentation** überarbeitet
- **Fehlerbehebungsguide** erweitert
- **Konfigurationsoptionen** dokumentiert

## 🔮 Zukunftsausblick

### Geplante Features (v4.1.0)

- **Web-basiertes Setup-Interface**
- **Remote-Installation** über SSH
- **Automatische Updates** über Git
- **Monitoring-Dashboard** für Systemstatus

### Langfristige Ziele

- **Container-basierte Deployment** (Docker)
- **Kubernetes-Integration** für Skalierung
- **Cloud-Deployment-Optionen**
- **Multi-Tenant-Unterstützung**

## 📞 Support und Feedback

### Neue Support-Kanäle

- **System-Test-Funktion** (Option 4) für Selbstdiagnose
- **Automatische Log-Sammlung** für Support-Anfragen
- **Strukturierte Fehlermeldungen** für bessere Problemlösung

### Feedback erwünscht

- **Installation-Erfahrungen** auf verschiedenen Systemen
- **Performance-Messungen** in Produktionsumgebungen
- **Feature-Requests** für zukünftige Versionen

---

**Datum**: 01.06.2025
**Version**: 4.0.0
**Typ**: Major Release - Setup-Konsolidierung
**Kompatibilität**: Rückwärtskompatibel mit automatischer Migration
