TLS v1.3 активен, несмотря на то, что он не включен в конфигурации Nginx

Соответствующая конфигурация:

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?

3
задан 23 November 2018 в 22:04
2 ответа

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 существует, а также не имеет возможности отключить его, что означает, что он остается включенным.

3
ответ дан 3 December 2019 в 05:59

Глядя на комментарий:

Очевидно, версия 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

1
ответ дан 3 December 2019 в 05:59

Теги

Похожие вопросы