在 Apache 中启用 TLS1.3

Enabling TLS1.3 in Apache

自从 2018 年 9 月 11 日发布的 OpenSSL 1.1.1 支持 TLS1.3,我想知道我是否可以让我的 Apache2 服务器支持它,以便我的访问者可以从改进的安全性和速度中受益。

我知道有几种方法可以做到这一点:

  1. Apache 的 backport 有它,但是 运行 这种非官方的 frankenware 不是潜在的不安全吗?我好像也找不到。

  2. 等Apache2版本出来支持了再从源码编译安装。不幸的是,我找不到关于它何时发布或它是否已经存在以及我应该下载哪个版本的信息。

  3. 调整 Apache2 的配置以使用其他 openssl 库(单独安装并从源代码编译)。在这里,我似乎再次找不到有关如何完成此操作的说明。

我预计这个问题在不久的将来会经常出现,所以我希望为所有打算支持 TLS1.3 的人征求详尽的答案。

PS 我也不确定 Apache2 是否使用已安装的 OpenSSL 库,或者它是否编译了自己的模块(与 PHP 的方式很相似)?

从 Apache 版本 2.4.36(当前版本为 2.4.37)开始,添加了对 TLS1.3 的支持。结合 OpenSSL 1.1.1,您可以在更新两者后随时启用对它的支持。在您的 SSL.conf 中,您应该做一些小的调整。

SSLProtocol -all +TLSv1.2 +TLSv1.3 #You don't have to explicitly enable it, but this can be considered secure SSLCipherSuite EECDH+AES256-GCM:EDH+AES256-GCM:AES256+EECDH:AES256+EDH:!AES128 #these secure suites are used up to TLS1.2 SSLCipherSuite TLSv1.3 TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384 #these suites are used for TLS1.3 only

如果您不想为 TLS1.3 指定套件,默认的 3 个套件

  • TLS_AES_256_GCM_SHA384
  • TLS_CHACHA20_POLY1305_SHA256
  • TLS_AES_128_GCM_SHA256

已使用(按此顺序)。我更改了我的配置,因为我想摆脱所有 AES128 套件。 如果您对默认设置没问题,那么基本上升级 Apache 和 OpenSSL 就足以让您入门。 Qualys SSL Test 应确认是否启用 TLS1.3 等