On 06.07.2020 22:17, Maxim Dounin wrote:

On 29.06.2020 17:07, Maxim Dounin wrote:

Соответственно для включения TLSv1.3 по умолчанию надо решить две
проблемы:

1. Сделать решение, которое бы позволило реализовать ту же
семантику "отазаться общаться, не предъявляя сертификата" в
условиях наличия TLSv1.3.

2. Придумать решение для существующих конфигураций с "ssl_ciphers
aNULL; return 444;".

Эти две проблемы выглядят как в принципе не решаемые
в условиях наличия включенного протокола TLSv1.3.

Как минимум первая из этих проблем легко решается возвратом ошибки
из ngx_http_ssl_servername().  Основной вопрос - что делать со
второй.  И вот тут не совсем понятно, существует ли хорошее
решение, внешнее по отношению к SSL-библиотеке.

Первая проблема теперь уже полностью решена,
с появлением директивы ssl_reject_handshake
http://hg.nginx.org/nginx/rev/59e1c73fe02b

Для существующих конфигураций с "ssl_ciphers aNULL;" можно выдавать
deprecation warning во время проверки конфига и предлагать поменять
этот хак с "ssl_ciphers aNULL;" на директиву ssl_reject_handshake.

в TLSv1.3 не настраиваются шифры

Кстати, да. Что-то директива ssl_conf_command
http://hg.nginx.org/nginx/rev/3bff3f397c05
не работает таким образом, как ожидалось.

В файле nginx.conf прописано:

ssl_conf_command Ciphersuites TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384;

При этом сайт ssllabs.com показывает,
что включенным остается также и шифр TLS_AES_128_CCM_SHA256

Операционная система CentOS 8,
в файле /etc/crypto-policies/back-ends/opensslcnf.config
есть такая строчка:

Ciphersuites = TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES_128_CCM_SHA256

То есть, получается, что не смотря на то, что указано в директиве
ssl_conf_command - настройки из файла /etc/crypto-policies/back-ends/opensslcnf.config
имеют более высокий приоритет и перекрывают настройки
из директивы ssl_conf_command - это так и должно быть?

Или можно каким-то образом настройки из файла
/etc/crypto-policies/back-ends/opensslcnf.config
обойти и сделать так, чтобы nginx мог выключить шифр
TLS_AES_128_CCM_SHA256 не редактируя opensslcnf.config?

--
Best regards,
 Gena

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить