目前在 redhat 7.7 生产网络服务器上运行 NGINX,我想我知道答案,但我想仔细检查一下。问题是我正在尝试让 TLS1.3 正常工作。
以下是我的会议的一部分。
ssl_prefer_server_ciphers on;
ssl_ciphers EECDH+AESGCM:EDH+AESGCM;
ssl_ecdh_curve secp384r1;
我的 NGINX 版本是nginx -V
nginx version: nginx/1.16.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
如果我们注意到第三行,我们就会看到built with OpenSSL 1.0.2k-fips 26 Jan 2017
。我开始相信这就是问题所在。
根据 yum 我安装了最新版本的 openssl 。
所以看来我需要有 openssl 1.1.1d -最新版本-(2019 年 9 月 10 日;5 个月前)并从源代码重新编译 openssl 和 NGINX。
他们有什么办法可以做到这一点,而无需从标准 Redhat yum 存储库重新编译吗?有人知道“openssl 1.1.1”和使用 openssl 1.1.1 编译的 NGINX 版本何时将被放入标准 Redhat Repo 中吗?
答案1
除非其他人已经为您完成了此操作,否则要在 RHEL 7 中运行它需要重新编译openssl
和 ,nginx
正如您提到的那样。
你可以使用官方 Nginx Docker 容器如果我记得的话,它已经为 TLS 1.3 构建了一段时间了。
答案2
打包安装可通过NGINX-MOD(然而,这是一个订阅软件)。
它是一个稳定的 NGINX 软件包,使用最新的 OpenSSL 和一堆 Cloudflare 性能补丁进行编译。
您还可以从同一存储库安装 ModSecurity 模块、Brotli 模块和 30 多个动态模块。每个模块都有自己的包,并定期更新。