如何在 Apache 和 Nginx 中启用 TLS 1.3?
简介
随着网络攻击的增多,保护网站和服务器的安全变得比以往任何时候都更加重要。传输层安全性 (TLS) 是网站安全最重要的组成部分之一,它用于加密在 Web 服务器和客户端之间发送的数据。TLS 1.3 是最新版本的 TLS,与之前的版本相比,它提供了增强的安全性、更快的连接速度和更佳的性能。
在 Apache 和 Nginx 等 Web 服务器中启用 TLS 1.3 的重要性
Web 服务器负责处理敏感信息,例如登录凭据或通过其托管网站上的表单提交的个人数据。在 Web 服务器上启用最新版本的 TLS 有助于保护这些信息在传输过程中不被拦截或篡改。 Apache 和 Nginx 是两款流行的开源 Web 服务器软件包,全球数百万用户在 Ubuntu 或 CentOS 等 Linux 操作系统上托管网站。
启用对最新 SSL/TLS 协议的支持(例如这些软件包)将有助于提高安全级别,因为用户在通过 HTTPS 协议访问托管内容时,只能使用最新的加密套件进行通信。本文将引导您完成在 Apache 和 Nginx 上启用 TLS 1.3 的具体步骤,以确保您的 Web 服务器使用当今最新、最好的加密协议。
在 Apache 中启用 TLS 1.3
检查 Apache 版本是否与 TLS 1.3 兼容
在 Apache 中启用 TLS 1.3 之前,务必检查当前版本的 Apache 是否支持 TLS 1.3。从 Apache HTTP 服务器 2.4.36 版本开始,它默认内置了对 TLS 1.3 的支持,这意味着您无需安装任何其他模块或补丁即可启用它。要检查您当前的 Apache HTTP 服务器版本,请打开终端并运行以下命令 -
apache2ctl -v
如果输出显示 Apache HTTP 服务器的版本低于 2.4.36,则您需要先升级服务器才能启用 TLS 1.3。
更新 OpenSSL 以支持 TLS 1.3
验证您的 Apache HTTP 服务器版本支持 TLS 1.3 后,下一步是更新 OpenSSL 以支持它。OpenSSL 是 SSL 和 TLS 协议的开源实现,被许多 Web 服务器(包括 Apache 和 Nginx)使用。
要在 Ubuntu 或基于 Debian 的系统上安装并启用支持 TLS 1.3 的 OpenSSL,请运行以下命令 -
sudo apt-get update sudo apt-get install -y libssl-dev openssl cd /usr/local/src/ sudo wget https://www.openssl.org/source/openssl-1.X.Y.tar.gz sudo tar xzf openssl-1.X.Y.tar.gz && cd openssl-1.X.Y sudo ./config && make && make test && sudo make install_sw
请确保将"X"和"Y"替换为您要安装的 OpenSSL 的相应版本。
配置 Apache 以启用 TLS 1.3
安装并启用支持 TLS 1.3 的 OpenSSL 后,下一步是配置 Apache HTTP 服务器以使用它。要在 Apache 中启用 TLS 1.3,您需要在 SSL 配置文件中添加以下代码行 -
SSLProtocol TLSv1.3 SSLCipherSuite TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
您可以根据系统情况,在"/etc/apache2/mods-enabled/ssl.conf"或"/etc/httpd/conf.d/ssl.conf"中找到 SSL 配置文件。
使用 SSL Labs 或其他工具测试配置
在配置支持 TLS 1.3 的 Apache HTTP 服务器后,务必使用 SSL Labs 等在线工具测试连接。SSL Labs 提供了一个免费的在线工具,可以检查 Web 服务器中的潜在漏洞,并根据其安全级别对其进行排名。
您可以使用此工具验证您的 Apache HTTP 服务器是否支持 TLS 1.3,以及启用该协议是否存在安全风险。在 Apache HTTP 服务器上启用 TLS 1.3 可以为用户的数据传输提供更快的连接速度和更强大的加密协议,从而提高您网站的安全性。
在 Nginx 中启用 TLS 1.3
检查 Nginx 版本是否与 TLS 1.3 兼容
在 Nginx 中启用 TLS 1.3 之前,务必检查您的 Nginx 服务器是否与 TLS 1.3 协议兼容。要启用 TLS 1.3,您需要在服务器上安装至少 1.13.0 版本的 Nginx,因为这是第一个支持 TLS 1.3 协议的版本。要检查 Nginx 服务器的版本,请在终端中使用以下命令 -
nginx -v
这将显示您安装的 Nginx 服务器的当前版本。
更新 OpenSSL 以支持 TLS 1.3
要在 Nginx 服务器上启用 TLS 1.3,您还需要更新系统上的 OpenSSL,因为它为 SSL/TLS 协议提供加密支持。首先,使用此命令检查您的系统上是否已安装 OpenSSL -
openssl version -a
如果返回结果,则表示 OpenSSL 及其当前版本已安装在您的系统中。要将 OpenSSL 升级到支持 TLS 1.3 的最新稳定版本,您可以使用任何相关的软件包管理器,例如 apt 或 yum,具体取决于您使用的 Linux 发行版。
使用 ssl_protocols 指令配置 Nginx 以启用 TLS 1.3
更新 SSL 并确认一切正常后,现在就可以配置您的 nginx 服务器以启用 TLSv1.2 和/或 vTLSv1 了。配置过程非常简单——我们只需要一行"ssl_protocols",我们会将其添加到我们的 nginx 配置文件中。
此文件的位置可能因您的系统而异。默认情况下,它应该位于"/etc/nginx/nginx.conf",但也可以在"/usr/local/etc/nginx"或"/usr/local/nginx/conf"中找到。
首先,使用任意文本编辑器打开配置文件。然后在"http"块中添加以下行:
ssl_protocols TLSv1.3;
这将为您的 Nginx 服务器启用 TLS 1.3。
使用 SSL Labs 或其他工具测试配置
在您的 Nginx 服务器上配置并启用 TLS 1.3 后,必须测试设置是否按预期工作。您可以使用多种工具来测试您的 SSL/TLS 配置,例如 Qualys SSL Labs、High-Tech Bridge 的 SSL/TLS 安全扫描器或 ImmuniWeb 的 SSL 服务器测试。
ImmuniWeb 的 SSL 服务器测试是最全面的在线 SSL/TLS 配置测试工具之一,它能够提供详细的报告,展示您的服务器在不同安全标准和协议下的运行情况。要使用此工具测试您的 Nginx 服务器,只需访问他们的网站并在提供的字段中输入您的域名即可。
完成后,点击"开始测试"启动扫描过程。成功完成后,您将收到一份详细的报告,其中显示所有配置是否正确,以及是否检测到任何需要修复的漏洞。
结论
在 Nginx 中启用 TLS 1.3 是一个简单的过程,只需将 OpenSSL 更新到最新版本,然后使用 nginx 配置文件中的 ssl_protocol 指令将 nginx 配置为通过 TLSv1.3 协议接收流量即可。启用 TLSv1.3 涉及多个步骤,例如检查 Nginx 与此版本协议的兼容性、更新 OpenSSL 库、配置 ssl_protocol 指令等。启用 TLSv1.3 后,您应该对 SSL/TLS 配置进行全面测试,以确保网站访问者的最大安全。
相关文章
有用资源
linux 参考教程 - 该教程包含有关 linux 的更多信息:https://www.cainiaomax.com/linux/

