如何在 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 堆疊,而該 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.    開啟下列組態檔案:
適用於 Amazon Linux 2 和 CentOS 等 Linux 發行版

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

適用於 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 服務:

適用於 Amazon Linux 2 和 CentOS 等 Linux 發行版

sudo systemctl restart httpd

適用於 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

此文章是否有幫助?


您是否需要帳單或技術支援?