Google Cloud Armor Threat Intelligence を使用すると、Google Cloud Armor Enterprise のサブスクライバーは、複数の脅威インテリジェンス データのカテゴリに基づいて外部アプリケーション ロードバランサへのトラフィックを許可またはブロックすることで、トラフィックを保護できます。Threat Intelligence のデータは、次のカテゴリに分けられます。
- Tor 終了ノード: Tor は、匿名通信を可能にするオープンソース ソフトウェアです。自分の ID を非表示にしたユーザーを除外するには、Tor の出口ノードの IP アドレス(トラフィックが Tor ネットワークから出るポイント)をブロックします。
- 悪意のある既知の IP アドレス: ウェブ アプリケーションに対する攻撃の発生源であることがわかっているため、アプリケーションのセキュリティを強化するためにブロックする必要がある IP アドレス。
- 検索エンジン: サイトのインデックス登録を許可できる IP アドレス。
- VPN プロバイダ: 評価の低い VPN プロバイダが使用する IP アドレス。このカテゴリをブロックして、IP アドレスベースのルールを回避する試みを拒否できます。
- 匿名プロキシ: 既知の匿名プロキシで使用される IP アドレス。
- 暗号通貨マイナー: 既知の暗号通貨マイニング ウェブサイトで使用される IP アドレス。
- パブリック クラウド IP アドレス範囲: このカテゴリは、悪意のある自動ツールがウェブ アプリケーションを閲覧しないようにブロックできます。ご使用のサービスが他のパブリック クラウドを使用している場合は許可できます。
Threat Intelligence を使用するには、evaluateThreatIntelligence
一致式を上記のカテゴリの一つを表すフィード名とともに使用し、トラフィックをこれらのカテゴリの一部またはすべてに基づいて許可またはブロックするセキュリティ ポリシー ルールを定義します。また、Cloud Armor Enterprise に登録する必要があります。Cloud Armor Enterprise の詳細については、Cloud Armor Enterprise の概要をご覧ください。
Threat Intelligence を構成する
Threat Intelligence を使用するには、許可またはブロックするカテゴリに基づいて FEED_NAME
を指定し、evaluateThreatIntelligence('FEED_NAME')
一致式を使用してセキュリティ ポリシー ルールを構成します。各フィード内の情報は継続的に更新され、追加の構成を行わなくても、サービスを新たな脅威から保護します。有効な引数は次のとおりです。
フィード名 | 説明 |
---|---|
iplist-tor-exit-nodes |
Tor の出口ノードの IP アドレスと一致します |
iplist-known-malicious-ips |
ウェブ アプリケーションを攻撃することが知られている IP アドレスと一致します |
iplist-search-engines-crawlers |
検索エンジンのクローラの IP アドレスと一致します |
iplist-vpn-providers |
評価の低い VPN プロバイダが使用する IP アドレス範囲と一致します |
iplist-anon-proxies |
公開の匿名プロキシに属する IP アドレス範囲と一致します |
iplist-crypto-miners |
暗号通貨マイニング サイトに属する IP アドレス範囲と一致します |
iplist-cloudflare |
Cloudflare プロキシ サービスの IPv4 および IPv6 アドレス範囲と一致します。 |
iplist-fastly |
Fastly プロキシ サービスの IP アドレス範囲と一致します。 |
iplist-imperva |
Imperva プロキシ サービスの IP アドレス範囲と一致します。 |
iplist-public-clouds
|
|
新しいセキュリティ ポリシー ルールは、次の gcloud
コマンドを使用して構成できます。コマンドには、上記表の FEED_NAME と、任意の ACTION(allow
、deny
、throttle
など)を指定します。ルールのアクションの詳細については、ポリシーのタイプをご覧ください。
gcloud compute security-policies rules create 1000 \ --security-policy=NAME \ --expression="evaluateThreatIntelligence('FEED_NAME')" \ --action="ACTION"
Threat Intelligence が評価からブロックする可能性のある IP アドレスまたは IP アドレス範囲を除外する場合は、次の式を使用してアドレスを除外リストに追加し、ADDRESS
を除外するアドレスまたはアドレス範囲に置き換えます。
evaluateThreatIntelligence('iplist-known-malicious-ips', ['ADDRESS'])
名前付き IP アドレスリストを使用する
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 アドレスに基づいてリソースへのアクセスを許可またはブロックするセキュリティ ポリシーを作成できます。詳細については、Google Cloud Armor セキュリティ ポリシーを構成するをご覧ください。
名前付き IP アドレスリストを使用するには、Google Cloud Armor Enterprise に登録し、Cloud Armor Enterprise にプロジェクトを登録する必要があります。詳細については、名前付き 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 CLI コマンドを使用します。
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 Enterprise は一般提供されています。サードパーティの名前付き IP アドレスリストの可用性は次のとおりです。
- Google Cloud Armor Enterprise ティアに登録している場合は、登録済みプロジェクトで名前付き IP アドレスリストの使用ライセンスが付与されています。名前付き IP アドレスのリストを含むルールを作成、更新、削除できます。
- Google Cloud Armor Enterprise ティアのサブスクリプションが期限切れになった場合、または Standard ティアに戻した場合、名前付き IP アドレスリストを含むルールの追加や変更はできませんが、既存のルールを削除し、ルールを更新することで名前付き IP アドレスリストを削除できます。
- 名前付き IP アドレスのリストを含むルールが Google Cloud Armor Enterprise に登録されていない場合は、名前付き IP アドレスのリストを使用して既存のルールを引き続き使用し、更新や削除を行うことができます。このようなプロジェクトでは、名前付き IP アドレスのリストを含む新しいルールを作成できます。