トラブルシューティングの手順は、使用している SSL 証明書の種類によって異なります。
セルフマネージド SSL 証明書のトラブルシューティング
このガイドでは、セルフマネージド SSL 証明書の構成に関する問題のトラブルシューティングについて説明します。
証明書を解析できない
Trusted Cloud には、PEM 形式の証明書が必要です。証明書が PEM 形式の場合は、次の点を確認してください。
次の OpenSSL コマンドを使用して証明書を検証します。CERTIFICATE_FILE
は、証明書ファイルのパスで置き換えます。
openssl x509 -in CERTIFICATE_FILE -text -noout
OpenSSL が証明書を解析できない場合:
- CA にお問い合わせください。
- 新しい秘密鍵と証明書を作成します。
共通名またはサブジェクト代替名がない
Trusted Cloud では、証明書に共通名(CN
)またはサブジェクト代替名(SAN
)属性のどちらかを設定する必要があります。詳細については、CSR を作成するをご覧ください。
どちらの属性も設定されていない場合に、 Trusted Cloud はセルフマネージド証明書を作成しようとすると、次のようなエラー メッセージが表示されます。
ERROR: (gcloud.compute.ssl-certificates.create) Could not fetch resource:
- The SSL certificate is missing a Common Name(CN) or Subject Alternative
Name(SAN).
秘密鍵を解析できない
Trusted Cloud には、秘密鍵の基準を満たす PEM 形式の秘密鍵が必要です。
次の OpenSSL コマンドで秘密鍵を検証します。PRIVATE_KEY_FILE
は秘密鍵のパスで置き換えます。
openssl rsa -in PRIVATE_KEY_FILE -check
次のレスポンスは、秘密鍵の問題を示しています。
unable to load Private Key
Expecting: ANY PRIVATE KEY
RSA key error: n does not equal p q
RSA key error: d e not congruent to 1
RSA key error: dmp1 not congruent to d
RSA key error: dmq1 not congruent to d
RSA key error: iqmp not inverse of q
この問題を解決するには、新しい秘密鍵と証明書を作成する必要があります。
パスフレーズを含む秘密鍵
OpenSSL でパスフレーズが求められた場合、秘密鍵からパスフレーズを削除してから、 Trusted Cloudで使用する必要があります。次の OpenSSL コマンドを使用できます。
openssl rsa -in PRIVATE_KEY_FILE \ -out REPLACEMENT_PRIVATE_KEY_FILE
プレースホルダを有効な値に置き換えます。
PRIVATE_KEY_FILE
: パスフレーズで保護されている秘密鍵のパスREPLACEMENT_PRIVATE_KEY_FILE
: 書式なしテキストの秘密鍵のコピーを保存するパス。
有効期限が近い中間証明書
サーバー(リーフ)証明書の前に中間証明書が期限切れになった場合、CA がベスト プラクティスに従っていない可能性があります。
中間証明書が期限切れになると、Trusted Cloud で使用されるリーフ証明書が無効になることがあります。これは、次のように SSL クライアントによって異なります。
- 一部の SSL クライアントは、リーフ証明書の有効期限のみを確認し、期限切れの中間証明書を無視します。
- 一部の SSL クライアントは、期限切れの中間証明書を持つチェーンを無効として扱い、警告を表示します。
この問題を解決するには:
- CA が新しい中間証明書に切り替わるのを待ちます。
- 新しい証明書をリクエストします。
- 新しい鍵で新しい証明書を再度アップロードします。
CA が中間証明書に対するクロス署名を許可している場合もあります。CA に確認してください。
RSA 公開指数が大きすぎる
次のエラー メッセージは、RSA 公開指数が 65537 より大きい場合に表示されます。RFC 4871 で指定されているように、必ず 65537
を使用してください。
ERROR: (gcloud.compute.ssl-certificates.create) Could not fetch resource:
- The RSA public exponent is too large.
target-proxy から SSL 証明書を削除する
次の手順で、ターゲット https プロキシに適用されている単一の SSL 証明書を削除する方法を示します。
target-https-proxy を一時ファイルにエクスポートします。
gcloud compute target-https-proxies export TARGET_PROXY_NAME > /tmp/proxy
/tmp/proxy
ファイルを編集して次の行を削除します。sslCertificates: - https://www.googleapis.com/compute/v1/projects/...
/tmp/proxy
ファイルをインポートします。gcloud compute target-https-proxies import TARGET_PROXY_NAME \ --source=/tmp/proxy
省略可: SSL 証明書を削除します。
gcloud compute ssl-certificates delete SSL_CERT_NAME
次のように置き換えます。
TARGET_PROXY_NAME
: ターゲット HTTPS プロキシ リソースの名前。SSL_CERT_NAME
: SSL 証明書の名前。