Bonjour à tous,
pour nos instances Discourse auto-hébergées actuelles, nous devons ajouter « IncludeSubDomains » à nos en-têtes STS en raison d’une attente de nos scanners internes.
Auparavant, j’y parvenais en utilisant des commandes sed dans app.yml dans les commandes personnalisées après la construction pour mettre à jour /etc/nginx/conf.d/discourse.conf afin d’inclure 'add_header Strict-Transport-Security “max-age=31536000; includeSubDomains” always;
ainsi que :
- replace:
filename: "/etc/nginx/conf.d/outlets/discourse/20-https.conf"
from: /add_header Strict-Transport-Security.+/
to: add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
global: true
- replace:
filename: "/etc/nginx/conf.d/outlets/server/20-https.conf"
from: /add_header Strict-Transport-Security.+/
to: add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
global: true
Cela fonctionnait auparavant. Cependant, cela a cessé de fonctionner. J’ai lu que la création d’un nouveau fichier de sortie devrait me permettre d’ajouter ceci en utilisant :
hooks:
after_code:
- file:
path: /etc/nginx/conf.d/outlets/server/90-hsts.conf
chmod: 444
contents: |
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
Cependant, cela entraîne la présence de deux en-têtes STS (un provenant du modèle SSL et un provenant de mon nouveau modèle). Existe-t-il une meilleure façon de procéder afin de ne pas me retrouver avec deux en-têtes STS ? Je pensais que nginx respecterait le dernier en-tête ajouté et ignorerait l’en-tête du modèle SSL qui ne contient que max-age=31536000; , est-ce donc un bogue ? Merci pour tout conseil que vous pourrez me donner.