Amazon Lightsail インスタンスで TLS 1.0 または TLS 1.1 を無効にするにはどうすればよいですか?
簡単な説明
TLS 1.2 以前の SSL/TLS プロトコルのすべてのバージョンの更新はなくなり、安全でないと考えられています。ほとんどのウェブサーバーでは、このような TLS バージョンがデフォルトで有効になっています。このようなプロトコルを無効にするには、ウェブサーバー設定ファイルの SSLProtocol ディレクティブを変更します。以下の解決策は、Apache および NGINX ウェブサーバー用の Lightsail インスタンスでこれらの非更新の TLS バージョンを無効にする方法です。
注: ウェブサイトで Amazon Lightsail ロードバランサーを使用している場合は、ロードバランサーの TLS バージョン 1.0 および 1.1 も無効にする必要があります。ただし、Lightsail ロードバランサーの TLS バージョンの無効化は現在サポートされていません。このような TLS バージョンを無効にし、Lightsail ロードバランサーも使用するには、Lightsail ロードバランサーの代わりに Amazon Application Load Balancer を使用します。
解決方法
注: この記事で説明するファイルパスは、以下によって変わる場合があります。
- インスタンスには 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 ウェブサービス
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
注: TLSv1.3 は、サーバーに OpenSSL バージョン 1.1.1 がある場合にのみ使用してください。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_protocols TLSv1.2 TLSv1.3;
注: TLSv1.3 は、サーバーに OpenSSL バージョン 1.1.1 がある場合にのみ使用してください。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 などの Linux ディストリビューションの場合
sudo vi /etc/apache2/mods-enabled/ssl.conf
2. 設定ファイルで、SSLProtocol ディレクティブを変更して、使用する TLS バージョンを反映します。次の例では、TLS バージョンは 1.2 と 1.3 です。
SSLProtocol +TLSv1.2 +TLSv1.3
注: TLSv1.3 は、サーバーに OpenSSL バージョン 1.1.1 がある場合にのみ使用してください。openssl version コマンドを実行すると、バージョンを確認できます。
3. esc キーを押してファイルを保存し、「:wq!」と入力して Enter キーを押します。
4. 次のように、Apache サービスを再起動します。
Amazon Linux 2 や CentOS などの Linux ディストリビューションの場合
sudo systemctl restart httpd
Ubuntu や Debian などの Linux ディストリビューションの場合
sudo systemctl restart apache2
NGINX ウェブサービス
1. 次のように、設定ファイルを開きます。
sudo vi /etc/nginx/nginx.conf
2. 設定ファイルで、SSLProtocol ディレクティブを変更して、使用する TLS バージョンを反映します。次の例では、TLS バージョンは 1.2 と 1.3 です。
ssl_protocols TLSv1.2 TLSv1.3;
注: TLSv1.3 は、サーバーに OpenSSL バージョン 1.1.1 がある場合にのみ使用してください。openssl version コマンドを実行すると、バージョンを確認できます。
3. esc キーを押してファイルを保存し、「:wq!」と入力して Enter キーを押します。
4. 次のように、Apache サービスを再起動します。
sudo systemctl restart nginx