📚 Improved build scripts & optimized CSS files for enhanced performance 🎉
This commit is contained in:
128
backend/setup.sh
128
backend/setup.sh
@@ -1248,43 +1248,87 @@ EOF
|
||||
debug "Raspberry Pi Optimierungen zur sysctl-Konfiguration hinzugefügt"
|
||||
fi
|
||||
|
||||
# Sysctl-Einstellungen vorsichtig anwenden
|
||||
progress "Wende sysctl-Einstellungen an..."
|
||||
# Sysctl-Einstellungen vorsichtig anwenden (non-blocking)
|
||||
progress "Wende sysctl-Einstellungen an (non-blocking)..."
|
||||
|
||||
# Versuche sysctl-Einstellungen einzeln anzuwenden (robuster)
|
||||
if sysctl -p >/dev/null 2>&1; then
|
||||
success "✅ Alle sysctl-Einstellungen erfolgreich angewendet"
|
||||
else
|
||||
warning "⚠️ Einige sysctl-Einstellungen konnten nicht angewendet werden"
|
||||
debug "sysctl -p Fehlerausgabe: $(sysctl -p 2>&1 || echo 'Befehl fehlgeschlagen')"
|
||||
# Teste unsere spezielle sysctl-Datei zuerst (mit mehreren Fallbacks)
|
||||
if [ -f "$myp_sysctl_file" ]; then
|
||||
local sysctl_success=false
|
||||
|
||||
# Versuche kritische Einstellungen einzeln (IPv6 deaktivieren)
|
||||
progress "Wende kritische Einstellungen einzeln an..."
|
||||
|
||||
local critical_settings=(
|
||||
"net.ipv6.conf.all.disable_ipv6=1"
|
||||
"net.ipv6.conf.default.disable_ipv6=1"
|
||||
"net.ipv4.ip_forward=0"
|
||||
"net.ipv4.tcp_syncookies=1"
|
||||
)
|
||||
|
||||
local applied_count=0
|
||||
for setting in "${critical_settings[@]}"; do
|
||||
if sysctl -w "$setting" >/dev/null 2>&1; then
|
||||
((applied_count++))
|
||||
debug "Erfolgreich angewendet: $setting"
|
||||
else
|
||||
debug "Fehlgeschlagen: $setting"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ $applied_count -gt 0 ]; then
|
||||
success "✅ $applied_count kritische sysctl-Einstellungen angewendet"
|
||||
# Strategie 1: Komplette Datei mit Timeout anwenden
|
||||
progress "Versuche komplette sysctl-Datei anzuwenden..."
|
||||
if timeout 10 sysctl -p "$myp_sysctl_file" >/dev/null 2>&1; then
|
||||
success "✅ MYP sysctl-Einstellungen erfolgreich angewendet"
|
||||
sysctl_success=true
|
||||
else
|
||||
warning "⚠️ Keine sysctl-Einstellungen konnten angewendet werden"
|
||||
warning "⚠️ Komplette sysctl-Datei fehlgeschlagen"
|
||||
debug "sysctl -p $myp_sysctl_file Fehlerausgabe: $(timeout 5 sysctl -p "$myp_sysctl_file" 2>&1 || echo 'Timeout oder Fehler')"
|
||||
fi
|
||||
|
||||
# Strategie 2: Nur IPv6-Deaktivierung (kritisch)
|
||||
if [ "$sysctl_success" = false ]; then
|
||||
progress "Versuche nur IPv6-Deaktivierung..."
|
||||
local ipv6_settings=(
|
||||
"net.ipv6.conf.all.disable_ipv6=1"
|
||||
"net.ipv6.conf.default.disable_ipv6=1"
|
||||
)
|
||||
|
||||
local ipv6_applied=0
|
||||
for setting in "${ipv6_settings[@]}"; do
|
||||
if timeout 3 sysctl -w "$setting" >/dev/null 2>&1; then
|
||||
((ipv6_applied++))
|
||||
debug "IPv6-Setting angewendet: $setting"
|
||||
else
|
||||
debug "IPv6-Setting fehlgeschlagen: $setting"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ $ipv6_applied -gt 0 ]; then
|
||||
success "✅ IPv6-Deaktivierung teilweise erfolgreich ($ipv6_applied/2)"
|
||||
sysctl_success=true
|
||||
fi
|
||||
fi
|
||||
|
||||
# Strategie 3: Sicherheits-Grundeinstellungen
|
||||
if [ "$sysctl_success" = false ]; then
|
||||
progress "Versuche Basis-Sicherheitseinstellungen..."
|
||||
local security_settings=(
|
||||
"net.ipv4.ip_forward=0"
|
||||
"net.ipv4.tcp_syncookies=1"
|
||||
)
|
||||
|
||||
local security_applied=0
|
||||
for setting in "${security_settings[@]}"; do
|
||||
if timeout 3 sysctl -w "$setting" >/dev/null 2>&1; then
|
||||
((security_applied++))
|
||||
debug "Sicherheits-Setting angewendet: $setting"
|
||||
else
|
||||
debug "Sicherheits-Setting fehlgeschlagen: $setting"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ $security_applied -gt 0 ]; then
|
||||
success "✅ Basis-Sicherheitseinstellungen angewendet ($security_applied/2)"
|
||||
sysctl_success=true
|
||||
fi
|
||||
fi
|
||||
|
||||
# Strategie 4: Vollständig überspringen (Graceful Degradation)
|
||||
if [ "$sysctl_success" = false ]; then
|
||||
warning "⚠️ Alle sysctl-Anwendungen fehlgeschlagen"
|
||||
warning "⚠️ Einstellungen werden beim nächsten Neustart automatisch aktiv"
|
||||
info " 📁 Konfiguration verfügbar in: $myp_sysctl_file"
|
||||
info " 🔧 Manuelle Anwendung: sudo sysctl -p $myp_sysctl_file"
|
||||
debug "Sysctl komplett übersprungen - System läuft mit Standard-Einstellungen"
|
||||
fi
|
||||
else
|
||||
warning "⚠️ MYP sysctl-Konfigurationsdatei nicht gefunden"
|
||||
debug "Überspringe sysctl-Anwendung komplett"
|
||||
fi
|
||||
|
||||
# Niemals das System-weite sysctl -p ausführen (zu problematisch)
|
||||
debug "Überspringe system-weites sysctl -p (zu riskant)"
|
||||
|
||||
# IPv6 in Netzwerk-Interfaces deaktivieren (robust)
|
||||
progress "Deaktiviere IPv6 in Netzwerk-Interfaces (vorsichtig)..."
|
||||
|
||||
@@ -1347,14 +1391,20 @@ EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
log "✅ Erweiterte Netzwerk-Sicherheit konfiguriert:"
|
||||
log " 🚫 IPv6 vollständig deaktiviert"
|
||||
log " 🛡️ IP-Spoofing-Schutz aktiviert"
|
||||
log " 🔒 SYN-Flood-Schutz aktiviert"
|
||||
log " 📝 Verdächtige Pakete werden geloggt"
|
||||
log " 🚫 Paketweiterleitung deaktiviert"
|
||||
log " ⚡ TCP-Performance optimiert"
|
||||
log " 🔐 RFC-Compliance für TCP aktiviert"
|
||||
# Abschließende Zusammenfassung
|
||||
log "✅ Robuste Netzwerk-Sicherheit konfiguriert:"
|
||||
log " 🚫 IPv6 Deaktivierung konfiguriert"
|
||||
log " 🛡️ Netzwerk-Sicherheitsregeln gesetzt"
|
||||
log " 🔒 Basis-Firewall-Schutz aktiviert"
|
||||
log " 📝 Sysctl-Konfiguration erstellt: $myp_sysctl_file"
|
||||
log " 🔧 Netzwerk-Services entsprechend konfiguriert"
|
||||
log " ⚙️ Einstellungen werden beim nächsten Boot aktiv"
|
||||
|
||||
# Alternative für sysctl-Probleme dokumentieren
|
||||
debug "Alternative sysctl-Anwendung:"
|
||||
debug " - Manuell: sysctl -p $myp_sysctl_file"
|
||||
debug " - Automatisch: Beim nächsten Neustart aktiv"
|
||||
debug " - Verifikation: sysctl net.ipv6.conf.all.disable_ipv6"
|
||||
}
|
||||
|
||||
# =========================== DESKTOP-ENVIRONMENT ENTFERNUNG ===========================
|
||||
|
Reference in New Issue
Block a user