クラシックロードバランサー (CLB) で証明書関連の問題が発生した場合は、このトピックを参照してトラブルシューティングを行ってください。
-
証明書作成時の「No certificate chain is found in the certificate content」エラー
-
秘密鍵入力後の「The format of the private key content is invalid」エラー
-
公開鍵入力後の「The format of the certificate content is invalid」エラー
-
HTTPS リスナー設定時のサーバー証明書選択後の「The certificate does not exist」エラー
証明書作成時の「Invalid parameter」エラー
現象
[証明書管理] ページで [証明書の作成] をクリックし、[サードパーティー証明書のアップロード] を選択して [作成] をクリックすると、「Invalid parameter」エラーが発生します。
原因
考えられる原因は次のとおりです:
-
公開鍵の内容が正しくありません。
-
システムが証明書のエンコーディング形式をサポートしていません。
ソリューション
-
公開鍵の内容が正しくない場合は、証明書を Linux サーバーにアップロードし、次のコマンドを実行して内容を確認してください。
openssl x509 -noout -text -in myprivate.pem-
公開キーの内容が正しくない場合は、
bad base64 decodeなどのエラーメッセージが返されます。正しい内容の公開キーを指定してください。以下に例を示します。[root@iZxxx ~]# openssl x509 -noout -text -in /root/zxxx.pem unable to load certificate 139903831541648:error:0906D064:PEM_routines:PEM_read_bio:bad base64 decode:pem_lib.c:829: -
有効な公開鍵の内容では、次のような出力が生成されます:
[root@iZbxxxZ ~]# openssl x509 -noout -text -in /root/zxxxw.pem Certificate: Data: Version: 3 (0x2) Serial Number: 09:0xxx7b:d7:ef Signature Algorithm: shaxxxryption Issuer: C=US, O=DigiCert Inc, OU=www.digxxxcom, CN=Encxxx xxxV TLS CA - G1 Validity
-
-
エンコーディング形式がサポートされていない場合は、サポートされているエンコーディング形式の証明書を使用してください。 Alibaba Cloud は、RFC 4648 に準拠した Base64 エンコードの証明書をサポートしています。
ServerCertificate パラメーターの形式が無効
現象
[証明書管理] ページで [証明書の作成] をクリックし、[サードパーティー証明書のアップロード] を選択して [作成] をクリックすると、次のエラーメッセージが表示されます:「The format of the ServerCertificate parameter is incorrect. Please modify the format and try again.」
原因
このエラーメッセージは ServerCertificate パラメーターについて言及していますが、実際の原因は、多くの場合、秘密鍵の内容が無効であることに関連しています。
ソリューション
証明書を Linux サーバーにアップロードし、次のコマンドを実行して内容を確認してください。
openssl rsa -in myprivate.key -check
-
コマンドがエラーを返した場合、秘密鍵は無効です。
[root@izlxxx Z ~]# openssl rsa -in /root/zlxxx.key -check unable to load Private Key 140326021413632:error:0906D064:PEM routines:PEM_read_bio:bad base64 decode:pem_lib.c:829: -
コマンドの出力に
RSA key okが含まれている場合、秘密鍵は有効です。[root@iZbpxxxxxxx4Z ~]# openssl rsa -in /root/zhxxxw.key -check RSA key ok writing RSA key -----BEGIN RSA PRIVATE KEY----- MIIEpAIxxxPJR4Jjq/Zw AkGskM4xxxwN67MiEliC Vjo25RixxxK3tretqQ69 OYxT2WUxvTR7NI6nCnMoKvk88aZHS/xxv9C0BoYU6v/OIkJ0bV5IeTRT9sOkUgH0 ... -----END RSA PRIVATE KEY-----
「証明書チェーンが見つかりません」エラー
現象
[証明書管理] ページで [証明書の作成] をクリックし、[サードパーティー証明書のアップロード] を選択して [作成] をクリックすると、[確認] ダイアログボックスに次のエラーメッセージが表示されます:「The certificate content is missing the certificate chain」。 有効な証明書チェーンは、次の形式である必要があります:最初のセクションは -----BEGIN CERTIFICATE----- で始まり、-----END CERTIFICATE----- で終わり、サーバーの公開鍵証明書 (Base64 エンコードされた) が含まれている必要があります。 2 番目のセクションも同じ形式で、中間 CA 証明書 (Base64 エンコードされた) が含まれている必要があります。 2 つの証明書セクションの間に空白行を入れることはできません。
原因
証明書プロバイダーから提供される証明書ファイルには、通常、ご使用の証明書と中間 CA 証明書が含まれています。 これらの証明書が証明書チェーンを構成します。 証明書をアップロードするときは、完全な証明書チェーンをアップロードするようにしてください。
ソリューション
認証局 (CA) にお問い合わせいただき、証明書チェーンが完全であることを確認してください。
秘密鍵の形式が無効なエラー
現象
[証明書管理] ページで [証明書の作成] をクリックし、[サードパーティー証明書のアップロード] を選択して秘密鍵の内容を入力すると、「The private key content is in an invalid format」というエラーメッセージが表示されます。
エラーの詳細には、秘密鍵が -----BEGIN RSA PRIVATE KEY----- で始まり、-----END RSA PRIVATE KEY----- で終わる NGINX 形式と互換性がある必要があることが示されています。
原因
この問題は、RSA 秘密鍵の形式が無効なために発生します。有効な秘密鍵は、-----BEGIN RSA PRIVATE KEY----- で始まり、-----END RSA PRIVATE KEY----- で終わる必要があります。
ソリューション
RSA 秘密鍵の形式が正しくない場合は、Linux サーバーにアップロードし、次のコマンドを実行して変換してください。
openssl rsa -in old_server_key.pem -out new_server_key.pem
OpenSSL の以降のバージョンでは、openssl rsaコマンドの出力にデフォルトで PKCS#8 形式が使用され、変換が失敗する可能性があります。代わりにopenssl rsa -in old_server_key.pem -out new_server_key.pem -traditionalコマンドを使用してください。
証明書の内容の形式が無効なエラー
現象
[証明書管理] ページで [証明書の作成] をクリックし、[サードパーティー証明書のアップロード] を選択した後、公開鍵の内容を入力すると、「The certificate content format is incorrect」というエラーメッセージが表示されます。 SSL 証明書の公開鍵アップロードページに証明書の内容を貼り付けて [アップロード] をクリックすると、ページ下部に「The certificate content format is incorrect. The certificate content must start with -----BEGIN CERTIFICATE----- and end with -----END CERTIFICATE-----」という赤いエラーメッセージが表示されます。
原因
公開キーの内容の形式が不正です。 -----BEGIN CERTIFICATE----- で始まり、 -----END CERTIFICATE----- で終わる必要があります。
解決策
認証局 (CA) にお問い合わせいただき、証明書の内容を確認してください。
「証明書が存在しません」エラー
現象
HTTPS リスナーを設定し、SSL 証明書設定ウィザードで既存のサーバー証明書を選択すると、「The certificate does not exist」というエラーが表示されます。
原因
このエラーは、CLB インスタンスと証明書が異なる種類のアカウントで作成された場合に発生する可能性があります。 たとえば、CLB インスタンスは Alibaba Cloud アカウントを使用して作成され、証明書は Finance Cloud アカウントを使用して作成された場合などです。 この場合、アップロード後に証明書が認識されません。
ソリューション
CLB インスタンスの作成と証明書のアップロードには、必ず同じアカウントを使用してください。
UploadServerCertificate API の呼び出し時の 500 エラー (The request processing has failed due to some unknown error, exception or failure.)
このエラーは通常、AliCloudCertificateRegionId パラメーターの値が正しくないことが原因です。この API 操作を呼び出す際は、CLB インスタンスが存在するリージョンではなく、Alibaba Cloud SSL 証明書が発行されたリージョンを指定してください。中国本土の証明書発行リージョンは cn-hangzhou で、中国本土以外のリージョンは ap-southeast-1 です。