7.4 KiB
MYP Druckerverwaltung - Setup-Anleitung
Übersicht
Das neue konsolidierte setup.sh
Skript ersetzt alle bisherigen Installationsskripte und bietet eine benutzerfreundliche Menüführung für verschiedene Installationsmodi.
Voraussetzungen
- Betriebssystem: Debian/Raspbian (Raspberry Pi OS)
- Berechtigung: Root-Zugriff (sudo)
- Internetverbindung: Für Paket-Downloads erforderlich
- Hardware: Raspberry Pi oder kompatibles Debian-System
Neue Struktur
Dateien
setup.sh
- Konsolidiertes Hauptinstallationsskriptsystemd/
- Verzeichnis mit allen systemd-Service-Dateienmyp-https.service
- HTTPS-Backend-Servicemyp-kiosk.service
- Kiosk-Browser-Servicekiosk-watchdog.service
- Überwachungsservicekiosk-watchdog-python.service
- Python-Watchdog-Service
Entfernte Dateien
combined.sh
- Konsolidiert insetup.sh
installer.sh
- Konsolidiert insetup.sh
Installationsmodi
1. Nur Abhängigkeiten installieren
Zweck: System vorbereiten ohne Kiosk-Modus zu aktivieren
Was wird installiert:
- Python 3 und pip
- Node.js und npm
- SSL-Zertifikate (inkl. Mercedes Corporate)
- Python-Pakete (Flask, SQLAlchemy, etc.)
- npm-Abhängigkeiten
- Anwendungsdeployment nach
/opt/myp
- SSL-Zertifikat-Generierung
- Minimaler Funktionstest
Verwendung:
sudo ./setup.sh
# Wähle Option 1
Ideal für:
- Entwicklungsumgebungen
- Erste Installation und Tests
- Systeme ohne Kiosk-Anforderungen
2. Finale Kiosk-Installation
Zweck: Vollständige Kiosk-Modus-Konfiguration
Was wird konfiguriert:
- Alle Abhängigkeiten (falls noch nicht installiert)
- Desktop-Environments entfernen
- Minimale X11-Umgebung installieren
- Kiosk-Benutzer erstellen
- Automatischen Login konfigurieren
- Systemd-Services installieren und aktivieren
- System-Test durchführen
- Alte Dateien aufräumen
Verwendung:
sudo ./setup.sh
# Wähle Option 2
Ideal für:
- Produktionsumgebungen
- Dedizierte Kiosk-Systeme
- Finale Deployment
3. Nur Services installieren
Zweck: Systemd-Services aktualisieren ohne Systemänderungen
Was wird gemacht:
- Service-Dateien aus
systemd/
nach/etc/systemd/system/
kopieren - systemd-Konfiguration neu laden
- Optional: Services aktivieren und starten
Verwendung:
sudo ./setup.sh
# Wähle Option 3
Ideal für:
- Service-Updates
- Konfigurationsänderungen
- Wartung bestehender Installationen
4. System-Test
Zweck: Funktionalität der Installation überprüfen
Was wird getestet:
- HTTPS-Verbindung zu localhost:443
- SSL-Zertifikat-Gültigkeit
- Service-Status aller systemd-Services
- Systemressourcen
Verwendung:
sudo ./setup.sh
# Wähle Option 4
Ideal für:
- Fehlerdiagnose
- Wartung
- Regelmäßige Systemprüfungen
Systemd-Services
myp-https.service
- Zweck: HTTPS-Backend auf Port 443
- Benutzer: root (für privilegierten Port)
- Abhängigkeiten: network.target
- SSL: Automatische Zertifikat-Generierung
myp-kiosk.service
- Zweck: Chromium-Browser im Kiosk-Modus
- Benutzer: kiosk
- Abhängigkeiten: myp-https.service, graphical-session.target
- Features: Vollbild, SSL-Ignorierung, automatische Auflösungserkennung
kiosk-watchdog.service
- Zweck: Intelligente Systemüberwachung
- Funktionen:
- HTTPS-Backend-Überwachung
- SSL-Zertifikat-Überwachung
- Kiosk-Session-Überwachung
- Speicher-Überwachung
- Automatische Neustarts
kiosk-watchdog-python.service
- Zweck: Python-basierte Überwachung
- Ergänzung: Zusätzliche Überwachungsfunktionen
Konfiguration
SSL-Zertifikate
Mercedes Corporate Zertifikate:
- Automatische Installation aus
certs/mercedes/
- Unterstützte Formate: .crt, .pem, .cer
- DER-zu-PEM Konvertierung
Localhost-Zertifikat:
- Automatische Generierung für HTTPS
- Gültigkeitsdauer: 365 Tage
- Speicherort:
/opt/myp/certs/localhost/
Kiosk-Benutzer
Benutzer: kiosk
- Automatischer Login auf tty1
- Gruppen: audio, video, input, dialout, plugdev, users
- Passwortlos für Sicherheit
Verzeichnisstruktur
/opt/myp/ # Hauptanwendungsverzeichnis
├── app.py # Flask-Hauptanwendung
├── models.py # Datenbankmodelle
├── blueprints/ # Flask-Blueprints
├── config/ # Konfigurationsdateien
├── database/ # SQLite-Datenbank
├── static/ # Statische Dateien (CSS, JS)
├── templates/ # HTML-Templates
├── uploads/ # Upload-Verzeichnis
├── utils/ # Hilfsfunktionen
├── logs/ # Log-Dateien
└── certs/ # SSL-Zertifikate
└── localhost/ # Localhost-Zertifikate
Logging
Installationslog: /var/log/myp-install.log
Service-Logs: journalctl -u <service-name>
Watchdog-Log: /var/log/kiosk-watchdog.log
Fehlerbehebung
Häufige Probleme
-
HTTPS-Backend nicht erreichbar
sudo systemctl status myp-https sudo journalctl -u myp-https -f
-
Kiosk-Browser startet nicht
sudo systemctl status myp-kiosk sudo journalctl -u myp-kiosk -f
-
SSL-Zertifikat-Probleme
sudo ./setup.sh # Option 4 für System-Test
-
Service-Neustart
sudo systemctl restart myp-https sudo systemctl restart kiosk-watchdog
Manuelle Service-Verwaltung
# Services aktivieren
sudo systemctl enable myp-https myp-kiosk kiosk-watchdog
# Services starten
sudo systemctl start myp-https myp-kiosk kiosk-watchdog
# Status prüfen
sudo systemctl status myp-https myp-kiosk kiosk-watchdog
# Logs anzeigen
sudo journalctl -u myp-https -f
Wartung
Regelmäßige Aufgaben
-
System-Updates
sudo apt update && sudo apt upgrade -y
-
Log-Rotation
- Automatisch durch systemd
- Watchdog rotiert eigene Logs bei >10MB
-
SSL-Zertifikat-Erneuerung
- Automatisch durch Watchdog bei Ablauf
- Manuell: Option 1 im Setup-Skript
-
System-Test
sudo ./setup.sh # Option 4
Sicherheit
Implementierte Maßnahmen
- Minimale Berechtigungen: Services laufen mit minimal nötigen Rechten
- SSL-Verschlüsselung: HTTPS für alle Verbindungen
- Systemd-Härtung: NoNewPrivileges, ProtectSystem
- Automatische Updates: Watchdog überwacht und repariert
- Passwortlose Kiosk: Reduziert Angriffsfläche
Empfohlene Zusatzmaßnahmen
- Firewall-Konfiguration
- SSH-Schlüssel statt Passwörter
- Regelmäßige Backups
- Monitoring der Log-Dateien
Migration von alten Installationen
Wenn Sie eine bestehende Installation mit combined.sh
oder installer.sh
haben:
-
Backup erstellen
sudo cp -r /opt/myp /opt/myp.backup
-
Neue Installation
sudo ./setup.sh # Option 3 für Service-Update
-
Konfiguration übertragen
- Datenbank-Dateien
- Upload-Verzeichnisse
- Benutzerdefinierte Konfigurationen
Support
Bei Problemen:
- Log-Dateien prüfen
- System-Test durchführen (Option 4)
- Services neu starten
- Installation wiederholen mit entsprechender Option
Das konsolidierte Setup-System bietet maximale Flexibilität bei minimaler Komplexität und ermöglicht sowohl Entwicklungs- als auch Produktionsumgebungen.