ヤマムギ

growing hard days.

*

CloudFrontのカスタムヘッダーがなければALBのルーティングで403レスポンスを返す

      2022/04/12

大阪リージョンにはWAFがまだないです(2021年4月現在)

今のこのブログの構成は、上図でして、ALBのセキュリティグループはどこからでもリクエストを受けています。

とすると、こんなどうでもいいアクセスもたくさん受けてしまいます。
CloudFront側ではWAFでブロックしたりもしてるのですが、ALBのIPに直接来たリクエストは受けてました。
以前、東京リージョンで運用してたときは、CloudFrontのカスタムヘッダーがなければ、ALB側に設定したWAFでブロックしてたのですが、大阪リージョンにはWAFがありません。
ですが、よくよく考えるとALBにはルーティングがあるじゃないかと(気づくのが遅い)。

ということでルーティングのルール設定をしました。

CloudFrontの設定

オリジンにカスタムヘッダーを設定しました。

ALBの設定

ルールを挿入して、CloudFrontで追加されたカスタムヘッダーがHTTPヘッダーにあるときだけ、ターゲットグループにルーティングするようにしました。

それ以外は503を返すようにしました。
(攻撃者に対して503でいいのかな?)

後でApplication Load Balancers へのアクセスを制限するを参考に403に変更しました。
クライアント側のリクエストに原因があるのでそれはそうですね。

テスト

Postmanでテストしました。

ALBのDNSに、カスタムヘッダーのヘッダーなしでGETリクエストをしたら、503エラーになりました。
予定通りです。

CloudFrontのカスタムヘッダーをリクエストヘッダーに手動で追加してPostmanからGETリクエストを実行したら、EC2へルーティングされました。
OKです。

まとめ

要件を満たすことができて、WAFのコストも削減できました。
実現方法を複数知っていると、何らかの制約ができたときにも対応しやすいですね。
もっともっと機能やサービスを知っていかなければです。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

  関連記事

AWS AmplifyでTodoアプリを作るハンズオンをやってみました

【お手軽ハンズオンで AWS を学ぶ】AWS Amplify で Todo アプ …

Amazon EC2のスクリーンショットとは

ドキュメント見てたらAmazon EC2でスクリーンショットって機能があったので …

AWS Organizationsでアカウントを50作って指定したOUに移動するスクリプト

AWS Organizationsでアカウントを50個作る必要がありましたので、 …

S3 Intelligent-Tieringのオブジェクトの階層移動をCloudWatchメトリクスで確認

CloudWatchメトリクスの保存期間は現時点で15ヶ月(455日)なのでそろ …

CloudWatchエンドポイントがIPv6に対応したのでCloudWatchエージェントからカスタムメトリクスを送信しました

追記 翌日のブログで、CloudWatchエージェントのアップデートにより、Cl …

AWS Certificate Manager(ACM)メール検証をDNS検証の証明書に差し替えました

ブログの証明書 このブログの証明書の有効期限があと1週間です。 証明書はAWS …

Amazon Aurora Serverless のログをCloudWatch Logsに出力する

WordPress W3 Total Cache のDatabaseCacheを …

AWS Service CatalogポートフォリオをOrganizations組織で共有する

AWS Service Catalogチュートリアルで作成したポートフォリオのO …

AWS Secrets Manager交代ユーザーローテーション

AWS Secrets Managerの交代ユーザーローテーションを確認してみま …

AWS Organizationsのルートユーザー管理(Root user management)でメンバーアカウントのルートユーザー認証を無効にしました

2024年11月発表のAWS Organizations を使用するお客様のため …