Modularer Reverse Proxy, Cache, Load Balancer und statischer Host, geschrieben in Rust. Standardmäßig sicher mit TLS, ACME, Kompression, Edge-Richtlinien, dynamischer Upstream-Erkennung und sicherer Traffic-Spiegelung.
include_conf_d = false
[server]
listen = ["0.0.0.0:80"]
tls_listen = ["0.0.0.0:443"]
default_vhost = "fluxheim.eu"
[tls]
enabled = true
backend = "rustls"
profile = "intermediate"
min_protocol = "tls1.2"
alpn = "http1-and-http2"
curve_preferences = ["X25519", "CurveP256", "CurveP384"]
[[vhosts]]
name = "fluxheim.eu"
hosts = ["fluxheim.eu"]
[vhosts.tls]
enabled = true
[vhosts.tls.certificate]
cert_path = "/etc/fluxheim/tls/fluxheim.eu/fullchain.pem"
key_path = "/etc/fluxheim/tls/fluxheim.eu/privkey.pem"
[vhosts.web]
root = "/srv/sites/fluxheim.eu"
index_files = ["index.html"]
Fluxheim wird als fokussierte, modulare Builds ausgeliefert — nutze nur, was dein Deployment braucht.
Geschrieben in Rust mit festgelegter stabiler Toolchain. Keine Buffer Overflows, kein Use-after-free, keine Data Races durch die Sprache.
Eine Rust-native Edge-Laufzeit mit Connection Pooling, Upstream-Retries, aktiven Health Checks, HTTP/2, WebSocket-Upgrades und gRPC-Durchleitung.
Fokussiertes 1.5-Load-Balancer-Binary und Image mit erweiterter Auswahl, lokaler Persistenz, Health-/Ejection-Richtlinien, begrenztem Queueing und Laufzeitsteuerung für Mitglieder.
Kompiliere nur, was du brauchst. Fokussierte Profile für statische Sites, Cache Edge, Reverse Proxy, Load Balancing, TCP-Stream-Proxying, PHP-FPM, GeoIP, Traffic Mirroring und produktionsfähige Bundles mit Kompression.
rustls-first mit unterstützten OpenSSL- und FIPS/ISO-Nachweis-Buildpfaden, Client-Zertifikatsauthentifizierung, Upstream-mTLS, automatischer ACME-Ausstellung und Multi-Zertifikat-SNI.
Memory-, Disk-, Tiered- und verschlüsselte Cache-Backends mit cache-sicherer gzip-, Zstandard- und Brotli-Kompression plus Range-Caching für große Objekte.
Rootless-Podman-Images für Wolfi, Alpine, SUSE Micro und Debian. Systemd/RPM für native Deployments. Keine externen Assets beim Start.
Optionaler Prometheus-Metrics-Listener, OTLP-Metrics-Export, Trace-Context-Propagation und OTLP-Trace-Export für vollständige Observability.
Optionale lokale MMDB-Lookups für Länder- und ASN-Richtlinien mit MaxMind GeoIP2/GeoLite2 oder CIRCL Geo Open-Datensätzen. Kein Remote-Lookup oder Downloader im Request-Pfad.
Rohe L4-TCP-Dienste mit dedizierten Stream-Routen, echten Idle-/Lifetime-/Byte-Limits, Upstream-TLS/mTLS-Kontrollen, Weighted-/Drain-/Backup-Richtlinien und routenlokalem PROXY-Protokoll.
Optionale PHP-FPM-FastCGI-Bridge für Front-Controller-Anwendungen im WordPress-Stil. Strikte Skriptauflösung und begrenzte Request-Verarbeitung.
Trusted-Proxy-bewusste ACLs, Rate Limits, Auth-Subrequests, Traffic Mirroring, Regex-Rewrites, begrenzte Queues, strikte Konfigurationsvalidierung und gehärtete Request-Verarbeitung.
Download a pre-built binary, drop in a config file, and start serving. Native systemd units and container images included.
# Full-Build herunterladen und entpacken
curl -L https://github.com/valkyoth/fluxheim/releases/download/v1.6.30/fluxheim-1.6.30-full-x86_64-linux.tar.gz \
| tar xz
# Binary in den Systempfad verschieben
sudo mv fluxheim /usr/local/bin/
# Konfiguration vor dem Start validieren
fluxheim --check-config --config /etc/fluxheim/fluxheim.toml
# Mit systemd ausführen (Unit-Datei enthalten)
sudo systemctl enable --now fluxheim
# Von GHCR oder Quay ziehen
podman pull ghcr.io/valkyoth/fluxheim:v1.6.30
podman pull quay.io/valkyoth/fluxheim:v1.6.30
# Rootless mit eingebundener Konfiguration ausführen
podman run -d \
--name fluxheim \
-p 8080:8080 -p 8443:8443 \
-v /srv/sites:/srv/sites:ro \
-v ./fluxheim.toml:/etc/fluxheim/fluxheim.toml:ro \
ghcr.io/valkyoth/fluxheim:v1.6.30
# Verfügbare Image-Varianten: full, load-balancer, cache, proxy, php
# Standardprofil klonen und bauen
git clone https://github.com/valkyoth/fluxheim
cd fluxheim
# Standard-Build (proxy + web + cache + tls-rustls + security)
cargo build --release
# Oder ein fokussiertes Profil bauen
cargo build --release --no-default-features \
--features profile-proxy-edge,acme-client
# Konfiguration validieren und starten
cargo run --release -- \
--check-config --config examples/fluxheim.toml
Gebaut für Betreiber, die einen modernen, auditierbaren Stack ohne verstecktes Legacy-Verhalten wollen.
Die Konfigurationsvalidierung ist strikt. Mehrdeutige oder unsichere Optionen werden abgelehnt, nicht stillschweigend akzeptiert.
Reproduzierbare Builds. Jede Abhängigkeit ist fest gepinnt. cargo audit and cargo deny run in CI.
Ohne root ausführen. Interne Ports standardmäßig 8080/8443. Explizite Runtime-Images für unterschiedliche Betriebsrichtlinien.
Copyleft-Lizenz, kompatibel mit vielen OSS-Lizenzen. EU-ursprünglich und rechtlich klar für Behörden- und Unternehmenseinsatz.
Ein Blick darauf, wie Fluxheim in einem Produktionsdeployment aussieht.