Welcome! Log In Create A New Profile

Advanced

SSL Early Data поддерживает только первый worker?

January 28, 2020 10:20PM
Есть Nginx 1.17.8, собран со свежей BoringSSL stable.
Запущен на Linux kernel 5.4.10:

nginx version: nginx/1.17.8
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)
built with OpenSSL 1.1.0 (compatible; BoringSSL) (running with BoringSSL)
TLS SNI support enabled
configure arguments:
--prefix=/etc/nginx
--sbin-path=/usr/sbin/nginx
--conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log
--pid-path=/var/run/nginx.pid
--lock-path=/var/run/nginx.lock
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp
--user=nginx
--group=nginx
--with-compat
--with-file-aio
--with-threads
--with-http_addition_module
--with-http_dav_module
--with-http_flv_module
--with-http_gunzip_module
--with-http_gzip_static_module
--with-http_mp4_module
--with-http_realip_module
--with-http_secure_link_module
--with-http_slice_module
--with-http_ssl_module
--with-http_stub_status_module
--with-http_sub_module
--with-http_v2_module
--with-stream
--with-stream_realip_module
--with-stream_ssl_module
--with-stream_ssl_preread_module
--with-openssl=boringssl
--with-http_image_filter_module
--with-cc-opt='-O2
-g
-pipe
-Wall
-Wp,-D_FORTIFY_SOURCE=2
-fexceptions
-fstack-protector-strong
--param=ssp-buffer-size=4
-grecord-gcc-switches
-m64
-mtune=generic
-fPIC'
--with-ld-opt='-Wl,-z,relro
-Wl,-z,now
-pie'

SSL в Nginx'e настроен так:

ssl_dhparam /etc/pki/tls/private/dhparam2048.pem;
ssl_session_timeout 1h;
ssl_session_cache shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers kEECDH+ECDSA+AESGCM:kEECDH+AES128:kEECDH:kEDH:-3DES:kRSA+AES128:kEDH+3DES:DES-CBC3-SHA:!RC4:!aNULL:!eNULL:!MD5:!EXPORT:!LOW:!SEED:!CAMELLIA:!IDEA:!PSK:!SRP:!SSLv2;
ssl_prefer_server_ciphers on;
ssl_early_data on;

Проверяю, поддерживает ли он SSL early data:

docker run --rm -it nablac0d3/sslyze --early_data 1.2.3.4

Результат:

- Если в nginx'e настроен "worker_processes 1;", sslyze всегда возвращает "Suppported - Server accepted early data"
- Если воркеров больше одного, "Supported" начинает возвращаться не всегда. Чем больше воркеров - тем чаще возвращается "Not supported".

Т.е. выглядит так, будто SSL Early Data поддерживает только первый воркер.

Этому есть какое-то объяснение?

multi_accept и accept_mutex на ситуацию не влияют.
Subject Author Posted

SSL Early Data поддерживает только первый worker?

Ilya Evseev January 28, 2020 10:20PM

Re: SSL Early Data поддерживает только первый worker?

Sergey Kandaurov January 29, 2020 05:42AM

Re: SSL Early Data поддерживает только первый worker?

Maxim Dounin January 29, 2020 07:08AM

Re: SSL Early Data поддерживает только первый worker?

Sergey Kandaurov February 03, 2020 09:40AM

Re: SSL Early Data поддерживает только первый worker?

Maxim Dounin February 03, 2020 10:42AM

Re: SSL Early Data поддерживает только первый worker?

Илья Шипицин February 03, 2020 10:46AM

Re: SSL Early Data поддерживает только первый worker?

Maxim Dounin February 03, 2020 11:18AM

Re: SSL Early Data поддерживает только первый worker?

Илья Шипицин February 03, 2020 11:34AM

Re: SSL Early Data поддерживает только первый worker?

Maxim Dounin February 03, 2020 11:52AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 208
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready