2022.07.30  

【AWS】 CloudFrontのIP制限を行う(WAF)

AWS    

AWSのCloudFrontで特定のIPアドレスからのアクセスをブロックしたくなりました。
本記事はその際の設定方法のメモ書です。
設定には主にWAFを使用します。

設定手順

AWSにログインし、WAF&Sheldにアクセスします。
まずはブロックするIPアドレスを設定します。
設定にはIP setsに移動して、Global(CloudFront)を選択してCreate IP setを押下します。




IP set nameに任意の名前を設定します。
IP addresses欄にはアクセス制御を行いたいIPアドレスを入力します。
今回は10.0.0.0/32と入力しています。
入力が完了したらCreate IP setを押下します。



次にRule groupを作成します。
作成するには左ペインのRule groupsをクリックします。



Nameに任意のグループ名を入力します。
CloudWatch metric nameNameを入力すると自動で設定されます。
設定が完了したらNextを押下します。



RulesからAdd ruleを押下します。



下記の画像のように設定を行います。
Nameには任意のルール名を設定します。
InspectOriginates from an IP address inを選択すると、先ほどIP setsで設定したtest_ip_setが選択できるようになります。



続いて、Actionを設定します。
今回は条件に一致したIPアドレスからのアクセスを拒否したいのでBlockを選択します。
設定が完了したらAdd ruleを選択します。



設定が完了すると赤枠の部分が追加されます。
確認したらNextを押下します。
その次の画面でCreate rule groupを押下すればrule groupの作成は完了です。



次にWeb ACLを作成します。
作成するには左ペインからWeb ACLsを選択し、Create web ACLを押下します。



Nameに任意のACL名を入力してNextを押下します。



Add rulesからAdd my own rules and rule groupsを選択します。



Rule typeでRule groupを選択します。
Ruleには任意のルール名を設定します。(Web ACLs用のルールセットの名前)
Rule groupには先ほど作成したルールグループのtest_rule_groupを選択します。
設定が完了したらAdd ruleを押下します。


ルール設定が完了するとRules欄に先ほど作成したルールが追加されます。
Default web ACL action for requests that don't match any rulesでは設定したルール以外の条件で接続があった際の処理内容を設定します。
今回は設定したルールのIPアドレス以外は接続させたいのでAllowを選択します。



Request sampling optionsはEnableに設定します。
設定するとWeb ACLs の overview 画面から ブロックされた IP アドレスを確認できるようになります。
これでWeb ACLsの設定は完了です。


あとはCloudFrontのディストリビューションから対象のCloudFront、またはCreateを実行し、AWS WAF ウェブACLの項目で先ほど作成したWeb ACLを選択すれば設定は完了です。

コメント
現在コメントはありません。
コメントする
コメント入力

名前 (※ 必須)

メールアドレス (※ 必須 画面には表示されません)

送信