Fluxheim/Documentació/Configuration Basics

Configuration Basics

Fluxheim usa TOML. Els camps desconeguts es rebutgen, així que els errors d'escriptura fallen abans del reinici.

Forma principal

[server]
listen = ["0.0.0.0:8080"]
default_vhost = "site"

[[vhosts]]
name = "site"
hosts = ["example.com"]

En desplegaments multiinquilí, activeu [server.host_routing].strict = true perquè una identitat d’amfitrió absent o no vàlida retorni 400 i els amfitrions desconeguts retornin 421 en lloc d’arribar al lloc predeterminat.

Com s'organitza la config

ÀreaQuè hi pertany
serverListeners, global limits, trusted proxy handling, and redirects.
tlsBackend TLS global i política de compatibilidad.
cacheProcess-wide cache defaults and storage tiers.
vhostsHostnames, routes, web roots, proxy settings, PHP, TLS, and access policy.
metricsPrometheus i export listeners per a visibilidad operativa.

Forma de route

[[vhosts.routes]]
name = "app"
path_prefix = "/app/"
methods = ["GET", "HEAD", "POST"]
max_request_body_bytes = "16MiB"

[vhosts.routes.proxy]
upstreams = ["127.0.0.1:3000"]

Una route tiene un matcher i una action. Exact paths ganan primero, luego prefixes más largos, luego regex routes cuando regex support está activo, i finalmente una fallback route.

Seguretat de resposta HTTP

Els perfils de seguretat de resposta HTTP són opcionals. Comenceu amb baseline; utilitzeu l'aïllament entre orígens només després de provar cada script, tipus de lletra, imatge, flux d'inici de sessió i recurs incrustat.

[headers.response.hardening]
profile = "baseline"
PerfilQuè fa
offManté les capçaleres d'enduriment activades desactivades.
baselineAfegeix un aïllament conservador del navegador i els valors predeterminats de la política de recursos adequats per a la majoria de llocs.
cross-origin-isolatedPermet un aïllament estricte entre orígens per a aplicacions que han provat totes les dependències externes.

Cap dels dos perfils activa HSTS o CSP. Configureu-los per separat després de provar-los amb el lloc real.

Metadades de resposta basades en estàndards

Les metadades de resposta estan desactivades de manera predeterminada. Habiliteu només els camps que necessiteu; Fluxheim els deriva del resultat real de la memòria cau, l'error del servidor intermediari i els bytes de resposta final sense exposar les claus de la memòria cau, les adreces de fons, els noms DNS o els errors en brut.

[headers.response.metadata]
identifier = "edge-gateway"
cache_status = true
proxy_status = true
content_digest = true
repr_digest = true
CampEl que informa
Cache-StatusRFC 9211 resultats de la memòria cau, com ara encert, error, reenviament obsolet, revalidació, caducitat i bypass.
Proxy-StatusDetalls de cardinalitat baixa de RFC 9209 per a errors generats per Fluxheim.
Content-DigestRFC 9530 SHA-256 sobre el contingut final del missatge HTTP després de la compressió.
Repr-DigestSHA-256 només quan Fluxheim conté la representació seleccionada completa.

Instantània en directe i retrocés

Les instantànies autenticades poden publicar un candidat validat, substituir l'encaminador en directe i retrocedir sense reiniciar els desplegaments normals només d'encaminament. Cada sol·licitud es manté en una generació d'encaminador des del principi fins al final.

  • Mantingueu la botiga d'instantànies en un directori privat dedicat; es rebutgen els directoris no privats existents i les arrels del sistema de fitxers.
  • Utilitzeu una actualització de procés quan els serveis de descobriment o la salut de l'equilibrador de càrrega en segon pla estiguin actius.
  • Executeu comprovacions d'integritat de les instantànies després de la publicació o de la retroalimentació i comproveu que la generació seleccionada sobreviu al reinici.
Llegiu el contracte de la instantània completa

Hàbits segurs

  • Run fluxheim --check-config before reloads.
  • Usa un vhost per lloc o límit d'aplicació.
  • Mantingues secrets en fitxers, entorn o container secrets, no en docs públics.
  • Manteniu els fitxers de configuració i tots els directoris pare existents sota una propietat de confiança i sense permisos d’escriptura per al grup ni per a altres usuaris.
  • Substituïu el procés quan canviïn TLS, els listeners, els fluxos, UDP, ACME, la purga de memòria cau, el seguiment o la configuració del procés PHP-FPM gestionat; l’encaminament ordinari i les polítiques durant la petició poden usar una recàrrega de snapshot.
  • Usa límits a nivell de route per a uploads i paths d'aplicació costosos.
  • Mantingues privats els listeners d'admin i metrics.
Català