v1.6.30 — Najnowsze stabilne wydanie

Memory-safe
Serwer edge
Napisany w Rust

Modularny reverse proxy, cache, load balancer i statyczny host napisany w Rust. Bezpieczny domyślnie z TLS, ACME, kompresją, edge policy, dynamic upstream discovery i bezpiecznym traffic mirroring.

Rust Fluxheim core EUPL-1.2 x86_64 Linux ARM64 Linux Rozwój macOS Kontenery rootless
/etc/fluxheim/fluxheim.toml
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"]

Wszystko, czego potrzebujesz na warstwie edge

Fluxheim jest dostarczany jako skupione, modularne buildy: używaj tylko tego, czego wymaga twój deployment.

Memory-safe z założenia

Napisany w Rust ze stałym stabilnym toolchainem. Bez buffer overflow, use-after-free ani data race z konstrukcji.

Fluxheim HTTP core

Rust-native runtime edge z connection pooling, upstream retry, aktywnymi health check, HTTP/2, WebSocket upgrade i gRPC pass-through.

Control plane load balancera

Skupiony load-balancer 1.5 binary i image z advanced selection, lokalną persistence, health/ejection policy, bounded code i runtime member controls.

Modularne profile build

Kompiluj tylko to, czego potrzebujesz. Skupione profile dla static site, edge cache, reverse proxy, load balancing, TCP stream proxying, PHP-FPM, GeoIP, traffic mirroring i production bundle z kompresją.

TLS i zarządzane ACME

Podejście rustls-first z ścieżkami build OpenSSL i FIPS/ISO, client certificate auth, upstream mTLS, automatycznym wydawaniem ACME i multi-cert SNI.

Zaawansowany system cache

Backendy cache memory, disk, tiered i encrypted z cache-safe kompresją gzip, Zstandard i Brotli oraz range caching dla dużych obiektów.

Container-native

Rootless Podman image dla Wolfi, Alpine, SUSE Micro i Debian. Systemd/RPM dla native deployment. Bez zewnętrznych assetów w runtime.

Prometheus i OpenTelemetry

Opcjonalny Prometheus metrics listener, OTLP metrics export, trace context propagation i OTLP trace export dla pełnej observability.

GeoIP / Geo-context

Opcjonalne lokalne lookup MMDB dla policy country i ASN z MaxMind GeoIP2/GeoLite2 lub datasetem CIRCL Geo Open. Bez remote lookup ani downloadera w request path.

TCP stream proxy

Surowe usługi L4 TCP z dedicated stream route, rzeczywistymi idle/lifetime/byte cap, kontrolami upstream TLS/mTLS, weighted/drain/backup policy i lokalnym PROXY protocol na route.

Obsługa PHP-FPM

Opcjonalny PHP-FPM FastCGI bridge dla aplikacji front-controller, takich jak WordPress. Ścisły script resolution i bounded request handling.

Kontrole edge policy

ACL świadome trusted proxy, rate limit, auth subrequest, traffic mirroring, regex rewrite, bounded code, ścisła walidacja config i hardened request handling.

Uruchom w kilka minut

Download a pre-built binary, drop in a config file, and start serving. Native systemd units and container images included.

bash
# Pobierz i rozpakuj pełny build
curl -L https://github.com/valkyoth/fluxheim/releases/download/v1.6.30/fluxheim-1.6.30-full-x86_64-linux.tar.gz \
  | tar xz

# Przenieś binary do system path
sudo mv fluxheim /usr/local/bin/

# Zweryfikuj config przed startem
fluxheim --check-config --config /etc/fluxheim/fluxheim.toml

# Uruchom z systemd (dołączony unit file)
sudo systemctl enable --now fluxheim
bash
# Pull z GHCR lub Quay
podman pull ghcr.io/valkyoth/fluxheim:v1.6.30
podman pull quay.io/valkyoth/fluxheim:v1.6.30

# Uruchom rootless z zamontowanym configiem
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

# Dostępne warianty image: full, load-balancer, cache, proxy, php
bash
# Clone i build profilu default
git clone https://github.com/valkyoth/fluxheim
cd fluxheim

# Build default (proxy + web + cache + tls-rustls + security)
cargo build --release

# Albo build skupionego profilu
cargo build --release --no-default-features \
  --features profile-proxy-edge,acme-client

# Zweryfikuj config i uruchom
cargo run --release -- \
  --check-config --config examples/fluxheim.toml

Dlaczego Fluxheim?

Zbudowany dla operatorów, którzy chcą nowoczesnego, audytowalnego stacku bez ukrytego legacy behavior.

Bez ukrytego legacy fallback

Config validation jest ścisła. Niejednoznaczne lub niebezpieczne opcje są odrzucane, nie akceptowane po cichu.

Cargo.lock jest dołączony

Powtarzalne buildy. Każda dependency jest przypięta. cargo audit and cargo deny run in CI.

Kontenery rootless-first

Uruchamiaj bez root. Domyślne porty wewnętrzne 8080/8443. Jasne runtime images dla różnych polityk operacyjnych.

Open source EUPL-1.2

Licencja copyleft zgodna z wieloma licencjami OSS. Pochodzenie UE, prawnie jasna dla użycia publicznego i enterprise.

Przegląd

Krótki widok tego, jak Fluxheim wygląda w production deployment.

Przegląd architektury Fluxheim
Polski