TLS 1.3 avec Nginx et Debian 9

//TLS 1.3 avec Nginx et Debian 9
1/52/53/54/55/5 (3 votes, moyenne: 5,00 sur 5)
Loading...

TLS 1.3 avec Nginx et Debian 9

Bonjour à tous,

Maintenant que le draft de TLS 1.3 a été validé dans sa version finale, on va enfin voir comment utiliser TLS 1.3 avec Nginx et Debian 9.

 

Pour plus d’informations

J’ai déjà fait un article en détail sur la compilation de NGINX, nous n’y reviendrons pas ici : https://www.abyssproject.net/2016/11/compiler-nginx-pourquoi-comment/

 

Si vous voulez installer un serveur web complet, vous pouvez commencer par la : https://www.abyssproject.net/2017/06/monter-serveur-web-debian-9/

Prérequis

 

Installation ou mise à jour du NGINX existant

Télécharger et lancez mon script de build, répondez simplement aux deux questions posées au début selon votre situation :

cd /tmp && wget --no-check-certificate https://raw.githubusercontent.com/stylersnico/nginx-openssl-chacha/master/build.sh && sh build.sh
Did you run this script before? (y/n) y
Do you want NAXSI WAF (still experimental)? (y/n) y

 

Maintenant, vous aurez un NGINX compilé avec la dernière version dev de OpenSSL 1.1 et avec le support de TLS 1.3 activé pour les draft 23 + 26 + 27 + 28 + final.

 

Les changements dans la configuration existante

Maintenant, il va falloir faire les modifications dans NGINX pour que vous puissiez utiliser TLS 1.3.

On va voir uniquement ce qui change, si vous voulez une configuration complète, optimisée et sécurisée alors vous pouvez vous tourner vers ma configuration standard : https://github.com/stylersnico/nginx-secure-config

 

Ouvrez votre fichier de configuration NGINX :

nano /etc/nginx/nginx.conf

 

Recherchez d’abord la ligne des protocoles :

ssl_protocols TLSv1.2;

 

Ici, ajoutez la nouvelle version de TLS :

ssl_protocols TLSv1.2 TLSv1.3;

 

Maintenant, il va falloir chercher la ligne qui spécifie les ciphers utilisés :

ssl_ciphers 'EECDH+AESGCM:EECDH+CHACHA20';

 

Ajoutez les ciphers spécifiques au nouveau protocole au début :

ssl_ciphers 'TLS13+AESGCM+AES128:EECDH+AESGCM:EECDH+CHACHA20';

 

Maintenant, redémarrez nginx :

service nginx restart

 

Validation de la bonne configuration

Maintenant, le moyen le plus simple pour valider la bonne marche du fonctionnement de TLS 1.3 c’est de visiter votre site avec un Firefox ou Chrome à jour.

Ouvrez les détails de votre connexion TLS et vous devriez voir que vous utilisez bien le nouveau protocole :

 

Vous pouvez aussi allez sur SSLLABS et valider la bonne marche de votre domaine : https://dev.ssllabs.com/ssltest/analyze.html?d=abyssproject.net&s=195.201.117.190

By |2018-08-30T09:55:05+00:0030 août 2018|GNU/Linux|8 Comments

About the Author:

Diplômé d'un BTS SIO SISR et travaillant actuellement en Suisse, je suis passionné par tout ce qui touche à l'informatique et la musique hard rock et métal depuis ma plus tendre enfance. Je suis le créateur et l'unique rédacteur d'Abyss Project, ce blog qui me sert de bloc-notes public en quelque sorte.

8
Poster un Commentaire

avatar
2 Comment threads
6 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
4 Comment authors
NovakinkoocotteNicolas SimondMathias Recent comment authors

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

Plus récents Plus anciens Populaires
koocotte
Invité
koocotte

Je vois beaucoup de problème qui font que je n’exécuterai pas ces instructions dans l’état actuel des choses. Pour être constructif, voici les points qui me pose problème: – Un script lambda récupéré sur le net en désactivant explicitement la vérification du certificat (pourquoi cette désactivation, c’est louche). On n’apprends pas grand chose sans ouvrir le script, et en cas d’erreur (dans une année lorsque certaines ressources auront trop changés ou auront disparus) il sera compliqué d’adapter. – Un script exécuté en root, au revoir la sécurité. – Un script sans le « set -eu », s’il y a une erreur, ça… Voir plus »

Novakin
Invité

Rien ne t’empêche de proposer des changements dans le code du script non ?

Sérieusement cette mentalité dans le libre de critiquer avec un ton condescendant commence littéralement a me gaver.

koocotte
Invité
koocotte

J’ai bien pris le temps d’expliquer les points qui me posent problème et le problème général qu’il y a a exécuter un script tout fait sur internet; si tu trouves le condescendant, je suis désolé; mais ça ne change rien au fond. Et lister les points est justement une façon de faire des remontées et de proposer des changements.

Mathias
Invité

Bonjour et merci pour ce billet ! Sinon aujourd’hui (2018-08-30) et probablement depuis quelques jours, Nginx v1.13 (qui supporte TLS1.3) est dans les repos stretch-backports. L’image docker officielle de nginx est aussi au moins en v1.13 et traefik (https://docs.traefik.io/) doit aussi probablement gèrer TLS1.3 car basé sur nginx v1.13 / image docker. Donc la phase de download / compilation devient inutile et c’est tant mieux 😉 On a donc dans l’ordre d’abstraction croissant : 1 – Nginx direct sur un serveur : Debian + stretch-backports + nginx 1.13 + conf adéquate 2 – Nginx dans docker : Debian + docker… Voir plus »

Mathias
Invité

Au temps pour moi j’aurais mieux fait de tester avant de raconter nimp’ 😉