Modularni reverse proxy, cache, load balancer in statični host napisan v Rustu. Varen po privzetih nastavitvah z TLS, ACME, compression, edge policy, dynamic upstream discovery in varen traffic mirroring.
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 je na voljo kot osredotočeni modularni buildi: uporabi samo tisto, kar potrebuje tvoj deployment.
Napisan v Rustu s fiksiranim stabilnim toolchainom. Brez buffer overflow, use-after-free ali data race težav po zasnovi.
Rust-native edge runtime s connection pooling, upstream retry, aktivnimi health check, HTTP/2, WebSocket upgrade in gRPC pass-through.
Namenska različica Wasm na podlagi celotnega produkcijskega profila z omejenimi programskimi kavlji, ACME, metrikami in OpenTelemetry.
Osredotočeni load-balancer 1.5 binary in image s advanced selection, lokalno perzistenco, health/ejection policy, bounded code in runtime member controls.
Kompiliraj samo tisto, kar potrebuješ. Osredotočeni profili za statični site, edge cache, reverse proxy, load balancing, TCP stream proxying, PHP-FPM, GeoIP, traffic mirroring in production bundle s compression.
rustls-first pristop z OpenSSL in FIPS/ISO build potmi, client certificate auth, upstream mTLS, samodejnim ACME izdajanjem in multi-cert SNI.
Memory, disk, tiered in encrypted cache backendi s cache-safe gzip, Zstandard in Brotli compression ter range caching za velike objekte.
Rootless Podman image za Wolfi, Alpine, SUSE Micro in Debian. Systemd/RPM za native deployment. Brez zunanjih assetov ob zagonu.
Opt-in Prometheus metrics listener, OTLP metrics export, trace context propagation in OTLP trace export za polno observability.
Izbirni lokalni MMDB lookup za country in ASN policy z MaxMind GeoIP2/GeoLite2 ali CIRCL Geo Open datasetom. Ni remote lookup ni downloadera v request path.
Raw L4 TCP storitve s namenskimi stream route, dejanskimi idle/lifetime/byte cap, upstream TLS/mTLS kontrolami, weighted/drain/backup policy in lokalnim PROXY protocol na route ravni.
Opt-in PHP-FPM FastCGI bridge za front-controller aplikacije, kot je WordPress. Stroga script resolution in bounded request handling.
Trusted-proxy-aware ACL, rate limit, auth subrequest, traffic mirroring, regex rewrite, bounded code, stroga config validation in hardened request handling.
Download a pre-built binary, drop in a config file, and start serving. Native systemd units and container images included.
# Prenesi in razširi polni build
curl -L https://github.com/valkyoth/fluxheim/releases/download/v1.8.0/fluxheim-1.8.0-full-x86_64-linux.tar.gz \
| tar xz
# Premjesti binary v system path
sudo mv fluxheim /usr/local/bin/
# Validiraj config pred pokretanja
fluxheim --check-config --config /etc/fluxheim/fluxheim.toml
# Zaženi s systemd (unit file vključen)
sudo systemctl enable --now fluxheim
# Prenesi iz GHCR ali Quay
podman pull ghcr.io/valkyoth/fluxheim:v1.8.0
podman pull quay.io/valkyoth/fluxheim:v1.8.0
# Zaženi rootless s mountanim config
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
# Dostupne image varijante: full, load-balancer, cache, proxy, wasm, php
# Kloniraj in kompajliraj default profile
git clone https://github.com/valkyoth/fluxheim
cd fluxheim
# Zadani build (proxy + web + cache + tls-rustls + security)
cargo build --release
# Ili kompajliraj fokusirani profile
cargo build --release --no-default-features \
--features profile-proxy-edge,acme-client
# Validiraj config in pokreni
cargo run --release -- \
--check-config --config examples/fluxheim.toml
Ustvarjen za operaterje, ki želijo sodoben, revizijsko sledljiv stack brez skritega legacy vedenja.
Config validation je stroga. Dvoumne ali nevarne možnosti se zavrnejo in se ne sprejmejo tiho.
Ponovljivi buildi. Vsaka dependency je zaklenjena. cargo audit and cargo deny run in CI.
Zaganjaj brez root. Interni porti 8080/8443 po privzetih nastavitvah. Eksplicitne runtime image za različne operativne policy.
Copyleft licenca, združljiva z mnogimi OSS licencami. Izvor v EU, pravno jasna za javno in enterprise uporabo.
Kratek pogled na Fluxheim v production deploymentu.