SSL 証明書の概要

Transport Layer Security(TLS)は、ネットワーク通信を保護するために SSL 証明書で使用される暗号化プロトコルです。

Google Cloud は SSL 証明書を使用して、クライアントからロードバランサに転送されるデータのプライバシーとセキュリティを保護します。これを実現するには、ロードバランサに SSL 証明書と証明書の対応する秘密鍵が必要です。クライアントとロードバランサ間の通信は公開されず、この秘密鍵を持たない第三者に読み取られることはありません。

ロードバランサ

次の表に、SSL 証明書を必要とする Google Cloud ロードバランサの種類を示します。

ロードバランサの種類 クライアントからロードバランサへのプロトコル
内部 HTTPS ロードバランサ HTTPS または HTTP/2
外部 HTTPS ロードバランサ HTTPS または HTTP/2
SSL プロキシ ロードバランサ SSL(TLS)

セルフマネージド SSL 証明書と Google マネージド SSL 証明書

独自のセルフマネージド証明書を取得するか、Google が取得して管理する Google マネージド証明書を使用できます。

  • セルフマネージド SSL 証明書は、ご自分で取得、プロビジョニング、更新する証明書です。この種類は次のいずれかになります。

    • ドメイン認証(DV)
    • 組織認証(OV)
    • 拡張認証(EV)証明書

    詳細については、公開鍵証明書をご覧ください。

  • Google マネージド SSL 証明書は、ドメイン用に Google Cloud が取得して管理する証明書で、自動的に更新されます。Google マネージド証明書はドメイン認証(DV)証明書です。証明書に関連付けられた組織や個人の ID を証明せず、ワイルドカードの共通名をサポートしません。

外部 HTTP(S) ロードバランサと SSL プロキシ ロードバランサの場合、Google マネージド、セルフマネージド、または両方の種類の組み合わせの SSL 証明書を 1 つのターゲット プロキシで参照できます。証明書は任意の順序で参照できます。内部 HTTP(S) ロードバランサの場合、セルフマネージド証明書を使用する必要があります。

ロードバランサの SSL 証明書の構成については、次のガイドをご覧ください。

複数の SSL 証明書

ターゲット HTTPS またはターゲット SSL プロキシあたりの SSL 証明書の最大数を構成できます。同じロードバランサの IP アドレスとポートを使用して複数のドメインからサービスを提供し、ドメインごとに異なる SSL 証明書を使用する場合は、複数の SSL 証明書を使用します。

複数の証明書を指定した場合、SSL 証明書のリストの最初の証明書が、ターゲット プロキシに関連付けられたプライマリ SSL 証明書と見なされます。

クライアントがリクエストを送信すると、ロードバランサはクライアントが指定した SNI ホスト名を使用して、SSL 接続のネゴシエーションに使用する証明書を選択します。

可能な限り、ロードバランサは、クライアントが指定した SNI ホスト名と共通名(CN)またはサブジェクト代替名(SAN)が一致する証明書を選択します。RSA と ECDSA はデジタル署名の一種であり、クライアント ソフトウェアでそれらを使用できる必要があります。

使用可能な証明書のいずれも選択できない場合、またはクライアントが SNI ホスト名を指定していない場合、ロードバランサはプライマリ証明書(リストの最初の証明書)を使用して SSL をネゴシエートします。

複数の SSL 証明書(クリックで拡大)
複数の SSL 証明書(クリックで拡大)

ロードバランサからバックエンドへの暗号化

このトピックの詳細については、バックエンドへの暗号化をご覧ください。

ロードバランサ、SSL 証明書、ターゲット プロキシ

Google Cloud SSL 証明書のリソースには、秘密鍵と SSL 証明書の両方が格納されています。

ターゲット プロキシは、ロードバランサのフロントエンドとバックエンド サービス(SSL プロキシ ロードバランサの場合)または URL マップ(HTTPS ロードバランサの場合)間の論理的な接続を表します

次の図は、ターゲット プロキシと関連付けられた SSL 証明書の負荷分散アーキテクチャにおける位置付けを示しています。

ターゲット プロキシ、SSL 証明書、その他のロードバランサ コンポーネント(クリックして拡大)
ターゲット プロキシ、SSL 証明書、その他のロードバランサ コンポーネント(クリックして拡大)

SSL 証明書のスコープ

Google Cloud には、リージョンとグローバルの 2 つの SSL 証明書リソースのスコープがあります。

ロードバランサの種類 SSL 証明書リソースのスコープ gcloud リファレンス API リファレンス
内部 HTTPS ロードバランサ リージョン gcloud compute ssl-certificates --region regionSslCertificates
外部 HTTPS ロードバランサ グローバル gcloud compute ssl-certificates --global sslCertificates
SSL プロキシ ロードバランサ グローバル gcloud compute ssl-certificates --global sslCertificates

ターゲット プロキシ

SSL 証明書は、次の種類のターゲット プロキシに関連付けられます。

ロードバランサの種類 ターゲット プロキシの種類 gcloud リファレンス API リファレンス
内部 HTTPS ロードバランサ リージョン gcloud compute target-https-proxies --region regionTargetHttpsProxies
外部 HTTPS ロードバランサ グローバル gcloud compute target-https-proxies --global targetHttpsProxies
SSL プロキシ ロードバランサ グローバル gcloud compute target-ssl-proxies --global targetSslProxies

制限事項

  • 各ターゲット プロキシでサポートされる SSL 証明書の数には上限があります。詳細については、ターゲット HTTPS またはターゲット SSL プロキシあたりの SSL 証明書の上限をご覧ください。

  • 各マネージド証明書でサポートされるドメインの数には上限があります。詳細については、Google マネージド SSL 証明書あたりのドメイン数の制限をご覧ください。

  • Google マネージド証明書を SSL プロキシの負荷分散に使用する場合、Google マネージド証明書の自動更新を行うには、ロードバランサの転送ルールが TCP ポート 443 を使用する必要があります。

  • Google Cloud ロードバランサは、クライアント証明書ベースの認証(相互 TLS、mTLS)をサポートしていません。

  • Google マネージド SSL 証明書では、ワイルドカードの使用はサポートされません。

次のステップ

使ってみる

Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。

無料で開始