このチュートリアルでは、Certificate Manager を使用して、セルフマネージド証明書をリージョン外部アプリケーション ロードバランサまたはリージョン内部アプリケーション ロードバランサにデプロイする方法について説明します。
証明書をリージョン外部アプリケーション ロードバランサまたはリージョン内部アプリケーション ロードバランサにデプロイするには、証明書をターゲット プロキシに直接接続します。 証明書をグローバル外部アプリケーション ロードバランサにデプロイするには、証明書マップを作成し、そのマップをターゲット プロキシに接続します。詳細については、セルフマネージド証明書をデプロイするをご覧ください。
目標
このチュートリアルでは、次の方法について説明します。
- セルフマネージド証明書を Certificate Manager にアップロードします。
- ターゲット HTTPS プロキシを使用して、リージョン外部アプリケーション ロードバランサまたはリージョン内部アプリケーション ロードバランサに証明書をデプロイします。
証明書のデプロイ プロセスの詳細については、デプロイの概要をご覧ください。
始める前に
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
このチュートリアルのタスクを完了するための次のロールがあることを確認してください。
- Certificate Manager オーナー: Certificate Manager リソースの作成と管理に必要です。
- Compute ロードバランサ管理者または Compute ネットワーク管理者: HTTPS ターゲット プロキシの作成と管理に必要です。
詳しくは以下をご覧ください。
- Certificate Manager のロールと権限
- Compute Engine の Compute Engine の IAM ロールと権限
ロードバランサを作成する
証明書をデプロイするロードバランサを作成します。
- リージョン外部アプリケーション ロードバランサを作成するには、VM インスタンス グループのバックエンドを使用してリージョン外部アプリケーション ロードバランサを設定するをご覧ください。
- リージョン内部アプリケーション ロードバランサを作成するには、VM インスタンス グループのバックエンドを使用してリージョン内部アプリケーション ロードバランサを設定するをご覧ください。
このチュートリアルの残りの部分では、ロードバランサのバックエンド、ヘルスチェック、バックエンド サービス、URL マップがすでに構成されていることを前提としています。このチュートリアルの後半で必要になるため、URL マップの名前をメモしておきます。
証明書をリクエストして検証する
セルフマネージド証明書をリクエストして検証する手順は次のとおりです。
信頼できる第三者認証局(CA)を利用して、証明書とそれに関連付けられた鍵を発行します。
証明書のチェーンとルート信頼が適切に行われていることを確認します。
次の PEM エンコード ファイルを準備します。
- 証明書ファイル(CRT)
- 対応する秘密鍵ファイル(KEY)
証明書をリクエストして検証する方法については、秘密鍵と証明書を作成するをご覧ください。
セルフマネージド証明書を Certificate Manager にアップロードします。
コンソール
Google Cloud コンソールで、[Certificate Manager] ページに移動します。
表示されたページで、[証明書] タブを選択します。
[証明書を追加] をクリックします。
証明書の名前を入力します。
この名前は、プロジェクト内で一意にする必要があります。
省略可: 証明書の説明を入力します。説明は、後で特定の証明書を識別する際に役立ちます。
[ロケーション] で [リージョン] を選択します。
[リージョン] リストでリージョンを選択します。
[証明書の種類] で [セルフマネージド証明書を作成する] を選択します。
[証明書] フィールドについて、次のいずれかを行います。
- [アップロード] ボタンをクリックし、PEM 形式の証明書ファイルを選択します。
- PEM 形式の証明書のコンテンツをコピーして貼り付けます。コンテンツは
-----BEGIN CERTIFICATE-----
で始まり、-----END CERTIFICATE-----
で終わる必要があります。
[秘密鍵証明書] フィールドで、次のいずれかを行います:
- [アップロード] ボタンをクリックし、秘密鍵を選択します。秘密鍵は PEM 形式で、パスフレーズで保護されていない必要があります。
- PEM 形式の秘密鍵のコンテンツをコピーして貼り付けます。秘密鍵は
-----BEGIN PRIVATE KEY-----
で始まり、-----END PRIVATE KEY-----
で終わる必要があります。
証明書に関連付けるラベルを指定します。必要に応じて、複数のラベルを追加できます。ラベルを追加するには、[add_box ラベルの追加] ボタンをクリックして、ラベルの
key
とvalue
を指定します。[作成] をクリックします。新しい証明書が証明書のリストに表示されていることを確認します。
gcloud
証明書を Certificate Manager にアップロードするには、次のコマンドを実行します。
gcloud certificate-manager certificates create CERTIFICATE_NAME
--certificate-file="CERTIFICATE_FILE"
--private-key-file="PRIVATE_KEY_FILE"
--location="REGION"
以下のように置き換えます。
CERTIFICATE_NAME
: 証明書の一意の名前。CERTIFICATE_FILE
: CRT 証明書ファイルのパスとファイル名PRIVATE_KEY_FILE
: KEY 秘密鍵ファイルのパスとファイル名REGION
: ターゲットの Google Cloud リージョン。
セルフマネージド証明書をロードバランサにデプロイする
セルフマネージド証明書をデプロイするには、HTTPS ターゲット プロキシを作成し、証明書を接続します。
HTTPS ターゲット プロキシを作成する
HTTPS ターゲット プロキシを作成して証明書を添付するには、次のコマンドを実行します。
gcloud compute target-https-proxies create PROXY_NAME \ --url-map=URL_MAP \ --region=REGION \ --certificate-manager-certificates=CERTIFICATE_NAME
以下のように置き換えます。
PROXY_NAME
: プロキシの一意の名前。URL_MAP
: URL マップの名前。 ロードバランサの作成時に URL マップを作成しました。REGION
: HTTPS ターゲット プロキシを作成するリージョン。CERTIFICATE_NAME
: 証明書の名前。
ターゲット プロキシが作成されたかどうかを確認するには、次のコマンドを実行します。
gcloud compute list target-https-proxies
転送ルールの作成
転送ルールを設定して、ロードバランサの設定を完了します。
- リージョン外部アプリケーション ロードバランサを使用している場合は、VM インスタンス グループのバックエンドを使用してリージョン外部アプリケーション ロードバランサを設定するをご覧ください。
- リージョン内部アプリケーション ロードバランサを使用している場合は、VM インスタンス グループのバックエンドを使用してリージョン内部アプリケーション ロードバランサを設定するをご覧ください。
クリーンアップ
このチュートリアルで行った変更を元に戻すには、アップロードした証明書を削除します。
gcloud certificate-manager certificates delete CERTIFICATE_NAME
CERTIFICATE_NAME
は、ターゲット証明書の名前に置き換えます。