HSTS für Caddy konfigurieren
Die einfachste HSTS-Konfiguration: Eine Zeile im Caddyfile — Caddy kümmert sich um HTTPS, Sie setzen den HSTS-Header.
HSTS in Caddy
Caddy ist für seine minimale Konfiguration und automatisches HTTPS bekannt — die einfachste Syntax aller Webserver. Zertifikate werden automatisch über Let's Encrypt bezogen und erneuert, HTTP-zu-HTTPS-Redirect ist standardmäßig aktiv. Was Caddy bewusst nicht automatisch setzt, ist der HSTS-Header — die Preload-Entscheidung überlässt Caddy dem Betreiber.
Die HSTS-Konfiguration in Caddy ist denkbar einfach: eine Zeile im Caddyfile genügt. Keine Module, keine Abhängigkeiten, kein Neustart — ein caddy reload reicht. HSTS bringt 15 von 166 Punkten im Wolf-Agents Web Security Check.
HSTS-Header im Caddyfile setzen
Fügen Sie die header-Direktive in den Site-Block Ihres Caddyfiles ein. Caddy kümmert sich automatisch um HTTPS und den HTTP-zu-HTTPS-Redirect — Sie müssen nur den HSTS-Header ergänzen.
# Caddyfile
ihre-domain.de {
header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
} Caddy leitet HTTP automatisch auf HTTPS um und verwaltet Zertifikate via Let's Encrypt. Ein separater HTTP-Server-Block oder manueller Redirect ist nicht nötig — Caddy übernimmt das vollautomatisch.
Konfiguration testen
Laden Sie die Konfiguration neu und prüfen Sie den HSTS-Header. Caddy validiert das Caddyfile automatisch — bei Syntaxfehlern wird die alte Konfiguration beibehalten.
# 1. Konfiguration neu laden (kein Downtime)
caddy reload
# Oder als systemd-Service:
sudo systemctl reload caddy
# 2. HSTS-Header prüfen
curl -sI https://ihre-domain.de | grep -i strict
# Erwartete Ausgabe:
# Strict-Transport-Security: max-age=31536000; includeSubDomains; preload HSTS Preload beantragen
Reichen Sie Ihre Domain auf hstspreload.org ein. Caddy kümmert sich automatisch um HTTPS und Zertifikatserneuerung — ein abgelaufenes Zertifikat (das häufigste Problem bei HSTS + Preload) ist mit Caddy praktisch ausgeschlossen.
Wie steht Ihre Domain bei HSTS?
Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.
Häufig gestellte Fragen
Setzt Caddy HSTS automatisch?
Nein. Caddy aktiviert zwar automatisch HTTPS mit Let's Encrypt und leitet HTTP auf HTTPS um, setzt aber bewusst keinen HSTS-Header. Die Caddy-Entwickler überlassen die Preload-Entscheidung dem Betreiber, da Preload quasi-permanent ist.
Brauche ich ein SSL-Zertifikat bei Caddy?
Caddy bezieht und erneuert SSL-Zertifikate automatisch über Let's Encrypt oder ZeroSSL. Sie müssen kein Zertifikat manuell installieren — geben Sie einfach Ihre Domain im Caddyfile an.
Wie lade ich die Caddy-Konfiguration neu?
Mit „caddy reload" (wenn Caddy als Service läuft) oder „systemctl reload caddy". Caddy lädt die Konfiguration ohne Unterbrechung aktiver Verbindungen neu — kein Downtime.
Kann ich HSTS nur für bestimmte Pfade setzen?
Technisch ja, mit route-Blöcken im Caddyfile. Für HSTS ist das aber nicht sinnvoll — der Browser speichert HSTS pro Domain. Setzen Sie den Header global für die gesamte Domain.
Funktioniert HSTS mit Caddy als Reverse Proxy?
Ja. Setzen Sie den HSTS-Header im Caddyfile der Reverse-Proxy-Konfiguration. Caddy terminiert HTTPS und setzt den Header, bevor die Response den Browser erreicht — unabhängig davon, ob das Backend den Header setzt.