Fluxheim/Dokumentaatio/Configuration Basics

Configuration Basics

Fluxheim käyttää TOML:ia. Tuntemattomat kentät hylätään, joten kirjoitusvirheet epäonnistuvat ennen uudelleenkäynnistystä.

Päämuoto

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

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

Ota usean vuokraajan ympäristöissä käyttöön [server.host_routing].strict = true, jolloin puuttuva tai virheellinen isäntätunniste palauttaa 400 ja tuntematon isäntä 421 oletussivustolle siirtymisen sijasta.

Miten config on järjestetty

AlueMitä sinne kuuluu
serverListeners, global limits, trusted proxy handling, and redirects.
tlsGlobaali TLS-backend ja compatibility policy.
cacheProcess-wide cache defaults and storage tiers.
vhostsHostnames, routes, web roots, proxy settings, PHP, TLS, and access policy.
metricsPrometheus- ja export-listenerit operatiivista näkyvyyttä varten.

Routen muoto

[[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"]

Routella on yksi matcher ja yksi action. Tarkat polut voittavat ensin, sitten pisimmät prefixit, sitten regex-routet kun regex-tuki on käytössä, ja lopuksi yksi fallback-route.

HTTP-vastauksen suojaus

HTTP-vastausturvaprofiilit ovat valinnaisia. Aloita sanalla baseline; käytä eri lähteiden eristämistä vasta sen jälkeen, kun olet testannut jokaisen skriptin, kirjasimen, kuvan, kirjautumiskulun ja upotetun resurssin.

[headers.response.hardening]
profile = "baseline"
ProfiiliMitä se tekee
offPitää valinnaiset karkaisuotsikot pois käytöstä.
baselineLisää konservatiivisen selaimen eristyksen ja resurssipolitiikan oletusasetukset, jotka sopivat useimmille sivustoille.
cross-origin-isolatedMahdollistaa tiukan lähteiden välisen eristyksen sovelluksille, jotka ovat testanneet kaikki ulkoiset riippuvuudet.

Kumpikaan profiili ei ota käyttöön HSTS:ää tai CSP:tä. Määritä ne erikseen testattuasi niitä todellisessa sivustossa.

Standardeihin perustuva vastaus metatiedot

Vastauksen metatiedot on oletuksena poistettu käytöstä. Ota käyttöön vain tarvitsemasi kentät; Fluxheim johtaa ne todellisesta välimuistin tuloksesta, välityspalvelimen virheestä ja lopullisista vastaustavuista paljastamatta välimuistin avaimia, taustaosoitteita, DNS-nimiä tai raakavirheitä.

[headers.response.metadata]
identifier = "edge-gateway"
cache_status = true
proxy_status = true
content_digest = true
repr_digest = true
KenttäMitä se raportoi
Cache-StatusRFC 9211 välimuistin tulokset, kuten osuma, ohitus, vanhentunut edelleenlähetys, uudelleentarkistus, vanheneminen ja ohitus.
Proxy-StatusRFC 9209 matalakardinaliteettitiedot Fluxheim:n luomista vioista.
Content-DigestRFC 9530 SHA-256 viimeisen HTTP-viestin sisällön pakkaamisen jälkeen.
Repr-DigestSHA-256 vain, kun Fluxheim sisältää koko valitun esityksen.

Live tilannekuvat ja palautus

Autentikoidut tilannevedokset voivat julkaista validoidun ehdokkaan, korvata toimivan reitittimen ja palauttaa ne käynnistämättä uudelleen normaaleja vain reititystä koskevia käyttöönottoja. Jokainen pyyntö pysyy yhdessä reitittimen sukupolvessa alusta loppuun.

  • Säilytä tilannekuvavarasto erillisessä yksityisessä hakemistossa; olemassa olevat ei-yksityiset hakemistot ja tiedostojärjestelmän juuret hylätään.
  • Käytä prosessin päivitystä, kun taustakuormituksen tasapainottimen kunto- tai etsintäpalvelut ovat aktiivisia.
  • Suorita tilannevedoksen eheystarkistukset julkaisun tai palautuksen jälkeen ja varmista, että valittu sukupolvi kestää uudelleenkäynnistyksen.
Lue koko tilannekuvasopimus

Turvalliset käytännöt

  • Run fluxheim --check-config before reloads.
  • Käytä yhtä vhostia per sivusto tai sovellusraja.
  • Pidä secretit tiedostoissa, environmentissa tai container secrets -mekanismissa, ei julkisissa dokumenteissa.
  • Pidä määritystiedostot ja kaikki olemassa olevat ylemmät hakemistot luotettujen omistajien hallinnassa, eikä ryhmällä tai muilla käyttäjillä saa olla niihin kirjoitusoikeutta.
  • Korvaa prosessi, kun TLS:n, kuuntelijoiden, virtojen, UDP:n, ACME:n, välimuistin tyhjennyksen, jäljityksen tai hallittujen PHP-FPM-prosessien asetukset muuttuvat; tavallinen reititys ja pyyntöaikainen käytäntö voidaan päivittää tilannevedoksen uudelleenlatauksella.
  • Käytä route-level limitejä latauksille ja kalliille sovelluspoluille.
  • Pidä admin- ja metrics-listenerit yksityisinä.
Suomi