Help us understand the problem. What is going on with this article?

「AWS WAF」を導入してみた。- IP addresses編

More than 3 years have passed since last update.

はじめに

2015年のre:Inventで「AWS WAF」が発表されました。

AWS WAFはアプリケーション用のファイアウォールで、
IP address、SQL injection、String matchingに関するアクセスの制御ができます。

ただ、このサービスを利用するにはCloudFront経由でのアクセスにしか対応していないため、ELBやEC2にWAFを導入する場合はCloudFrontを配置する必要があります。

今回はIP addressesの設定を行います。
その他の設定については以下を参照ください。
「AWS WAF」を導入してみた。- SQL injection編
「AWS WAF」を導入してみた。- String matching編

1.新規設定

今回は新規で特定IPアドレスからのアクセスをブロックする設定をします。
まずはじめに画面中央にある「Get started」をクリックします。
aws-waf_2015120101.png

Concepts overview画面が表示されますが右下の「Next」をクリックします。
aws-waf_2015120102.png

Step 1: Name web ACL

作成するWeb ACLの名前を入力します。これはWAFで設定する複数のルールをまとめるためのグループ名となるので、導入するサービス名などをつけるのが良いと思います。
今回は「waf-test-acl」にします。
aws-waf_2015120103-step1.png

Step 2: Create conditions

今回はIPアドレスのアクセスコントロール設定をするので「IP match conditions」の「Create IP match condition」をクリックします。
aws-waf_2015120103-step2-1.png

するとIPアドレスを設定する画面がポップアップされるためIPアドレス名とIPアドレス(レンジ指定可)を入力して「Create」をクリックします。
aws-waf_2015120103-step2-2-1.png

作成が完了したら「Next」をクリックします。

Step 3: Create rules

「Create rule」をクリックするとルールを設定する画面がポップアップされます。
aws-waf_2015120103-step3-1.png

今回の場合は「リクストが該当IP(waf-test-ip)からのアクセスからの場合」というルールを設定しています。
aws-waf_2015120103-step3-2-1.png

設定が完了したら「Create」をクリックします。
作成したらそのルールにマッチした際のアクション(Allow, Block, Count)と、マッチしない場合のデフォルトアクション(Allow, Block)を設定し「Next」をクリックします。
aws-waf_2015120103-step3-3.png

今回はデフォルトアクションをAllowとし、該当IP(ip-deny-rule)からのリクエストはBlockを設定します。

Step 4: Choose AWS resource

Resourceの項目を適用したいCloudFrontに設定して「Review and create」をクリックします。
aws-waf_2015120103-step4-1-1.png

Step 5: Review and create

最後に今までのStepで設定した内容が表示されるのでOKであることを確認して「Confirm and distribution」をクリックします。
aws-waf_2015120103-step5-1-1.png

作成が完了した後「Requests」タブをクリックするとリクエストログが確認できます。
aws-waf_2015120104-1.png

2.動作確認

まずはリクエストが無いことを確認します。
aws-waf_2015120105.png

CloudFront経由でサーバへブラウザアクセスすると以下の画面が表示されます。
aws-waf_2015120106-1.png

再度リクエストログのMatches ruleを確認すると「ip-deny-rule(Block)」というログが出ているのが確認でます。

今回ブロック対象としたIPからのみブロックできているのが確認できました。
aws-waf_2015120107-1.png

以上で設定完了です。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした