Rust로 작성된 모듈형 리버스 프록시, 캐시, 로드 밸런서, 정적 호스트입니다. TLS, ACME, 압축, 엣지 정책, 동적 업스트림 검색, 안전한 트래픽 미러링을 기본 제공합니다.
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은 목적별 모듈 빌드로 제공됩니다. 배포에 필요한 것만 사용하세요.
고정된 안정 Rust 툴체인으로 작성되었습니다. 구조적으로 버퍼 오버플로, use-after-free, 데이터 레이스가 없습니다.
커넥션 풀링, 업스트림 재시도, 능동 헬스 체크, HTTP/2, WebSocket 업그레이드, gRPC 패스스루를 갖춘 Rust 네이티브 엣지 런타임입니다.
고급 선택, 로컬 영속성, 헬스/제외 정책, 제한된 큐, 런타임 멤버 제어를 갖춘 1.5 전용 로드 밸런서 바이너리와 이미지입니다.
필요한 기능만 컴파일하세요. 정적 사이트, 캐시 엣지, 리버스 프록시, 로드 밸런싱, TCP 스트림 프록시, PHP-FPM, GeoIP, 트래픽 미러링, 압축 지원 프로덕션 번들을 위한 전용 프로필이 있습니다.
rustls 우선 구조에 OpenSSL 및 FIPS/ISO 증명 빌드 경로, 클라이언트 인증서 인증, 업스트림 mTLS, 자동 ACME 발급, 다중 인증서 SNI를 지원합니다.
메모리, 디스크, 계층형, 암호화 캐시 백엔드와 캐시 안전 gzip, Zstandard, Brotli 압축, 대형 객체용 range 캐싱을 제공합니다.
Wolfi, Alpine, SUSE Micro, Debian용 Rootless Podman 이미지입니다. 네이티브 배포용 systemd/RPM도 제공합니다. 시작 시 외부 자산이 필요 없습니다.
선택형 Prometheus 메트릭 리스너, OTLP 메트릭 내보내기, trace context 전파, 전체 관측성을 위한 OTLP trace 내보내기를 제공합니다.
MaxMind GeoIP2/GeoLite2 또는 CIRCL Geo Open 데이터셋을 사용한 국가 및 ASN 정책용 선택적 로컬 MMDB 조회입니다. 요청 경로에서 원격 조회나 다운로더를 사용하지 않습니다.
전용 스트림 라우트, 실제 idle/lifetime/byte 제한, 업스트림 TLS/mTLS 제어, weighted/drain/backup 정책, 라우트별 PROXY 프로토콜을 갖춘 원시 L4 TCP 서비스입니다.
WordPress 스타일 프론트 컨트롤러 애플리케이션을 위한 선택형 PHP-FPM FastCGI 브리지입니다. 엄격한 스크립트 해석과 제한된 요청 처리를 제공합니다.
신뢰 프록시 인식 ACL, rate limit, auth subrequest, 트래픽 미러링, regex rewrite, 제한된 큐, 엄격한 설정 검증, 강화된 요청 처리를 제공합니다.
Download a pre-built binary, drop in a config file, and start serving. Native systemd units and container images included.
# full 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
# binary를 system path로 이동
sudo mv fluxheim /usr/local/bin/
# 시작 전에 config 검증
fluxheim --check-config --config /etc/fluxheim/fluxheim.toml
# systemd로 실행(포함된 unit file)
sudo systemctl enable --now fluxheim
# GHCR 또는 Quay에서 pull
podman pull ghcr.io/valkyoth/fluxheim:v1.6.30
podman pull quay.io/valkyoth/fluxheim:v1.6.30
# config를 mount하고 rootless로 실행
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
# 사용 가능한 image variant: full, load-balancer, cache, proxy, php
# clone 후 default profile build
git clone https://github.com/valkyoth/fluxheim
cd fluxheim
# default build (proxy + web + cache + tls-rustls + security)
cargo build --release
# 또는 focused profile build
cargo build --release --no-default-features \
--features profile-proxy-edge,acme-client
# config 검증 후 실행
cargo run --release -- \
--check-config --config examples/fluxheim.toml
숨겨진 레거시 동작 없는 현대적이고 감사 가능한 스택을 원하는 운영자를 위해 만들었습니다.
설정 검증은 엄격합니다. 모호하거나 안전하지 않은 옵션은 조용히 허용되지 않고 거부됩니다.
재현 가능한 빌드. 모든 의존성이 고정됩니다. cargo audit and cargo deny run in CI.
root 없이 실행합니다. 기본 내부 포트는 8080/8443입니다. 다양한 운영 정책을 위한 명시적 런타임 이미지를 제공합니다.
많은 OSS 라이선스와 호환되는 copyleft 라이선스입니다. EU에서 시작되어 정부 및 기업 사용에 법적으로 명확합니다.
프로덕션 배포에서 Fluxheim이 어떤 모습인지 한눈에 봅니다.