Reverse proxy modulare, cache, load balancer e host statico scritto cu Rust. Sicuro comme default cu TLS, ACME, compression, edge policy, dynamic upstream discovery e traffic mirroring sicuro.
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 vene distribuito comme build focalizzate e modulari: usa solo chello ca serve ô deployment tujo.
Scritto cu Rust cu toolchain stabile fissata. Nisciun buffer overflow, use-after-free o data race pe custruzione.
Runtime edge Rust-native cu connection pooling, upstream retry, health check attivi, HTTP/2, upgrade WebSocket e gRPC pass-through.
Build Wasm apposta, basato ncopp'ô profilo completo 'e produzione, cu hook 'e policy limitate, ACME, metriche e OpenTelemetry.
Binary e image load-balancer 1.5 focalizzati cu advanced selection, persistenza lucale, health/ejection policy, code bounded e runtime member controls.
Compila sulo chello ca te serve. Profili focalizzati pe sito statico, cache edge, reverse proxy, load balancing, TCP stream proxying, PHP-FPM, GeoIP, traffic mirroring e bundle production cu compression.
Approccio rustls-first cu percorsi build OpenSSL e FIPS/ISO supportati, client certificate auth, upstream mTLS, emissione ACME automatica e multi-cert SNI.
Backend cache memory, disk, tiered ed encrypted cu compression gzip, Zstandard e Brotli cache-safe cchiù range caching pe oggetti grandi.
Image Podman rootless pe Wolfi, Alpine, SUSE Micro e Debian. Systemd/RPM pe deployment nativi. Nisciun asset esterno â partenza.
Listener metrics Prometheus opt-in, export OTLP metrics, propagazione trace context ed export OTLP trace pe observability cumpleta.
Lookup MMDB lucale opzionale pe policy paese e ASN cu dataset MaxMind GeoIP2/GeoLite2 o CIRCL Geo Open. Nisciun lookup remoto o downloader dint' 'o request path.
Servizi TCP L4 raw cu stream route dedicate, veri cap idle/lifetime/byte, cuntrolle upstream TLS/mTLS, policy weighted/drain/backup e PROXY protocol lucale â route.
Bridge PHP-FPM FastCGI opt-in pe applicazioni front-controller stile WordPress. Risoluzione script stretta e gestione request bounded.
ACL trusted-proxy-aware, rate limit, auth subrequest, traffic mirroring, regex rewrite, code bounded, config validation rigorosa e request handling hardened.
Download a pre-built binary, drop in a config file, and start serving. Native systemd units and container images included.
# Scarrica ed estrai 'a build cumpleta
curl -L https://github.com/valkyoth/fluxheim/releases/download/v1.8.0/fluxheim-1.8.0-full-x86_64-linux.tar.gz \
| tar xz
# Sposta 'o binario dint' 'o percorso 'e sistema
sudo mv fluxheim /usr/local/bin/
# Valida 'a cunfigurazione primma 'e avviare
fluxheim --check-config --config /etc/fluxheim/fluxheim.toml
# Esegui cu systemd (unit file incluso)
sudo systemctl enable --now fluxheim
# Scarrica da GHCR o Quay
podman pull ghcr.io/valkyoth/fluxheim:v1.8.0
podman pull quay.io/valkyoth/fluxheim:v1.8.0
# Esegue rootless cu 'a tua cunfigurazione montata
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.8.0
# Varianti image disponibili: full, load-balancer, cache, proxy, wasm, php
# Clona e compila 'o profilo predefenuto
git clone https://github.com/valkyoth/fluxheim
cd fluxheim
# Build predefenuta (proxy + web + cache + tls-rustls + security)
cargo build --release
# Oppure compila nu profilo mirato
cargo build --release --no-default-features \
--features profile-proxy-edge,acme-client
# Valida 'a cunfigurazione ed esegui
cargo run --release -- \
--check-config --config examples/fluxheim.toml
Creato pe operatori ca vonno nu stack moderno e auditabile senza cumpurtamiento legacy annascuso.
'A config validation è rigorosa. Opzioni ambigue o insicure veneno rifiutate, nun accettate zitto zitto.
Build ripruducibile. Ogne dependency è fissata. cargo audit and cargo deny run in CI.
Esegue senza root. Porte interne 8080/8443 'e default. Image runtime esplicite pe policy operative diverse.
Licenza copyleft compatibile cu molte licenze OSS. Origine UE, chiara legalmente pe uso guvernativo ed enterprise.
Nu sguardo a comme se vede Fluxheim in nu deployment production.