如何在 Lightsail 实例中关闭 TLS 1.0 或 TLS 1.1?

上次更新日期:2021 年 10 月 22 日

如何在 Amazon Lightsail 实例中关闭 TLS 1.0 或 TLS 1.1?

简短描述

TLS 1.2 之前的所有 SSL/TLS 协议版本已被弃用,且被视为不安全。默认情况下,大多数 Web 服务器仍启用这些 TLS 版本。您可以通过修改 Web 服务器配置文件中的 SSLProtocol 指令来关闭这些协议。以下解决方案涵盖在用于 Apache 和 NGINX Web 服务器的 Lightsail 实例中关闭这些被弃用的 TLS 版本。

注意:如果您在网站上使用 Amazon Lightsail 负载均衡器,还必须在负载均衡器中禁用 TLS 版本 1.0 和 1.1。但是,目前不支持在 Lightsail 负载均衡器中禁用 TLS 版本。要禁用这些 TLS 版本并使用 Lightsail 负载均衡器,请使用 Amazon Application Load Balancer 而不是 Lightsail 负载均衡器。

解决方法

注意:本文中提到的文件路径可能会发生变化,具体取决于以下因素:

  • 实例有一个 Bitnami 堆栈,Bitnami 堆栈使用原生的 Linux 系统软件包(方法 A)。
  • 实例有一个 Bitnami 堆栈,它是一个自包含的安装(方法 B)。

如果您使用的是带有 Bitnami 堆栈的 Lightsail 实例,请运行以下命令来识别您的 Bitnami 安装类型:

test ! -f "/opt/bitnami/common/bin/openssl" && echo "Approach A: Using system packages." || echo "Approach B: Self-contained installation."

带有 Bitnami 堆栈的 Lightsail 实例

Apache Web 服务器

1.    打开配置文件:

位于方法 A 之下的 Bitnami 堆栈

sudo vi /opt/bitnami/apache2/conf/bitnami/bitnami-ssl.conf

位于方法 B 之下的 Bitnami 堆栈

sudo vi /opt/bitnami/apache2/conf/bitnami/bitnami.conf

2.    在配置文件中,修改 SSLProtocol 指令以反映要使用的 TLS 版本。在以下示例中,TLS 版本为 1.2 和 1.3。

SSLProtocol +TLSv1.2 +TLSv1.3

注意:仅在服务器中有 OpenSSL 版本 1.1.1 时才使用 TLSv1.3。您可以通过运行命令 openssl version 来验证版本。

3.    按 esc 键保存文件,键入 :wq!,然后按 Enter 键。

4.    重启 Apache 服务:

sudo /opt/bitnami/ctlscript.sh restart apache

Nginx 网络服务

1.    打开配置文件:

sudo vi /opt/bitnami/nginx/conf/nginx.conf

2.    在配置文件中,修改 SSLProtocol 指令以反映要使用的 TLS 版本。在以下示例中,TLS 版本为 1.2 和 1.3。

ssl_protocol TLSv1.2 TLSv1.3;

注意:仅在服务器中有 OpenSSL 版本 1.1.1 时才使用 TLSv1.3。您可以通过运行命令 openssl version 来验证版本。

3.    按 esc 键保存文件,键入 :wq!,然后按 Enter 键。

4.    重启 Apache 服务:

sudo /opt/bitnami/ctlscript.sh restart nginx

不带 Bitnami 堆栈的 Lightsail 实例

Apache 网络服务

1.    打开配置文件:
Linux 发行版本,例如 Amazon Linux 2 和 CentOS

sudo vi /etc/httpd/conf.d/ssl.conf

Linux 发行版本,例如 Ubuntu 和 Debian

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

2.    在配置文件中,修改 SSLProtocol 指令以反映要使用的 TLS 版本。在以下示例中,TLS 版本为 1.2 和 1.3。

SSLProtocol +TLSv1.2 +TLSv1.3

注意:仅在服务器中有 OpenSSL 版本 1.1.1 时才使用 TLSv1.3。您可以通过运行命令 openssl version 来验证版本。

3.    按 esc 键保存文件,键入 :wq!,然后按 Enter 键。

4.    重启 Apache 服务:

Linux 发行版本,例如 Amazon Linux 2 和 CentOS

sudo systemctl restart httpd

Linux 发行版本,例如 Ubuntu 和 Debian

sudo systemctl restart apache2

NGINX 网络服务

1.    打开配置文件:

sudo vi /etc/nginx/nginx.conf

2.    在配置文件中,修改 SSLProtocol 指令以反映要使用的 TLS 版本。在以下示例中,TLS 版本为 1.2 和 1.3。

ssl_protocol TLSv1.2 TLSv1.3;

注意:仅在服务器中有 OpenSSL 版本 1.1.1 时才使用 TLSv1.3。您可以通过运行命令 openssl version 来验证版本。

3.    按 esc 键保存文件,键入 :wq!,然后按 Enter 键。

4.    重启 Apache 服务:

sudo systemctl restart nginx

这篇文章对您有帮助吗?


您是否需要账单或技术支持?