Соответствующая конфигурация:
ssl_protocols TLSv1.2;
Когда я тестирую сервер в SSL Labs тест сообщает, что TLS 1.3 доступен, и перечисляет шифры по умолчанию и другие результаты, как если бы TLSv1.3
были включены в мою конфигурацию.
Ubuntu Server 18.04.1, OpenSSL 1.1.1 11 сентября 2018 г., Nginx 1.14.1 построен с OpenSSL 1.1.0g
Как отключить TLSv1.3?
Nginx 1.14.1 собран с OpenSSL 1.1.0g
OpenSSL 1.1.0 не поддерживает TLS 1.3
Ubuntu Server 18.04.1, OpenSSL 1.1.1 11 сен 2018
Ubuntu 18.04.1 поставляется с OpenSSL 1.1.0g, а не с OpenSSL 1.1.1.
Я предполагаю, что вы каким-то образом установили OpenSSL 1.1.1 в своей системе, заменив версию, поставляемую с ОС. Поскольку nginx использует разделяемые библиотеки, он будет использовать установленный вами OpenSSL 1.1.1, даже если он был скомпилирован с OpenSSL 1.1.0g.
Параметр ssl_protocols TLSv1.2;
в nginx не реализуется путем включения только TLS 1.2. Вместо этого все полезные протоколы включены по умолчанию, и ограничение TLS 1.2 фактически означает, что все, кроме TLS 1.2, отключается. Но он может отключать только те протоколы, о которых он знает, и, учитывая, что nginx был скомпилирован с версией OpenSSL без поддержки TLS 1.3, он не знает, что TLS 1.3 существует, а также не имеет возможности отключить его, что означает, что он остается включенным.
Глядя на комментарий:
Очевидно, версия OpenSSL установлена поверх репозитория по умолчанию, потому что я использую sury.org PHP PPA.
Чтобы исправить это, вам также необходимо установить Sury. org репо-версия nginx. На момент написания эта версия nginx была построена с использованием openssl 1.1.1b и TLS 1.3, которые необходимы, если мы используем ondrej php7.3 lib, который заменяет пакет openssl ubuntu по умолчанию.
мне пришлось сделать то же самое, что и я. получение ошибки SSL ERR_SSL_VERSION_INTERFERENCE в chrome.
до:
sudo nginx -V
built with OpenSSL 1.1.0g 2 Nov 2017 (running with OpenSSL 1.1.1b 26 Feb 2019)
запустите следующее:
sudo add-apt-repository ppa:ondrej/nginx
sudo apt update
sudo apt remove nginx
sudo apt install nginx
после:
sudo nginx -V
built with OpenSSL 1.1.1 11 Sep 2018 (running with OpenSSL 1.1.1b 26 Feb 2019)
полные инструкции здесь:
https://www.linuxbabe.com/ubuntu/enable-tls -1-3-nginx-ubuntu-18-10-18-04-16-04-14-04