このドキュメントでは、Secure Web Proxy を使用するために必要な初期設定の手順について説明します。
Secure Web Proxy を使用する前に、次の手順を行います。
- 必要な Identity and Access Management ロールを取得します。
- Google Cloud プロジェクトを作成または選択します。
- 課金と関連する Google Cloud API を有効にします。
- プロキシ サブネットを作成します。
- SSL 証明書を Certificate Manager にアップロードします。
この設定は、Secure Web Proxy を初めて使用する場合にのみ必要です。
IAM ロールを取得する
権限を取得する手順は次のとおりです。
-
Secure Web Proxy インスタンスをプロビジョニングするために必要な権限を取得するには、プロジェクトに対する次の IAM ロールの付与を管理者に依頼してください。
-
ポリシーを構成して Secure Web Proxy インスタンスをプロビジョニングするには:
Compute ネットワーク管理者ロール (
roles/compute.networkAdmin
) -
Secure Web Proxy の TLS 証明書を明示的にアップロードするには: Certificate Manager 編集者のロール (
roles/certificatemanager.editor
)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
-
ポリシーを構成して Secure Web Proxy インスタンスをプロビジョニングするには:
Compute ネットワーク管理者ロール (
省略可: ポリシー管理を継続的に担当する複数のユーザーがいる場合は、セキュリティ ポリシー管理者ロール(
roles/compute.orgSecurityPolicyAdmin
)を付与して、セキュリティ ポリシーを管理できるようにします。
Google Cloud プロジェクトを作成する
Google Cloud プロジェクトを作成または選択する手順は次のとおりです。
コンソール
Google Cloud コンソールのプロジェクト セレクタ ページで、 Google Cloud プロジェクトを選択または作成します。
Cloud Shell
Google Cloud プロジェクトを作成します。
gcloud projects create PROJECT_ID
PROJECT_ID は、必要なプロジェクト ID に置き換えます。
作成した Google Cloud プロジェクトを選択します。
gcloud config set project PROJECT_ID
課金を有効にする
Google Cloud プロジェクトに対して課金が有効になっていることを確認します。詳細については、プロジェクトの課金を有効化、無効化、または変更するとプロジェクトの課金ステータスを確認するをご覧ください。
必要な API を有効にする
次の Google Cloud API を有効にする必要があります。
compute.googleapis.com
certificatemanager.googleapis.com
networkservices.googleapis.com
networksecurity.googleapis.com
privateca.googleapis.com
(オプション)
必要な Google Cloud API を有効にするには、次の操作を行います。
コンソール
gcloud
次のコマンドを実行します。
gcloud services enable \ --compute.googleapis.com \ --certificatemanager.googleapis.com \ --networkservices.googleapis.com \ --networksecurity.googleapis.com \ --privateca.googleapis.com
VPC サブネットを作成する
Secure Web Proxy インスタンスをデプロイするリージョンごとに、VPC ネットワークにサブネットを作成します。サブネットを以前に作成した場合は、purpose
パラメータの値を PRIVATE
に指定することで、VPC サブネットとして再利用できます。
gcloud
gcloud compute networks subnets create VPC_SUBNET_NAME \
--purpose=PRIVATE \
--region=REGION \
--network=NETWORK_NAME \
--range=IP_RANGE
次のように置き換えます。
VPC_SUBNET_NAME
: VPC サブネットに使用する名前REGION
: VPC サブネットをデプロイするリージョンNETWORK_NAME
: VPC ネットワークの名前。IP_RANGE
: サブネット範囲(例:10.10.10.0/24
)
プロキシ サブネットを作成する
Secure Web Proxy をデプロイするリージョンごとにプロキシ サブネットを作成します。サブネットのサイズは /26 以上、または 64 個のプロキシ専用アドレスにする必要があります。Secure Web Proxy 接続は、Secure Web Proxy 用に予約された IP アドレスのプールによって提供されるため、サブネット サイズは /23 または 512 プロキシ専用アドレスにすることをおすすめします。プールを使用して、各プロキシの外向きトラフィックに一意の IP アドレスを割り振り、Cloud NAT や VPC ネットワーク内の宛先とやり取りします。
gcloud
gcloud compute networks subnets create PROXY_SUBNET_NAME \
--purpose=REGIONAL_MANAGED_PROXY \
--role=ACTIVE \
--region=REGION \
--network=NETWORK_NAME \
--range=IP_RANGE
以下を置き換えます。
PROXY_SUBNET_NAME
: プロキシ サブネットに使用する名前REGION
: プロキシ サブネットをデプロイするリージョンNETWORK_NAME
: ネットワーク名IP_RANGE
: サブネット範囲(例:192.168.0.0/23
)
SSL 証明書をデプロイする
Secure Web Proxy では SSL 証明書は省略可能です。Certificate Manager を使用して証明書をデプロイするには、次のいずれかの方法を使用します。
プロジェクトごとの DNS 認証を使用して、リージョン Google マネージド証明書をデプロイする。詳細については、リージョン Google マネージド証明書をデプロイするをご覧ください。
Certificate Authority Service を使用してリージョン Google マネージド証明書をデプロイする。詳細については、CA Service を使用してリージョン Google マネージド証明書をデプロイするをご覧ください。
リージョン セルフマネージド証明書をデプロイする。
次の例は、Certificate Manager を使用してリージョン セルフマネージド証明書をデプロイする方法を示しています。
SSL 証明書を作成するには:
openssl req -x509 -newkey rsa:2048 \ -keyout KEY_PATH \ -out CERTIFICATE_PATH -days 365 \ -subj '/CN=SWP_HOST_NAME' -nodes -addext \ "subjectAltName=DNS:SWP_HOST_NAME"
以下を置き換えます。
KEY_PATH
: 鍵を保存するパス(~/key.pem
など)CERTIFICATE_PATH
: 証明書を保存するパス(~/cert.pem
など)SWP_HOST_NAME
: Secure Web Proxy インスタンスのホスト名(myswp.example.com
など)
SSL 証明書を Certificate Manager にアップロードします。
gcloud certificate-manager certificates create CERTIFICATE_NAME \ --certificate-file=CERTIFICATE_PATH \ --private-key-file=KEY_PATH \ --location=REGION
以下を置き換えます。
CERTIFICATE_NAME
: 証明書の名前。CERTIFICATE_PATH
: 証明書ファイルのパスKEY_PATH
: 鍵ファイルのパス
SSL 証明書の詳細については、SSL 証明書の概要をご覧ください。
次のステップ
- Secure Web Proxy インスタンスをデプロイしてテストする
- タグを使用してポリシーを作成する
- URL リストを使用してポリシーを作成する
- 下り(外向き)トラフィックに静的 IP アドレスを割り当てる