Obtenir le rang A+ sur SSL Labs avec Caddy

devops 14 févr. 2021

Comme vous l'avez vu dernièrement, je suis assez fan du serveur web Caddy. Dans la configuration de base, il permet déjà d'obtenir un rang A sur le site SSL Labs qui permet de tester la configuration des noms de domaine sur leur serveur web (afin de voir s'ils utilisent un certificat réel (et lequel, du moins si on ne fait pas confiance aux données indiquées par le navigateur web) et à quel point la connexion au site est sécurisée), ce qui est mieux que sur un autre serveur que je possède et qui tourne sous Traefik + Apache, qui lui atteint un rang B avec la configuration de base (du moins sur la version 2.1).

Cependant mon OCD dans ce domaine me pousse à chercher le rang A+, et il s'avère que c'est assez simple, en réalité il manque surtout l'activation du HSTS, ce qui se règle en ajoutant un header au domaine souhaité, qui s'ajoute de la manière suivante :

antho.dev {
    log

    # Le header à ajouter pour activer le HSTS
    header Strict-Transport-Security "max-age=31536000; includeSubDomains;"
    
    header X-XSS-Protection "1; mode=block"
    header X-Content-Type-Options "nosniff"
    header -Server

    reverse_proxy ghost:8080 # ce n'est pas la vraie configuration de mon ghost :p

    encode gzip zstd
    file_server
}

Et voici le résultat :

Il reste encore des détails pour avoir tout parfait (des problèmes de handshake SSL avec les anciennes versions de Safari) mais au moins ça démontre que mon nom de domaine est configuré correctement sur mon serveur.

Mots clés

Anthodev

Développeur PHP / Symfony chez Tekyn. Ex GameDev chez Ubisoft / Créateur de Astral Planner (actuellement en développement).

Super ! Vous vous êtes inscrit avec succès.
Super ! Effectuez le paiement pour obtenir l'accès complet.
Bon retour parmi nous ! Vous vous êtes connecté avec succès.
Parfait ! Votre compte est entièrement activé, vous avez désormais accès à tout le contenu.