Classic Load Balancer へのクライアント SSL/TLS 接続が失敗し、「untrusted certificate」というエラーメッセージが表示されます。また、SSL/TLS 証明書を Classic Load Balancer にアップロードしようとするとエラーが発生します。
簡単な説明
Classic Load Balancer へのクライアント SSL/TLS 接続が失敗すると、次のようなエラーメッセージが表示されることがあります。
- 「The security certificate presented by this website was not issued by a trusted certificate authority.」
- 「example.com uses an invalid security certificate.The certificate is not trusted because the issuer certificate is unknown.」
- 「example.com uses an invalid security certificate.The certificate is not trusted because it is self signed.」
Classic Load Balancer に HTTPS/SSL listeners を使用する場合は、SSL 証明書をインストールする必要があります。SSL 証明書をインストールすると、Classic Load Balancer は SSL/TLS クライアント接続を終了できます。
SSL 証明書には有効期限があります。有効期限が切れる前に証明書を交換する必要があります。証明書を交換するには、新しい証明書を作成してアップロードします。
ロードバランサーが使用する中間証明書チェーンをアップロードしないと、ウェブクライアントは証明書の検証に失敗する可能性があります。openssl s_client コマンドを使用して、中間証明書チェーンが AWS Identity and Access Management (AWS IAM) サービスにアップロードされているかどうかを確認します。s_client コマンドは、SSL/TLS を使用してリモートホストに接続する汎用 SSL/TLS クライアントを実装します。以下のコマンドを実行してリモートホストに接続します。
openssl s_client -showcerts -connect www.domain.com:443
コマンドで「Verify return code: 21 (unable to verify the first certificate)」というメッセージが返された場合は、中間証明書チェーンが欠落しています。コマンドで「Verify return code: 0 (ok)」というメッセージが返された場合は、証明書のアップロードは成功しています。SSL 証明書をアップロードする場合、以下の理由でエラーが発生することがあります。
- 証明書ファイルをアップロードするか、余分な空白を含む証明書をコピーして貼り付けます。
- 証明書ファイルをアップロードするか、-----BEGIN CERTIFICATE----- で始まらず -----END CERTIFICATE----- で終わらない証明書をコピーして貼り付けます。
- 公開鍵は無効です。
- 秘密鍵は無効です。
- 暗号スイートまたは鍵に問題があります。
解決策
信頼されていない証明書のエラーを解決するには、ロードバランサーの SSL 証明書をアップロードしてください。有効期限が切れる前に証明書を交換する。
AWS Certificate Manager (ACM) を使用すると、SSL/TLS 証明書を作成、インポート、管理できます。IAM はサーバー証明書のインポートとデプロイをサポートします。ACM は、サーバー証明書のプロビジョニング、管理、デプロイに適したツールです。
SSL 証明書をアップロードする際に発生するエラーをトラブルシューティングするには、以下のガイドラインに従ってください。
- 証明書をインポートするための前提条件を完了させます。
- IAM を使用して証明書をアップロードする場合は、手順に従ってサーバー証明書 (AWS API) をアップロードします。
- ACM を使用して証明書をインポートする場合は、手順に従って証明書をインポートします。
- 証明書に余分な空白が含まれていないことを確認してください。
- 証明書が -----BEGIN CERTIFICATE----- で始まり、-----END CERTIFICATE----- で終わっていることを確認します。
- 公開鍵証明書が有効ではないというエラーメッセージが表示される場合は、公開鍵証明書または証明書チェーンのどちらかが無効です。証明書チェーンなしで証明書が正常にアップロードされた場合、証明書チェーンは無効です。そうでない場合、公開鍵証明書は有効ではありません。
公開鍵証明書が有効でない場合は、次の手順を実行してください。
- 公開鍵証明書が X.509 PEM 形式であることを確認します。
- 有効な証明書形式の例については、「トラブルシューティング」を参照してください。
証明書チェーンが有効でない場合は、次の手順を実行してください。
- 証明書チェーンに公開鍵証明書が含まれていないことを確認します。
- 証明書チェーンが正しい順序で使用されていることを確認します。証明書チェーンには、ルート証明書につながる認証局 (CA) からのすべての中間証明書が含まれている必要があります。証明書チェーンは、CA が生成した証明書で始まり、CA のルート証明書で終わります。通常、CA は中間証明書とルート証明書の両方を、適切な順序でバンドルされたファイルにまとめて提供します。CA が提供している中間証明書を使用してください。トラストパスチェーンに関係のない中間証明書は含めないでください。
- 秘密鍵証明書が有効でないことがエラーで示されている場合、秘密鍵証明書の形式は正しくありません。または、秘密鍵証明書が暗号化されています。秘密鍵証明書が「トラブルシューティング」の秘密鍵の例の形式に従っていることを確認してください。また、秘密鍵証明書がパスワードで保護されていないことも確認してください。
関連情報
AWS Certificate Manager への証明書のインポート
インポート用の証明書と鍵の形式