Amazon EC2 インスタンスとロードバランサーに同じ SSL 証明書を使用する方法を教えてください。

最終更新日: 2020 年 11 月 18 日

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスとロードバランサー間の SSL 接続を有効にしたいと考えています。

簡単な説明

Amazon が発行する証明書を EC2 インスタンスにインストールすることはできません。エンドツーエンドの暗号化を有効にするには、サードパーティの SSL 証明書を使用する必要があります。

解決方法

EC2 インスタンスにサードパーティーの証明書をインストールします。次に、AWS Certificate Manager (ACM) にインポートして、サードパーティーの証明書をロードバランサーに関連付けます。

Apache ウェブサーバー

1.    SSH を使用した Linux インスタンスへの接続の手順に従います。

2.    以下のように、Apache サーバーの mod_ssl モジュールをインストールします。

$ sudo yum install mod_ssl -y

3.    /etc ディレクトリに certs という名前のディレクトリを作成します。次に、サードパーティーの証明書ファイルをそのディレクトリにコピーします。サードパーティーの証明書ファイルのパスは次のとおりです。

SSL Certificate - /etc/certs/your_domain.crt Private Key file - /etc/certs/private-key.key Certificate chain - /etc/certs/chain.crt

注: この例では、/etc ディレクトリを使用しています。任意のディレクトリを使用してください。

4.    ルート所有者のアクセス許可をサードパーティーの証明書ファイルに割り当てます。

$ sudo chmod 600 /etc/certs/your_domain.crt

$ sudo chmod 600 /etc/certs/private-key.key

$ sudo chmod 600 /etc/certs/chain.crt

$ sudo chown root.root /etc/certs/your_domain.crt

$ sudo chown root.root /etc/certs/private-key.key

$ sudo chown root.root /etc/certs/chain.crt

5.    お好みのテキストエディタを使用して、サードパーティーの証明書ファイルを /etc/httpd/conf.d/ssl.conf ファイルに追加します。 サードパーティーの証明書ファイルのパスは次のとおりです。

SSL Certificate - /etc/certs/your_domain.crt Private Key file - /etc/certs/private-key.key Certificate chain - /etc/certs/chain.crt

6.    .conf ファイルを保存し、次のコマンドを使用して http サービスを再起動します。

$ sudo service httpd restart

サードパーティーの証明書が、Amazon EC2 インスタンスで実行中の Apache ウェブサーバーに正常にインストールされています。

IIS ウェブサーバー (Windows Server 2012-R2)

1.    手順に従って、リモートデスクトッププロトコル (RDP) を使用して Windows インスタンスに接続します

2.    [Start] をクリックし、[mmc] と入力して [OK] をクリックします。

3.    [File]、[Add/Remove Snap-ins]、[Certificates]、[Computer account]、[Next]、[Local computer]、[Finish] の順に選択し、[OK] をクリックします。

4.    MMC コンソールで [Certificates] を展開し、[Trusted Root Certificate Authorities]、[Certificates]、[Action]、[All tasks]、[Import]、[Next] の順に選択して、[Browse] をクリックします。

5.    証明書で [Root]、[Open]、[Next] の順に選択し、[Finish] をクリックします。

6.    MMC コンソールで [Intermediate Certification Authorities] を展開し、Intermediate の証明書に対してステップ 4 ~ 5 を繰り返します。

7.    MMC コンソールウィンドウを閉じてから、[No] をクリックしてコンソール設定を破棄します。

8.    サーバーマネージャーを開き、[Tools]、[Internet Information Services (IIS) Manager] の順に選択します。

9.    [Connections] で証明書をインストールする Windows サーバー名を選択します。

10.    [Server Certificates] を開きます。

11.    [Actions] で [Import]、[certificate] の順に選択し、[Open] をクリックします。

12.    [Password] に証明書のパスワードを入力し、[OK] をクリックします。

13.    [Connections]で [Sites] を展開し、証明書をインストールするウェブサイト名を選択します。

14.    [Actions] で [Bindings] を選択し、[Add] をクリックします。

15.    [Type] ドロップダウンメニューで [https] を選択します。

16.    [IP address] にウェブサイトの IP アドレスを入力するか、[All Unassigned] のままにします。

17.    [SSL certificate] で [Select] を選択し、証明書を選択してから [OK] をクリックします。

18.    [Manage Website] で [Restart] を選択します。

IIS ウェブサーバーを再起動すると、サードパーティーの証明書が Amazon EC2 インスタンスに正常にインストールされます。

Amazon EC2 インスタンスに証明書をインストールしたら、AWS Certificate Manager への証明書のインポートの手順に従います。次に、手順に従って ACM SSL/TLS 証明書を Classic Load Balancer、Application Load Balancer、または Network Load Balancer に関連付けます