video-surveillance-app/deploy/Caddyfile.snippet

40 lines
1.5 KiB
Text
Raw Normal View History

# ---------------------------------------------------------------------------
# Bloc a ajouter a /opt/edge/Caddyfile sur le serveur Hetzner.
#
# Pourquoi Caddy et pas Nginx + Certbot : le serveur heberge deja cinq autres
# domaines derriere un Caddy qui detient les ports 80 et 443. Y demarrer un
# second frontal aurait mis les deux en conflit sur les memes ports et coupe
# les services existants. Caddy obtient et renouvelle les certificats
# Let's Encrypt tout seul - il n'y a pas de Certbot a installer.
#
# Les deux orthographes sont servies : "seurveillance" est celle du sous-domaine
# demande, "surveillance" couvre la faute de frappe dans les deux sens.
# Caddy demande un certificat pour chaque nom qui resout vers ce serveur.
#
# Le proxy WebSocket n'a rien a declarer : Caddy propage l'upgrade nativement.
# ---------------------------------------------------------------------------
video-seurveillance.belkacemi.me, video-surveillance.belkacemi.me {
reverse_proxy iot-alarm-app:8080
# L'actuator n'a aucune raison d'etre public : health et metriques
# renseignent un attaquant sur les versions et l'etat interne.
@actuator path /actuator/*
respond @actuator 404
encode gzip zstd
header {
Strict-Transport-Security "max-age=31536000; includeSubDomains"
X-Content-Type-Options "nosniff"
X-Frame-Options "SAMEORIGIN"
Referrer-Policy "strict-origin-when-cross-origin"
-Server
}
log {
output file /var/log/caddy/iot-alarm.log
format json
}
}