Google Cloud Armor の名前付き IP アドレスリストを使用すると、サードパーティ プロバイダが管理している IP アドレスと IP 範囲のリストを参照できます。名前付き IP アドレスリストは、セキュリティ ポリシー内で構成できます。各 IP アドレスまたは IP 範囲を個別に手動で指定する必要はありません。
このドキュメントでは、IP アドレスと IP アドレスリストという言葉に IP アドレス範囲が含まれます。
名前付き IP アドレスリストは、異なる名前ごとにグループ化された IP アドレスのリストです。この名前は通常、プロバイダを指します。名前付き IP アドレスリストには、ルールごとの IP アドレス数の割り当て上限は適用されません。
名前付き IP アドレスリストはセキュリティ ポリシーではありません。名前付き IP アドレスリストをセキュリティ ポリシーに組み込むには、事前構成ルールを参照する場合と同じ方法で、式として名前付き IP アドレスリストを参照します。
たとえば、サードパーティ プロバイダに provider-a
という名前の {ip1, ip2,
ip3....ip_N_}
という IP アドレスリストがある場合、provider-a
リスト内のすべての IP アドレスを許可し、そのリストにない IP アドレスを除外するセキュリティ ルールを作成できます。
gcloud beta compute security-policies rules create 1000 \ --security-policy POLICY_NAME \ --expression "evaluatePreconfiguredExpr('provider-a')" \ --action "allow"
独自にカスタマイズした名前付き IP アドレスのリストを作成することはできません。この機能は、Google と提携しているサードパーティ プロバイダによって管理されている名前付き IP アドレスリストに対してのみ利用できます。このような名前付き IP アドレスリストがニーズに合わない場合は、リクエストの送信元 IP アドレスに基づいてリソースへのアクセスを許可またはブロックするセキュリティ ポリシーを作成できます。詳細については、セキュリティ ポリシーの構成をご覧ください。
名前付き IP アドレスリストを使用するには、Google Cloud Armor Managed Protection Plus に登録し、Managed Protection にプロジェクトを登録する必要があります。詳細については、名前付き IP アドレスリストの可用性をご覧ください。
許可されたサードパーティ プロバイダからのトラフィックのみを許可する
代表的な使用例は、許可されたサードパーティ パートナーの IP アドレスを含む許可リストを作成して、このパートナーからの到達するトラフィックのみをロードバランサとバックエンドにアクセスできるようにします。
たとえば CDN プロバイダは、オリジン サーバーからコンテンツを定期的に pull して、独自のキャッシュにコンテンツを配信する必要があります。Google とのパートナーシップにより、CDN プロバイダと Google ネットワーク エッジとの間の直接接続が可能です。Google Cloud の CDN ユーザーは、配信元での pull 時に、この直接接続を使用できます。この場合、CDN ユーザーは、特定の CDN プロバイダからのトラフィックのみを許可するセキュリティ ポリシーを作成する可能性があります。
この例では、CDN プロバイダが IP アドレスリスト 23.235.32.0/20, 43.249.72.0/22, ⋯,
を公開しています。CDN ユーザーは、これらの IP アドレスからのトラフィックのみを許可するセキュリティ ルールを構成します。結果として、2 つの CDN プロバイダのアクセス ポイント(23.235.32.10
と 43.249.72.10
)が許可され、そのトラフィックも許可されます。不正なアクセス ポイント 198.51.100.1
からのトラフィックはブロックされます。
事前構成済みルールを使用して構成と管理を簡素化する
CDN プロバイダの多くは、よく知られている IP アドレスを使用し、多くの CDN ユーザーは、こうした IP アドレスを使用する必要があります。これらのリストは、プロバイダが IP アドレスを追加、削除、更新するので、時間とともに変化します。
Google Cloud Armor は CDN プロバイダからの情報を自動的に毎日同期するため、セキュリティ ポリシー ルールで名前付き IP アドレスリストを使用すると、IP アドレスの構成と管理が簡単になります。これにより、大規模な IP アドレスリストを手動で管理するという、時間がかかり、なおかつエラーの原因となるプロセスを排除できます。
次に、プロバイダからのすべてのトラフィックを許可する事前構成済みルールの例を示します。
evaluatePreconfiguredExpr('provider-a') => allow traffic
IP アドレスリスト プロバイダ
次の表の IP アドレスリスト プロバイダは、Google Cloud Armor でサポートされています。表に掲載されているのは、Google と提携している CDN プロバイダです。IP アドレスリストは、個々の公開 URL を介して公開されます。
これらのパートナーは、IPv4 アドレスと IPv6 アドレスの個別のリストを提供します。Google Cloud Armor は、指定された URL を使用してリストを取得し、そのリストを名前付き IP アドレスリストに変換します。表の中の名前でリストを参照します。
たとえば、次のコマンドでは、セキュリティ ポリシー POLICY_NAME
に優先度 750 のルールを作成し、Cloudflare の名前付き IP アドレスリストを組み込み、その IP アドレスからのアクセスを許可しています。
gcloud beta compute security-policies rules create 750 \ --security-policy POLICY_NAME \ --expression "evaluatePreconfiguredExpr('sourceiplist-cloudflare')" \ --action "allow"
プロバイダ | URL | IP アドレスリスト名 |
---|---|---|
Fastly | https://api.fastly.com/public-ip-list |
sourceiplist-fastly |
Cloudflare |
|
sourceiplist-cloudflare |
Imperva |
Imperva のリストへのアクセスには、
|
sourceiplist-imperva |
事前構成された名前付き IP アドレスリストを一覧表示するには、次の gcloud
コマンドを使用します。
gcloud compute security-policies list-preconfigured-expression-sets \ --filter="id:sourceiplist"
次の結果が返されます。
EXPRESSION_SET sourceiplist-fastly sourceiplist-cloudflare sourceiplist-imperva
IP アドレスリストを同期する
Google Cloud Armor は、有効な形式の変更を検出した場合にのみ、各プロバイダと IP アドレスリストを同期します。Google Cloud Armor は、すべてのリストの IP アドレスに対して基本構文検証を行います。
名前付き IP アドレスリストの可用性
Google Cloud Armor Managed Protection Plus は一般提供されています。サードパーティ指定の IP アドレスリストの可用性は次のとおりです。
- Google Cloud Armor Managed Protection Plus ティアに登録している場合、登録済みプロジェクトで名前付き IP アドレスリストの使用ライセンスが付与されています。名前付き IP アドレスのリストを含むルールを作成、更新、削除できます。
- Google Cloud Armor Managed Protection Plus ティアのサブスクリプションが期限切れになった場合、または Standard ティアに戻した場合、名前付き IP アドレスリストを含むルールの追加や変更はできませんが、既存のルールを削除し、ルールを更新することで名前付き IP アドレスリストを削除できます。
- 名前付き IP アドレスのリストを含むルールが Google Cloud Armor Managed Protection Plus に登録されていない場合は、名前付き IP アドレスのリストを使用して既存のルールを引き続き使用し、更新や削除を行うことができます。このようなプロジェクトでは、名前付き IP アドレスのリストを含む新しいルールを作成できます。