Let’s Encrypt, HSTS et HTTP2 sur IIS 10

1/52/53/54/55/5 (2 votes, moyenne: 2,50 sur 5)
Loading...
L

Attention, cet article a plus d'une année d'ancienneté. Il est possible que les informations présentées ne soient plus à jour, spécialement dans le cadre d'un article technique.


Bonjour à tous,

Aujourd’hui, on va voir comment configurer TLS, Let’s Encrypt, HSTS et HTTP2 sur IIS 10 et donc Windows Serveur 2016. Rien que ça.

Windows Serveur 2016 n’est pas encore sorti lors de l’écriture de cet article, j’utilise la preview 5 mais la procédure ne devrait pas changer.

HTTP2 est supporté nativement sur IIS 10 par contre, vous n’aurez jamais le A+ sur SSLLABS car IIS ne supporte pas TLS_FALLBACK_SCSV si vous avez une autre version de TLS 1.X d’activée excepté TLS 1.2.

 

Prérequis :

 

Génération d’un certificat Let’s Encrypt :

Décompressez l’archive de Let’s Encrypt Win Simple et placez le dossier extrait à la racine de C: (en le renommant comme moi éventuellement) :

IIS-LetsEncrypt-HTTP2-01

Ensuite, éditez le fichier letsencrypt.exe.config :

IIS-LetsEncrypt-HTTP2-02

 

Cherchez le passage suivant :

<setting name= »RSAKeyBits » serializeAs= »String »>
<value>2048</value>
</setting>

Et remplacez 2048 par 4096 pour générer des certificats utilisant des clés RSA de 4096 bits.

<setting name= »RSAKeyBits » serializeAs= »String »>
<value>4096</value>
</setting>

 

Exécutez le programme letsencrypt.exe en tant qu’Administrateur :

IIS-LetsEncrypt-HTTP2-03

 

Suivez les étapes de l’assistant pour créer votre ou vos certificats :

IIS-LetsEncrypt-HTTP2-04

 

Et vous aurez votre beau certificat Let’s Encrypt configuré sur votre site IIS 🙂

IIS-LetsEncrypt-HTTP2-05

 

 

Sécurisation d’HTTPS :

Même sous IIS 10, la configuration par défaut de Microsoft est minable, SSL 3 est supporté par défaut comme vous pouvez le voir :

IIS-LetsEncrypt-HTTP2-06

 

Lancez IISCrypto en tant qu’Administrateur :

IIS-LetsEncrypt-HTTP2-07

 

Cliquez sur Best Practices et Apply pour avoir une configuration compatible avec pas mal de choses en étant un minimum sécurisé :

IIS-LetsEncrypt-HTTP2-08

 

Avec pour résultat :

IIS-LetsEncrypt-HTTP2-09

 

Sinon, téléchargez un de mes profils sur Github et appliquez-le pour encore plus de sécurité.

Par exemple :

IIS-LetsEncrypt-HTTP2-12

 

Activer HSTS sur IIS :

La dernière étape pour arriver au Graal, l’activation de HSTS.

Pour ce faire, rendez-vous dans la configuration de votre site IIS et dans les En-têtes de réponse HTTP :

IIS-LetsEncrypt-HTTP2-13

 

Allez dans Actions et cliquez sur Ajouter … :

IIS-LetsEncrypt-HTTP2-14

Renseignez les paramètres suivants :

  • Nom : Strict-Transport-Security
  • Valeur : max-age=15768000; includeSubDomains; preload

IIS-LetsEncrypt-HTTP2-15

 

Redémarrez votre site IIS et vous aurez enfin le fameux A+ si vous avez choisi le profil qui ne dispose que de TLS 1.2 🙂

IIS-LetsEncrypt-HTTP2-16

A propos de l'auteur

Nicolas Simond

Ingénieur Systèmes et Réseaux et guitariste hard rock et metal à mes heures perdues.
Je suis le créateur et l'unique rédacteur d'Abyss Project, c'est ici que je note la plupart de mes procédures et quelques divagations.

Si vous l'article vous a aidé, pensez à me payer un café :)

Subscribe
Notify of
guest

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

0 Commentaires
Inline Feedbacks
View all comments