TLS og ACME

Fluxheim kan servere TLS med statiske certifikater eller administrere ACME-certifikater for dig.

Administrerede certifikater

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

[vhosts.tls]
acme = true
email = "admin@example.com"
storage = "/var/lib/fluxheim/acme"

ACME sikkerhed og livscyklus

Fluxheim 1.7.9 validerer ACME-udstederfortegnelser og kræver en eksplicit accept af de nøjagtige vilkår offentliggjort af udstederen, før der oprettes en konto. Kontoopsætning, certifikatudgivelse, deaktivering og tilbagekaldelse bruger geninddrivelige transaktioner.

[[tls.acme.issuers]]
name = "letsencrypt"
directory_url = "https://acme-v02.api.letsencrypt.org/directory"
terms_of_service_agreed = true
terms_of_service_url = "https://letsencrypt.org/repository/"

Bekræft den aktuelle URL fra udstederen før implementering. En ændret eller uoverensstemmende aftale skal afvises.

Kontroller og vedligehold ACME

fluxheim-acme --config /etc/fluxheim/fluxheim.toml doctor
fluxheim-acme --config /etc/fluxheim/fluxheim.toml doctor --online
fluxheim-acme --config /etc/fluxheim/fluxheim.toml renew
fluxheim-acme --config /etc/fluxheim/fluxheim.toml revoke --vhost example.com --confirm

Online-tjek kører fra denne server og erstatter ikke ekstern overvågning. Tilbagekaldelse sætter det administrerede certifikatpar i karantæne og anmoder om en genindlæsning; installere en erstatning, før du fortsætter normal service.

TLS-valg

ValgBrug det når
rustlsDu vil have den normale hukommelsessikre TLS-path.
opensslDu har brug for en OpenSSL provider boundary.
modernKun moderne TLS-clients må forbinde.
intermediateDu vil have default production compatibility profile.
compatDu skal holde TLS 1.2 compatibility eksplicit.

Static certificate-eksempel

[server]
tls_listen = ["0.0.0.0:8443"]

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

[vhosts.tls]
cert_path = "/etc/fluxheim/tls/fullchain.pem"
key_path = "/etc/fluxheim/tls/privkey.pem"

Tilbagekaldelse af klientcertifikat

Når fælles TLS skal afvise tilbagekaldte klientcertifikater, skal du angive en afgrænset PEM CRL-pakke. Fluxheim validerer hele udstederkæden og afviser udløbet eller ufuldstændig CRL-politik.

[vhosts.tls.client_auth]
mode = "required"
ca_path = "/etc/fluxheim/tls/client-ca.pem"
crl_path = "/etc/fluxheim/tls/client-crls.pem"

Påkrævet klientgodkendelse i en FIPS eller ISO-krævet overholdelsestilstand kræver også en CRL-pakke. Almindelig klientgodkendelse beholder tilbagekaldelse som en eksplicit opt-in.

Før ACME aktiveres

  • Sørg for, at public DNS peger på denne server.
  • Tillad HTTP-01 eller TLS-ALPN-01 challenge-trafik.
  • Mount ACME-state som persistent skrivbart storage.
  • Brug externally issued certificates til strenge FIPS- eller ISO-required boundaries.
Dansk