ALBにWAFを関連付けて特定のヘッダー以外はブロックする
2020/07/25
おかげさまで、ブログのアクセスも増えてきて、t3.nano EC2インスタンス単体だと辛くなってきました。
久しぶりにElastic Load Balancing(ELB) Application Load Balancer(ALB)を挟んだ設計に戻そうと思います。
ついでに、CloudFrontからのカスタムヘッダー付きのリクエスト以外はALBでブロックします。
目次
WAFの設定
東京リージョンで構築してるので、東京リージョンでWAF ACLを作りました。
関連サービスとして、予めつくっておいた、ALBを選択しました。
ルールは、デフォルトをブロックとしました。
ヘッダーのフィールドと値が完全一致した際に許可する、としています。
Postmanでテスト
ヘッダーが指定できれば、何でテストしてもいいと思います。
手元にPostmanがあったので使いました。
ヘッダーを指定せずに、GETを実行すると、403エラーになりました。
ヘッダーを指定してGETを実行すると、NGINXのトップページが200 OKで返ってきました。
アクセスログにも PostmanRuntimeでログが出てました。
想定どおりの動作です。
CloudFrontの設定
オリジンの設定で、Origin Domain Nameに、ALBのパブリックDNSを指定して、Origin Custom HeadersにWAFに設定したヘッダーを追加しました。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
CodeWhisperer(Visual Studio Code)でセキュリティスキャン
CodeWhispererのセキュリティスキャンを実行してみました。 画面下の[ …
-
-
PyCharmにAWS CloudFormationプラグインをインストールして入力補完してみる
JetBrainsのPython統合開発環境(IDE)のPyCharmを1年ちょ …
-
-
AWS Certificate Manager(ACM)メール検証をDNS検証の証明書に差し替えました
ブログの証明書 このブログの証明書の有効期限があと1週間です。 証明書はAWS …
-
-
slackのbotをAWS Lambda(Python)+API Gatewayで構築
slackで投稿した内容に応じて返信したり調べ物したりしてくれるbotですが、こ …
-
-
AWS Systems Manager Fleet Manager Windows RDP Connectを試してみました
AWS Systems Manager Fleet Manager Window …
-
-
AWS SSOのパスワードリマインダーでADのパスワードを変更
AWS Managed Microsoft ADを構築してユーザー追加までで構築 …
-
-
Amazon EMR 「Hadoop を使用してビッグデータを分析」チュートリアルをやってみました
AWS認定データアナリティクス受験準備の一環で、Amazon EMRのチュートリ …
-
-
YouTubeチャンネル「ヤマムギ」をはじめました
YouTubeチャンネル「ヤマムギ」をはじめました。 2021年GWチャレンジと …
-
-
API Gateway 作成済REST APIの定義をSwaggerの形式でエクスポート
SAMで似たようなAPIを作りたくて、エクスポートしました。 Swaggerは、 …
-
-
Backlogの課題チケット更新内容をMicrosoft Teamsに通知する(AWS Lambda Python)
BacklogにSlack連携が追加されました。 ですが、私の所属している会社で …







