AWS WAFの公開設定を色々とためしてみました
事前準備
- Amazon CloudFrontとAmazon S3を組み合わせて公開
Amazon CloudFront #001 - Amazon S3と組み合わせて公開
Amazon CloudFrontと組み合わせた公開
AWS WAFとAmazon CloudFrontを組み合わせて公開する方法です。
任意名称を設定。リソースタイプにCloudFrontを選択。対象のCloudFrontディストリビューションを選択。その他は今回はデフォルトのまま設定。




指定IPのみ公開
AWS WAFで指定IPのみ公開する方法です。
事前準備として、Web ACLの設定。
任意名称を設定。リージョンにCloudFrontを選択。IPv4を選択。対象のIPアドレスを設定。 → 「Create IP set」をクリック。

「Web ACLs」をクリック → 対象のWeb ACLをクリック。

「Rules」をクリック → 「Add rules」をクリック → 「Add my own rules and rule groups」をクリック。

IP setを選択。任意名称を設定。IP setに設定したIP設定を選択。Source IP addressを選択。ActionはAllowを設定 → 「Add rule」をクリック。

Rulesに設定されたのを確認できます。次にデフォルトルールの「Edit」をクリック。

Default actionはBlockを選択。Response codeは403を設定 → 「Save」をクリック。

設定したIPからURLにアクセスするとWebSiteが表示されます。指定IP以外はWebSiteが表示されません。

Basic認証公開
AWS WAFでBasic認証で公開する方法です。
↓ 参考にさせて頂きました。
AWS WAFだけで、Basic認証を設定してみた
事前準備として、Web ACLの設定。
「Web ACLs」をクリック → 対象のWeb ACLをクリック。

「Rules」をクリック → 「Add rules」をクリック → 「Add my own rules and rule groups」をクリック。

Rule builderを選択。任意名称を設定。タイプはRegular ruleを選択。Statementはキャプチャ内容で設定。String to matchにはユーザー名とパスワードをbase64で変換した値を格納。ActionはBlockを設定。Custom responseはキャプチャ内容で設定 → 「Add rule」をクリック。


URLにアクセスするとユーザーとパスワードの入力画面が表示されます。

設定したユーザーとパスワードを入力するとWebSiteが表示されます。
リクエスト制限
AWS WAFでリクエスト制限する方法です。
事前準備として、Web ACLの設定。
「Web ACLs」をクリック → 対象のWeb ACLをクリック。

「Rules」をクリック → 「Add rules」をクリック → 「Add my own rules and rule groups」をクリック。

Rule builderを選択。任意名称を設定。タイプはRate-based ruleを選択。Request rate detailsはRate limitを今回は100で設定。ActionはBlockを設定 → 「Add rule」をクリック。

5分間に指定回数以上アクセスがあるとブロックされます。指定回数以下になるとアクセスが可能になります。

AWS WAFを利用することで、Amazon CloudFrontと組み合わせた公開や、今回試したIP制限・Basic認証・リクエスト制限以外にもさまざまな設定が可能です ![]()
次回は、Amazon Route 53も組み合わせた方法も紹介できたらと思います。
AWS WAFとAmazon CloudFrontについて、他にも記事を書いています。よろしければぜひ ![]()
tags - AWS WAF
tags - Amazon CloudFront
やってみたシリーズ ![]()
tags - Try



















