docker TLSv1 上的 Nginx 1.25.3 无法正常工作

docker TLSv1 上的 Nginx 1.25.3 无法正常工作

我在docker上有nginx 1.25.3,不是Alpine版本。底层操作系统是Ubuntu 22。

当 TLS 1 协议配置如下时:

ssl_protocols             TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;

TLSv1 不起作用。

如果在同一操作系统上使用 Openresty(最新版本),TLSv1 可以正常运行。

由此,我的猜测这不是操作系统的问题,而是docker本身的问题。

Openresty 使用OpenSSL 1.1.1,以及最新的 Nginx 使用OpenSSL 3.0.9

在网上查找后,找到了几个解决办法:

A.编辑/etc/ssl/openssl.cnf并添加:

[openssl_init]
 providers = provider_sect
+ssl_conf = ssl_sect
+
+[ssl_sect]
+system_default = system_default_sect
+
+[system_default_sect]
+CipherString = DEFAULT@SECLEVEL=0

B. 将其添加ssl_ciphers DEFAULT@SECLEVEL=0;到 nginx conf。

我尝试了这两种方法。我/etc/ssl/openssl.cnf在 docker 内部和外部都进行了编辑,还尝试了 B 选项,但都没有用。

我在其他地方看到 Alpine 版本无法在 TLSv1 支持中编译,因此我从 Alpine 版本切换到常规版本nginx:1.25.3,但仍然没有任何效果(包括我在其中和外部尝试上述操作之后)。

我该如何让它工作?是否有与此兼容的常规 Nginx 的特定版本?我需要做一些不同的事情才能让它工作吗?

相关内容