ヤマムギ

growing hard days.

*

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認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

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

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

 - AWS , ,

ad

ad

  関連記事

Amazon Connectから問い合わせ追跡レコード(CTR)をエクスポート

Amazon Connectから発信した電話に出たのか、出なかったのかを確認した …

VPCピア接続ではピア先VPCのセキュリティグループIDを指定できる

タイトルどおりです。 できることは知ってたのですが、試したことがなかったので、確 …

「Getting started with AWS Glue DataBrew」をやってみました

AWS Glue DataBrewを体験してみたくて、開発者ガイドのチュートリア …

AWS認定ソリューションアーキテクトアソシエイトのサンプル問題

AWS認定ソリューションアーキテクトアソシエイトのサンプル問題の解説を会社のブロ …

ALBのヘルスチェックでPHPとMySQL接続をチェック

当ブログで504エラーが発生して、オートスケーリングにより自動でインスタンスが置 …

Aurora Serverless Data APIを有効にしてQuery Editorを使ってみました

Aurora ServerlessのMySQLでData APIを有効にして作成 …

Amazon API GatewayのIAM認証の動作を確認しました

API GatewayのIAM認証は、IAMユーザーが実行できるように認証する、 …

CloudWatch LogsをIPv6アドレスを使用して送信する

このブログの構成からパブリックIPv4を減らすように設計変更しています。 もとも …

ヤマムギvol.23 Amazon RDS for MySQLとAmazon Aurora Serverlessの起動のデモをしました

ゴールデンウィーク毎朝デモ勉強会は終わったのですが、土曜日にやれるときがあれば、 …

boto3(Python SDK) s3 get_object でバイト範囲を指定する

S3のGetObjectアクションでバイト範囲を指定することができます。 それに …