Aller au contenu

AdminRezo » Rouler en classe A avec Nginx


Ldfa

Messages recommandés

classe-a

La fondation Mozilla a beaucoup travaillé ces derniers temps sur l’amélioration de la sécurité du Web.

Pour les sysadmins, le site SSL Configuration Generator est génial car il vous permet d’obtenir une configuration sécurisée de votre serveur Web. Il vous suffit de choisir votre serveur Web, la version que vous utilisez et la version d’openssl et le tour est joué.

Sauf que ce n’est pas encore suffisant pour protéger les utilisateurs des principales failles Web comme XSS, par exemple.

Pour le voir, il suffit de faire un tour sur l’observatoire Mozilla pour reçevoir une (très) mauvaise note.

Mais comme toutes vos erreurs sont expliquées, vous allez pouvoir revoir votre copie avant le prochain examen.

Comment être un bon élève chez Mozilla ?

Pour être un bon élève, vous allez devoir jouer avec les en-têtes HTTP (à ajouter dans votre site /etc/nginx/sites-enabled/monsite).

# HSTS permet de déclarer au client directement dans la réponse HTTP qu'il faut communiquer en HTTPS
# Cette en-tête permet d'éviter le vol de cookies et le downgrade SSL
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
# Evite que le contenu soit interprété différemment que définit dans le mime Type
add_header X-Content-Type-Options nosniff;
# Protection contre le clickjacking
add_header X-Frame-Options "SAMEORIGIN";
# Protection contre les failles X-XSS
add_header X-XSS-Protection "1; mode=block";
# Faille spécifique à IE8
add_header X-Download-Options noopen;
# Interdire l'embarquement de tout ou partie de votre site dans un site ou logiciel tiers
add_header X-Permitted-Cross-Domain-Policies none;
# Enfin, les CSP permettent de vérifier l'origine des éléments du site
# Plutôt complexes à mettre en place, voir 
#add_header Content-Security-Policy "default-src 'self';" always;

Après un redémarrage de Nginx, l’observatoire Mozilla doit être content de vous.

Comment être un bon élève chez SSLLabs ?

SSLLabs ne regarde pas les en-têtes HTTP mais plutôt comment vous avez implémenté le TLS.

Voici une solution simple de configuration de TLS :

ssl on;                                                                                                 
ssl_certificate /etc/letsencrypt/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/privkey.pem;
ssl_dhparam /etc/letsencrypt/dhparams.pem;
ssl_protocols TLSv1.2;
ssl_prefer_server_ciphers on; 
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';

Le fichier DHParams se génère comme ça :

openssl dhparam -out /etc/letsencrypt/dhparams.pem 4096

Et après un redémarrage, SSLLabs est lui-aussi content de vous.

Sur le même sujet :

Afficher l’article complet

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.