尝试在Nginx(1.15.8)中使用TLS 1.3证书时,我发现官方的Nginx是使用openssl 1.1.0构建的,而对于TLS 1.3,则需要openssl 1.1.1。
为了解决这个问题,我从源代码构建了自己的openssl 1.1.1,然后从源代码构建了nginx(使用我刚刚构建的openssl)。它运作完美。 但是-我没有找到内置此支持的任何正式Nginx发行版。在Debian或任何其他Linux中。
有人尝试过这种方法并找到了官方的,预先构建的解决方案吗?
编辑:我在https://github.com/eldada/nginx-tls13-docker中基于Docker的解决方案。
答案 0 :(得分:3)
在撰写本文时,存在三个具有OpenSSL 1.1.1和NGINX 1.15的发行版:Ubuntu 18.10(不是LTS版本),FreeBSD 12.0和Alpine 3.9。 / p>
已计划将18.04(这是LTS版本)迁移到OpenSSL 1.1.1,但是当前存在一个跟踪其包含的开放错误:https://bugs.launchpad.net/ubuntu/+source/openssl/+bug/1797386不幸的是,OpenSSL 1.1.1并未安装在Ubuntu 18.04中。 2已发布。
答案 1 :(得分:0)
我发现Nginx使用与目标发行版中相同的openssl来构建和发布其二进制文件。
nginx存储库中的软件包使用OpenSSL编译为 特定操作系统默认情况下出厂。因此,Debian上的Nginx 9是使用OpenSSL 1.1.0f编译的。
OpenSSL 1.1.1当前在Ubuntu 18.10中可用,并且 可以从nginx.org获得相应的nginx软件包 使用OpenSSL 1.1.1。