======= Nginx avec TLSv1.3 sous Debian Stretch====== Pour cela, il va vous falloir Nginx 1.13 ou plus, et OpenSSL 1.1.1 ou plus. ==== Installation de Nginx depuis les backports Debian ==== Il va vous falloir ajouter les dépots APT avec la commande : # echo "deb http://ftp.fr.debian.org/debian/ stretch/backports main" > /etc/apt/backports.conf Puis on met a jour les dépots # apt update puis on installe Nginx # apt install -y -t stretch-backports nginx ==== Installation de OpenSSL depuis le dépot de Sury ==== OpenSSL 1.1.1 n'est pas dans les dépots officiel de Debian, mais dans le dépot d'un certain [[https://deb.sury.org/|Sury]] (Maintener de Debian depuis l'année 2000), au coté notamment de PHP 7.3 par exemple. Pour configurer son dépôt il faut commencer par installer apt-transport-https : # apt -y install apt-transport-https puis récupérer la clé publique du dépôt : # wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg ajouter le dépot : # echo "deb https://packages.sury.org/php/ stretch main" > /etc/apt/sources.list.d/php.list Mettre a jour les dépots et mettre a jour le système : # apt update && apt dist-upgrade -y ==== Configuration de Nginx ==== Il vous faudra configurer Nginx comme ceci afin d'activer le TLSv1.3 ainsi que les bonnes pratiques : ## # SSL Settings ## ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; ssl_ecdh_curve secp384r1:prime256v1; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA512:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-ECDSA-CHACHA20-POLY1305-D:ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-GCM-SHA384; ssl_session_timeout 10m; ssl_session_cache shared:SSL:9m; ssl_session_tickets off; ssl_stapling on; ssl_stapling_verify on; et pour finir redémarrer nginx # systemctl restart nginx