Я выполнил все инструкции, но не могу показать TLS 1.3 на NGINX - PullRequest
0 голосов
/ 17 февраля 2019

Я пытаюсь включить TLS 1.3 на моем сервере.Я следил за обилием статей в Google и у меня были те же настройки конфигов в моем собственном конфиге, но я не могу получить его после TLS 1.2.

Я на Ubuntu 16.

Я используюNGINX версии 1.14, которая построена на OpenSSL 1.1.1.

➜ nginx -V
nginx version: nginx/1.14.2
built with OpenSSL 1.1.1  11 Sep 2018 (running with OpenSSL 1.1.1a  20 Nov 2018)
TLS SNI support enabled

Это все требуемые версии программного обеспечения, которые я видел, которые необходимы для поддержки TLS 1.3.

Яиспользуя Chrome 72 и SSL Labs при тестировании сертификата, но он всегда говорит, что он на 1.2.

Вот часть моего файла конфигурации NGINX, которая связана с параметрами SSL

ssl_protocols TLSv1.3 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
ssl_ecdh_curve X25519:secp256k1:secp384r1:prime256v1;
ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES25
ssl_session_timeout  10m;
ssl_session_cache shared:SSL:10m;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 216.146.35.35 216.146.36.36 valid=60s;
resolver_timeout 2s;

Iполучил шифры от https://cipherli.st.

С этими параметрами конфигурации я не могу пройти протокол TLS 1.2.

Я считаю, что это все, о чем я могу думать, что может вызвать у меня проблемы, ноЯ могу рассказать вам обо всем, что вам может понадобиться, чтобы помочь в моем деле.

Спасибо,

Крис

1 Ответ

0 голосов
/ 18 февраля 2019

Ваш ssl_protocols должен быть заказан как TLSv1.2 TLSv1.3.

Затем ваш ssl_ciphers должен сначала включать список TLSv1.3 шифров (в этом порядке):

TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
TLS_AES_128_GCM_SHA256
TLS_AES_128_CCM_8_SHA256
TLS_AES_128_CCM_SHA256

, за которыми следуют ваши шифры TLSv1.2.Вот как выглядит tls13.iachieve.it nginx.conf:

ssl_protocols       TLSv1.2 TLSv1.3;
ssl_ciphers         TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES_128_CCM_8_SHA256:TLS_AES_128_CCM_SHA256:ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;
ssl_prefer_server_ciphers on;

И подключение к нему с помощью Chrome 72:

enter image description here

И ответ с сайта:

Your User Agent is:  Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36
Your client supports the following ciphers:  0x2a2a:TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA:AES256-SHA:0x000a
The negotiated cipher with this server is:  TLS_AES_256_GCM_SHA384

Обратите внимание, что your client supports the following ciphers - это то, что поддерживает ваш веб-браузер, а не сервер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...