Apache-Httpd

如何在 Apache2 中啟用 TLSv1.3?

  • March 4, 2020

我正在執行 Apache2 版本:

Server version: Apache/2.4.29 (Ubuntu)
Server built:   2018-04-25T11:38:24

我想啟用 TLSv1.3,但如果我輸入文件,我會在 Apache2 中收到以下SSLProtocol TLSv1.2 TLSv1.3錯誤ssl.conf

# apachectl configtest

AH00526: Syntax error on line 79 of /etc/apache2/mods-enabled/ssl.conf:
SSLProtocol: Illegal protocol 'TLSv1.3'
Action 'configtest' failed.
The Apache error log may have more information.

是否可以在 Apache2 中啟用 TLSv1.3(還)?

我知道 Nginx 可以做到,但這個問題針對的是 Apache2。

Debian Buster = 支持 TLSv1.3

在 Debian Buster(目前正在測試中)中,已經支持 TLSv1.3。

以下資訊的日期為:

# date -I

2019-02-24


Apache2版本:

# apache2 -v

伺服器版本:Apache/ 2.4.38 (Debian)

伺服器建構時間: 2019-01-31 T20:54:05


在哪裡啟用

全球範圍內:

/etc/apache2/mods-enabled/ssl.conf

本地:

您的虛擬主機位於:

/etc/apache2/sites-enabled/

如何啟用

迄今為止,TLSv1.1 最終已被棄用。因此,您只需要 TLSv1.2 和 TLSv1.3。

為此,請將此行放入上述文件中:

SSLProtocol -all +TLSv1.3 +TLSv1.2

密碼套件

密碼套件現在分為 2 類,即SSL(低於 TLSv1.3)和TLSv1.3,您可能想使用自己的一組密碼,僅以此為例:

SSLCipherSuite    TLSv1.3   TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256
SSLCipherSuite    SSL       ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256

曲線

最後的一個重要說明:

您可以/應該啟用一條新曲線:X25519

例如,您可以這樣做,再次僅作為範例:

SSLOpenSSLConfCmd Curves X25519:secp521r1:secp384r1:prime256v1

SSLLabs 上的範例域測試

實驗性:此伺服器支持 TLS 1.3 (RFC 8446)。

啟用 TLSv1.3

使用 OpenSSL 1.1.1 Source的 Apache2 版本 2.4.36 現在支持 TLSv1.3 。

引用自:https://unix.stackexchange.com/questions/443341