このページでは、Secure Web Proxy ポリシーを作成する方法の概要を説明し、Secure Web Proxy インスタンスのネクストホップ ルーティングを構成する方法について説明します。また、ネクストホップに 静的ルーティングまたは ポリシーベースルーティングを構成する方法についても説明します。
デフォルトでは、SecureWebProxy インスタンスの RoutingMode 値は EXPLICIT_ROUTING_MODE
です。つまり、ワークロードを構成して、HTTP(S) トラフィックを Secure Web Proxy
に明示的に送信する必要があります。Secure Web Proxy インスタンスを参照するように個々のクライアントを構成する代わりに、Secure Web Proxy インスタンスの RoutingMode を NEXT_HOP_ROUTING_MODE に設定できます。これにより、Secure Web Proxy インスタンスにトラフィックを転送するルートを定義できます。
Secure Web Proxy のネクストホップ ルーティングを構成する
このセクションでは、Secure Web Proxy ポリシーを作成する手順 と、Secure Web Proxy インスタンスをネクストホップとしてデプロイする手順について説明します。
Secure Web Proxy ポリシーを作成する
Secure Web Proxy インスタンスをネクストホップとしてデプロイする
コンソール
コンソールで、[ウェブプロキシ] ページに移動します。 Google Cloud
[ セキュア ウェブプロキシを作成] をクリックします。
作成するウェブプロキシの名前を入力します(例:
myswp)。ウェブプロキシの説明を入力します(例:
My new swp)。[ルーティング モード] で、[ネクストホップ] オプションを選択します。
[リージョン] リストで、ウェブプロキシを作成するリージョンを選択します。
[ネットワーク] リストで、ウェブプロキシを作成するネットワークを選択します。
[サブネットワーク] リストで、ウェブプロキシを作成するサブネットワークを選択します。
省略可: Secure Web Proxy の IP アドレスを入力します。前の手順で作成したサブネットワークに存在する Secure Web Proxy IP アドレスの範囲から IP アドレスを入力できます。 IP アドレスを入力しない場合、Secure Web Proxy インスタンスは選択したサブネットワークから IP アドレスを自動的に選択します。
[証明書] リストで、ウェブプロキシの作成に使用する証明書を選択します。
[ポリシー] リストで、ウェブプロキシに関連付けるために作成したポリシーを選択します。
[作成] をクリックします。
Cloud Shell
gateway.yamlファイルを作成します。name: projects/PROJECT_ID/locations/REGION/gateways/swp1 type: SECURE_WEB_GATEWAY addresses: ["IP_ADDRESS"] ports: [443, 80] gatewaySecurityPolicy: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1 network: projects/PROJECT_ID/global/networks/NETWORK subnetwork: projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK routingMode: NEXT_HOP_ROUTING_MODESecure Web Proxy インスタンスを作成します。
gcloud network-services gateways import swp1 \ --source=gateway.yaml \ --location=REGIONSecure Web Proxy インスタンスのデプロイには数分かかる場合があります。
ネクストホップのルートを作成する
Secure Web Proxy インスタンスを作成したら、ネクストホップに 静的ルーティングまたはポリシーベース ルーティング を構成できます。
- 静的ルートは、ネットワーク内のトラフィックを同じリージョンの Secure Web Proxy インスタンスに転送します。Secure Web Proxy をネクストホップとして静的ルートを設定するには、 ネットワーク タグを構成する必要があります。
- ポリシーベースのルートを使用すると、送信元 IP アドレス範囲から Secure Web Proxy インスタンスにトラフィックを転送できます。ポリシーベースのルートを初めて構成する場合は、デフォルト ルートとして別のポリシーベースのルートも構成する必要があります。
次の 2 つのセクションでは、静的ルートとポリシーベースのルートを作成する方法について説明します。
静的ルートを作成する
のセクションで指定されているすべてのアクションを完了する必要があります。これにより、ルートがトラフィックを Secure Web Proxy インスタンスに正しく転送できます。トラフィックを Secure Web Proxy インスタンスにルーティングするには、gcloud compute routes create
コマンドを使用して静的ルートをセットアップします。静的ルートをネットワーク タグに関連付け、すべての送信元リソースで同じネットワーク タグを使用して、トラフィックが Secure Web Proxy インスタンスにリダイレクトされるようにする必要があります。静的ルートでは、送信元 IP アドレス範囲を定義できません。
での静的ルートの仕組みの詳細については、 静的ルートをご覧ください。 Google Cloud
gcloud
次のコマンドを使用して、静的ルートを作成します。
gcloud compute routes create STATIC_ROUTE_NAME \
--network=NETWORK_NAME \
--next-hop-ilb=SWP_IP \
--destination-range=DESTINATION_RANGE \
--priority=PRIORITY \
--tags=TAGS \
--project=PROJECT
次のように置き換えます。
STATIC_ROUTE_NAME: 静的ルートの名前NETWORK_NAME: ネットワークの名前SWP_IP:gateway.yamlファイルで指定されたサブネットワーク内のSecureWebProxyインスタンスの IP アドレスDESTINATION_RANGE: トラフィックのリダイレクト先の IP アドレスの範囲。たとえば、すべてのインターネット トラフィックを Secure Web Proxy インスタンスにルーティングするには、0.0.0.0/0を使用します。PRIORITY: ルートの優先度。数値が大きいほど優先度が低くなります。ルートの優先度が、デフォルトのインターネット ルート(通常は1000)よりも数値が小さくなるようにしてください。TAGS: Secure Web Proxy インスタンスで使用するタグのカンマ区切りリストPROJECT: プロジェクトの ID
ルートで指定されたネットワーク タグを使用して、適切なサブネットに VM を作成する
gcloud compute instances create swp-nexthop-test-vm \
--subnet=SUBNETWORK \
--zone=ZONE \
--image-project=debian-cloud \
--image-family=debian-11 \
--tags=TAGS次のように置き換えます。
SUBNETWORK: ウェブプロキシ用に構成したサブネットワークZONE: テスト VM インスタンスのゾーンTAGS: Secure Web Proxy インスタンスで使用するタグのカンマ区切りリスト
ポリシーベースのルートを作成する
静的ルーティングの代わりに、network-connectivity policy-based-routes create
コマンドを使用してポリシーベースのルートを設定できます。また、デフォルト ルートとなるポリシーベースのルートを作成する必要があります。これにより、ネットワーク内の仮想マシン(VM)インスタンス間のトラフィックのデフォルト
ルーティングが有効になります。 でのポリシーベースのルートの仕組みの詳細については、ポリシーベース ルーティングをご覧ください。Google Cloud
デフォルトのルーティングを有効にするルートの優先度は、トラフィックを Secure Web Proxy インスタンスに転送するポリシーベースのルートの優先度よりも高く(数値を小さく)する必要があります。デフォルトのルーティングを有効にするルートよりも高い優先度でポリシーベースのルートを作成すると、他のすべての VPC ルートよりも優先されます。
次の例を使用して、トラフィックを Secure Web Proxy インスタンスに転送するポリシーベースのルートを作成します。
gcloud
次のコマンドを使用して、ポリシーベースのルートを作成します。
gcloud network-connectivity policy-based-routes create POLICY_BASED_ROUTE_NAME \
--network="projects/PROJECT/global/networks/NETWORK_NAME" \
--next-hop-ilb-ip=SWP_IP \
--protocol-version="IPV4" \
--destination-range=DESTINATION_RANGE \
--source-range=SOURCE_RANGE \
--priority=2 \
--project=PROJECT
次のように置き換えます。
POLICY_BASED_ROUTE_NAME: ポリシーベースのルートの名前NETWORK_NAME: ネットワークの名前SWP_IP: Secure Web Proxy インスタンスの IP アドレスDESTINATION_RANGE: トラフィックのリダイレクト先の IP アドレスの範囲SOURCE_RANGE: トラフィックのリダイレクト元の IP アドレスの範囲PROJECT: プロジェクトの ID
次に、次の手順でデフォルト ルーティング ポリシーベースのルートを作成します。
gcloud
次のコマンドを使用して、デフォルト ルーティング ポリシーベースのルートを作成します。
gcloud network-connectivity policy-based-routes create DEFAULT_POLICY_BASED_ROUTE_NAME \
--network="projects/PROJECT/global/networks/NETWORK_NAME" \
--next-hop-other-routes="DEFAULT_ROUTING" \
--protocol-version="IPV4" \
--destination-range=DESTINATION_RANGE \
--source-range=SOURCE_RANGE \
--priority=1 \
--project=PROJECT
次のように置き換えます。
DEFAULT_POLICY_BASED_ROUTE_NAME: ポリシーベースのルートの名前NETWORK_NAME: ネットワークの名前DESTINATION_RANGE: トラフィックのリダイレクト先の IP アドレスの範囲SOURCE_RANGE: トラフィックのリダイレクト元の IP アドレスの範囲PROJECT: プロジェクトの ID
デプロイ後のチェックリスト
Secure Web Proxy インスタンスをネクストホップとして 静的ルートまたはポリシーベースのルート を構成したら、次のタスクを完了してください。
- インターネット ゲートウェイへの デフォルト ルートがあることを確認します。
- Secure Web Proxy インスタンスをネクストホップとして参照する 静的ルートに正しい ネットワーク タグを追加します。
- Secure Web Proxy インスタンスをネクストホップとして参照するデフォルト ルートに適切な優先度を定義します。
- Secure Web Proxy はリージョン サービスであるため、クライアント トラフィックが Secure Web Proxy インスタンスと同じリージョンから送信されるようにします。
制限事項
RoutingModeがNEXT_HOP_ROUTING_MODEに設定されているSecureWebProxyインスタンスは、HTTP(S) プロキシ トラフィックと TCP プロキシ トラフィックをサポートしています。リージョン間トラフィックなど、他の種類のトラフィックは通知なしで破棄されます。next-hop-ilbを使用する場合、宛先ネクストホップが Secure Web Proxy インスタンスである場合、内部パススルー ネットワーク ロードバランサに適用される制限がネクストホップに適用されます。詳細については、 静的ルートのネクストホップと機能の表をご覧ください。- ネクストホップ ルートに一致する仮想マシン(VM)からのすべてのトラフィック(バックグラウンド トラフィックや更新を含む)は、Secure Web Proxy インスタンスにルーティングされます。
- リージョンの VPC ネットワークの場合、ネクストホップ(SWPaNH)インスタンスとしてデプロイできる Secure Web Proxy は 1 つだけです。