Google Cloud Armor の名前付き IP アドレスリスト

Google Cloud Armor の名前付き IP アドレスリストを使用すると、サードパーティ プロバイダが管理している IP アドレスと IP 範囲のリストを参照できます。名前付き IP アドレスリストは、セキュリティ ポリシー内で構成できます。各 IP アドレスまたは IP 範囲を個別に手動で指定する必要はありません。

ベータ期間中は、名前付き IP アドレスリストはすべてのユーザーが利用できます。一般提供になった後では、Google Cloud Armor Managed Protection プラスティアに登録されたプロジェクトでのみ名前付き 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 アドレスを含む許可リストを作成して、このパートナーから送信されるトラフィックのみがロードバランサとバックエンドに到達できるようにする使い方です。

たとえば 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.1043.249.72.10)が許可され、そのトラフィックも許可されます。不正なアクセス ポイント 198.51.100.1 からのトラフィックはブロックされます。

Google Cloud Armor の名前付き IP アドレス
Google Cloud Armor の名前付き IP address(クリックして拡大)

事前構成済みルールを使用して構成と管理を簡素化する

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

https://www.cloudflare.com/ips-v4

https://www.cloudflare.com/ips-v6

sourceiplist-cloudflare
Imperva

https://my.imperva.com/api/integration/v1/ips

Imperva のリストへのアクセスには、POST リクエストが必要です。以下のコマンドも使用できます。

curl -d "" https://my.imperva.com/api/integration/v1/ips

sourceiplist-imperva

IP アドレスリストを同期する

Google Cloud Armor は、有効な形式の変更を検出した場合にのみ、各プロバイダと IP アドレスリストを同期します。Google Cloud Armor は、すべてのリストの IP アドレスに対して基本構文検証を行います。

次のステップ