1. 程式人生 > >在阿里雲的nginx上啟用TLS 1.3

在阿里雲的nginx上啟用TLS 1.3

自Nginx 1.13以來,已為TLSv1.3添加了支援,TLSv1.3是TLS協議的最新版本。根據您閱讀本文的時間,您可能正在執行舊版本的Nginx,目前還不支援TLS 1.3。在這種情況下,請考慮在容器中執行Nginx以獲取最新版本,或者從原始碼編譯Nginx。

在Nginx中啟用TLSv1.3 我假設你已經有了一個有效的TLS配置。它將包括像這樣的配置;

… ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256; ssl_prefer_server_ciphers on; ssl_ecdh_curve secp384r1; … 還有更多引數。

要啟用TLS 1.3,請新增TLSv1.3到ssl_protocols列表中。

ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; 並重新載入您的Nginx配置。

測試您的Nginx版本是否支援TLS 1.3 如上所示新增配置,並嘗試在除錯模式下執行Nginx。

$ nginx -t nginx:[emerg] /etc/nginx/conf.d/ma.ttias.be.conf:34中的無效值“TLSv1.3” nginx:配置檔案/etc/nginx/nginx.conf測試失敗 如果您看到上面的訊息,則您的Nginx版本不支援TLS 1.3。一個工作配置會告訴你這個;

$ nginx -t nginx:配置檔案/etc/nginx/nginx.conf語法沒問題 nginx:配置檔案/etc/nginx/nginx.conf測試成功 如果您沒有看到任何錯誤,您的Nginx版本支援TLS 1.3。

進一步要求 現在您已經告訴Nginx使用TLS 1.3,它將在可用的情況下使用TLS 1.3,但是……沒有很多庫提供TLS 1.3。

例如,OpenSSL仍然在討論TLS 1.3的實現,這似乎是合理的,因為據我所知,TLS 1.3規範還不是最終的。儘管如此,最新的OpenSSL版本中還包含TLS 1.3支援,但似乎沒有一個理智的人線上實際使用它。

如果您使用“enable-tls1_3”“配置”,則TLSv1.3 draft-19支援為master。請注意,draft-19與draft-18不相容,而draft-18仍然被其他一些庫使用。我們的18號草案版本在tls1.3-draft-18分支中。 OpenSSL中支援TLS 1.3

簡而言之; 是的,您可以在Nginx中啟用TLS 1.3,但我還沒有找到允許我實際使用 TLS 1.3 的作業系統和庫。 轉自:阿里雲優惠券