AWS WAF を使用して特定の国または地理的場所からのリクエストを許可またはブロックするにはどうすればよいですか?
簡単な説明
地理的一致ルールステートメントを使用して、特定の国からのサイトへのアクセスをブロックしたり、特定の国からのアクセスのみを許可したりします。
発信国に基づいて一部のウェブリクエストを許可するには、許可したい国の地理的一致ルールステートメントを追加します。その後、ブロックしたい国の 2 つ目の地理的一致ルールステートメントを追加します。
注: CloudFront の地理的制限を使用して国によるコンテンツへのアクセスをブロックすると、その国からのリクエストはすべてブロックされ、AWS WAF に転送されません。他の AWS WAF 条件で地理に基づきリクエストを許可またはブロックしたい場合は、代わりに AWS WAF 地理的一致ルールステートメントを使用します。
解決方法
AWS WAF を使用して特定の国または地理位置からのリクエストを許可またはブロックするには、次の操作を実行します。
1. AWS WAF コンソールを開きます。
2. ナビゲーションペインの [AWS WAF] の下で、[Web ACL] (ウェブ ACL) を選択します。
3. [Region] (リージョン) で、ウェブ ACL を作成した AWS リージョンを選択します。
注:ウェブ ACL が Amazon CloudFront 用に設定されている場合は、[Global] (グローバル) を選択します。
4. ウェブ ACL を選択します。
5. [Rules] (ルール) を選択し、[Add Rules] (ルールを追加)、[Add my own rules and rule groups] (独自のルールとルールグループを追加) の順に選択します。
6. [Rule Builder] (ルールビルダー) に、ルールの名前を入力します。
注: 名前には、A~Z、a~z、0~9、- (ハイフン)、_ (アンダースコア) など、1~128 文字の有効な文字を使用する必要があります。
7. [If a request] (リクエストが次の場合) で、[matches the statement] (ステートメントに一致) を選択します。
8. [Choose an inspection] (検査の選択) オプションで、[Originates from a country] (国から発信) を選択します。
9. [Choose country codes] (国コードの選択) で、リクエストを検査する国を選択します。
10. (オプション) 発信国の決定に使用する [Source IP address] (送信元 IP アドレス) または [IP address in header] (ヘッダーの IP アドレス) を選択します。
警告: リクエストが CDN または他のプロキシネットワークを介してルーティングされる場合、送信元 IP アドレスによってプロキシが識別されます。その後、
ヘッダーで、オリジナル IP アドレスが送信されます。[IP address in header] (ヘッダーの IP アドレス) を使用する場合は注意が必要です。ヘッダーはプロキシによって一貫性のない処理が可能で、検査をバイパスするように変更される可能性があるためです。
11. [Action] (アクション) で、[Allow] (許可) を選択してリクエストを許可するか、[Block] (ブロック) を選択して、ステップ 9 で選択した国からのリクエストをブロックします。
注: リクエストをブロックまたは許可する場合は、ウェブ ACL のために設定されているデフォルトのアクションを検討してください。デフォルトのアクションが [Block] (ブロック) の場合、このステップで明示的に許可されている国を除いて、すべての国からのリクエストがブロックされます。これは、許可される地理的リクエストを管理する最も単純な設定ですが、この設定ではリクエストの内容を検査する機会がありません。
デフォルトアクションが [Allow] (許可) の場合、否定 (NOT) ルールを作成して、ブロックされてはならない国を指定できます。このルールでのアクションはブロックである必要があります。これにより、許可したい国からのリクエストをブロックしないが、明示的に許可することもないルールが作成されます。リクエストは、デフォルトアクションで許可される前に、悪意のあるコンテンツの検査など、他のユーザー定義ルールに合格するまで待つ必要があります。これはより堅牢な設定です。
12. [Add Rule] (ルールを追加) を選択します。
13. (オプション) [Set Rule Priority] (ルール優先度を設定) で、ルールを選択し、優先順位を変更します。ルールは、表示される順序で処理されます。
詳細については、「ウェブ ACL でのルールおよびルールグループの処理順序」を参照してください。
14. [Save] (保存) を選択します。