Comment activer TLS 1.3 dans Nginx

Transport Layer Security (TLS) 1.3 est la dernière version du protocole Transport Layer Security (TLS), publiée en tant que norme IETF dans la RFC 8446en août 2018.Le protocole TLS 1.3 apporte des améliorations en matière de confidentialité et de performances par rapport aux versions précédentes de TLS et au protocole HTTP non sécurisé.

Depuis la version 1.13.0, Nginx a ajouté la prise en charge de TLS 1.3. Actuellement, la plupart des distributions Linux ne contiennent pas les versions requises de Nginx et OpenSSL dans leurs dépôts de logiciels par défaut, tu devras donc probablement compiler Nginx toi-même avec OpenSSL 1.1.1+. Les seules distributions Linux qui ont une prise en charge native de TLS 1.3 sont Ubuntu 18.10, Fedora 29 et Debian 10(pas encore publiée à ce jour). Si tu as besoin d’un guide sur la façon de compiler Nginx à partir des sources, tu peux suivre ce tutoriel Howtoforge. Dans ce tutoriel,je vais supposer que tu as déjà une configuration TLS fonctionnelle, que tu as compilé Nginx avec OpenSSL 1.1.1+ en suivant mon tutoriel lié et que tu sais comment utiliser Let’s Encrypt, ou que tu sais comment émettre un certificat auto-signé.

Exigences

Pour activer TLS 1.3 dans Nginx, tu dois remplir les conditions suivantes :

  • Nginx version1.13.0ou supérieureconstruite contre OpenSSL 1.1.1 ou supérieure.
  • Un certificat TLS valide ou un certificat auto-signé. Tu peux en obtenir un gratuitement sur Let’s Encrypt.

Activer TLS 1.3 dans Nginx

Pour activer TLS 1.3 dans Nginx,ajoutesimplementleparamètreTLSv1.3 à la directivessl_protocols.

ssl_protocols TLSv1.2 TLSv1.3;

Et recharge ta configuration Nginx :

sudo systemctl reload nginx.service

C’est tout ce qu’il y a à faire lorsqu’il s’agit de configurer Nginx. Une simple modification et TLS 1.3 devrait fonctionner.

Voici la configuration minimale du serveur virtuel pour TLS 1.3 qui peut ressembler à quelque chose comme ça :

server {

listen 443 ssl http2;
listen [::]:443 ssl http2;

server_name example.com;
root /var/www/example.com/public;

ssl_certificate /path/to/your/certificate.crt;
ssl_certificate_key /path/to/your/private.key;

ssl_protocols TLSv1.2 TLSv1.3;

}

Pour vérifier si ton serveur prend en charge TLS 1.3, tu peux utiliser les outils de développement de ton navigateur ou le test de serveur SSLLabs. Ci-dessous se trouvent les captures d’écran du navigateur Google Chrome qui montrent TLS 1.3 en action.

Vérifie la version de TLS dans le navigateur

TLS 1.3 activé dans Nginx avec succès

Et c’est tout ce qu’il y a à faire pour activer TLS 1.3 sur ton serveur Nginx.

Vous aimerez aussi...