TLS и ACME
Fluxheim може да сервира TLS със статични сертификати или да управлява ACME сертификати вместо теб.
Управлявани сертификати
[[vhosts]]
name = "site"
hosts = ["example.com"]
[vhosts.tls]
acme = true
email = "admin@example.com"
storage = "/var/lib/fluxheim/acme"
ACME безопасност и жизнен цикъл
Fluxheim 1.7.9 валидира директориите на емитенти на ACME и изисква изрично съгласие с точните условия, публикувани от емитента, преди да създадете акаунт. Настройката на акаунт, публикуването на сертификат, деактивирането и отмяната използват възстановими транзакции.
[[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/"
Потвърдете текущия URL адрес от издателя преди внедряването. Променено или несъответстващо споразумение трябва да бъде отхвърлено.
Проверка и поддръжка на 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
Онлайн проверките се изпълняват от този сървър и не заместват външното наблюдение. Отмяната поставя под карантина двойката управлявани сертификати и изисква презареждане; инсталирайте заместител, преди да продължите нормалното обслужване.
TLS избори
| Избор | Използвай, когато |
|---|---|
rustls | Искаш нормалния memory-safe TLS path. |
openssl | Имаш нужда от OpenSSL provider boundary. |
modern | Само модерни TLS client-и трябва да се свързват. |
intermediate | Искаш default production compatibility profile. |
compat | Трябва да държиш TLS 1.2 compatibility explicit. |
Пример със static certificate
[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"
Анулиране на клиентски сертификат
Когато взаимният TLS трябва да отхвърли анулирани клиентски сертификати, осигурете ограничен пакет PEM CRL. Fluxheim валидира пълната верига на издателя и отхвърля изтеклата или непълна CRL политика.
[vhosts.tls.client_auth]
mode = "required"
ca_path = "/etc/fluxheim/tls/client-ca.pem"
crl_path = "/etc/fluxheim/tls/client-crls.pem"
Изискваното удостоверяване на клиента в режим на съответствие, изискван от FIPS или ISO, също изисква пакет CRL. Обикновеното удостоверяване на клиента запазва отмяната като изрично включване.
Преди включване на ACME
- Увери се, че public DNS сочи към този server.
- Разреши HTTP-01 или TLS-ALPN-01 challenge traffic.
- Mount-ни ACME state като persistent writable storage.
- Използвай externally issued certificate-и за strict FIPS или ISO-required boundary.