Nginx

TLS1.3 不適用於帶有 OpenSSL 1.1.1-pre9 的 nginx 1.15.2

  • February 3, 2019

儘管在我的配置文件中啟用了最新的 nginx 和 OpenSSL,但在我的伺服器(www.baldeonline.com 供參考)上並沒有產生 TLS1.3。此外,我的 nginx 實例是在安裝 OpenSSL 1.1.1-pre9 的情況下編譯的。

$ nginx -V返回:

nginx version: nginx/1.15.2
built by gcc 6.3.0 20170516 (Debian 6.3.0-18+deb9u1)
built with OpenSSL 1.1.1-pre9 (beta) 21 Aug 2018

到目前為止,我看到的大多數教程都包括 CloudFlare,所以我懷疑它在這種情況下作為伺服器和 CloudFlare 之間的 TLS1.2 以及 CloudFlare 和客戶端之間的 TLS1.3 工作,儘管我沒有具體的建議。

編輯

正如帕特里克所說,執行命令:

$ openssl s_client -connect www.baldeonline.com:443

表明啟用了 TLS1.3。當 TLS1.3 更新為完全支持最終的 TLS1.3(2018 年 8 月 15 日)標準時,它們應該可以與瀏覽器一起使用,而不僅僅是標準草案。

對於那些感興趣的人:

https://wiki.openssl.org/index.php/TLS1.3#Current_status_of_the_TLSv1.3_standard

儘管最新的 1.1.1 版本支持最終標準版本,但其他支持 TLSv1.3 的應用程序可能仍在使用較舊的草稿版本。這是互操作性問題的常見來源。如果支持不同 TLSv1.3 草案版本的兩個對等方嘗試通信,那麼它們將回退到 TLSv1.2。

TLDR:如果您希望 TLS1.3現在**與草案 28 一起使用,請使用 OpenSSL 1.1.1-pre8 https://fearby.com/article/enabling-tls-1-3-ssl-on-a-nginx-website-on -an-ubuntu-16-04-server-that-is-using-cloudflare/ 跳到“更新 Open SSL 的時間”並使用https://www.openssl.org/source/openssl-1.1.1-pre8。 tar.gz代替 git 複製。

在 OpenSSL 1.1.1-pre9 中,除 TLS1.3 最終版本外的所有草案支持均已刪除。但是,瀏覽器僅支持草稿版本。

引用自:https://serverfault.com/questions/927601