2
2

More than 3 years have passed since last update.

CloudfrontにAWS WAFのManagedRuleを適用してみた

Last updated at Posted at 2020-01-14

目的

AWS WAFが便利と聞いておりましたが、まだ実運用したことがなかったので環境に適用してみました。
設定完了がゴールです。

構成図

前回の構成図にWAFを追加した形です。
Arch3.png

手順

AWS WAFの作成のため、WEB ACLsを作成します。

WAF1.PNG
リソース名を入力します。

WAF3.PNG

resource typeを選択します。cloudfront構築済環境ですので、cloudfrontを選択し、対象のresourceを選択します。

WAF2.PNG

次に進み、ルールを選択します。今回はmanaged rule groupを選択します。
WAF4.PNG

Add managed rule groupsからルールを選択します。
今回はS3静的サーバレス環境、かつ初めてなので「Admin protection」のみを適用しますが、WordPressやAP+DB構成を採用している場合は別の構成も検討した方がよさそうです。

WAF5.PNG

「Default web ACL action for requests that dont't match any rules」と聞かれるので「Allow」を選択します。
試しておりませんが、blockを選択するとアクセスできなくなると思われます。

WAF6.PNG

Set rule priorityを聞かれるのでルールの優先順位を設定します。今回は一件なのでデフォルトのまま、次へを選択します。

WAF7.PNG

configure metricsを聞かれるので、チェックしてメトリックを設定します。

WAF8.PNG

設定を確認し、create web ACLsをクリックします。

WAF9.PNG

気づき

1.設定の確認が難しそう
ACLの動作確認を行なう方法は、選択したルールに合わせた脆弱性診断を実施することだと考えられますが、簡単には実施できないので代替手段を検討すべきだと考えております。

2.利用料金
他のAWSサービスと同様に、使った分だけ課金されます。
今回設定した内容だとWebACL1つ、ルール一つなので\$5+\$1+\$0.6=$6.6/月ほどの利用料金となる予定です。
他のライセンスに比べて安いてすが、個人サイトでどこまで守るかは要検討だと考えております。Wordpress環境の場合PHP対策のルールやSQLiを利用した方がよいと考えてます。

リソースタイプ 料金        
Web ACL 5.00USD、月あたり (時間で案分)
ルール        1.00USD、月あたり (時間で案分)
リクエスト 0.60USD 100 万リクエストあたり
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2