CloudFront用のManaged prefix listを試してみました

#はじめに
CloudFront用のManaged prefix listが利用できるようになったということで、試してみました。
※中国、ジャカルタ、大阪リージョンではまだ利用はできないようです。

[Amazon VPCでAmazon CloudFront向けのAWS Managed prefix listが利用可能に](https://aws.amazon.com/jp/about-aws/whats-new/2022/02/amazon-cloudfront-managed-prefix-list/)

#検証構成
![構成図.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/b13357d0-8cb9-a7c0-f133-818b51e69349.png)


#検証準備
* Test用Webサーバ#1、#2をAmazon Linux2でデプロイ
* Test用Webサーバ#1、#2にApacheをインストール
* Test表示用のページとしてそれぞれのサーバに以下ファイルを作成
    * Test用Webサーバ#1：　/var/www/html/Linux1A/index.html
    * Test用Webサーバ#2：　/var/www/html/Linux1C/index.html
* Test用index.htmlファイル内容
    * Test用Webサーバ#1：\<h1>\<font color="blue">Test-Amazon-Linux-1A\</font>\</h1>
    * Test用Webサーバ#2：\<h1>\<font color="green">Test-Amazon-Linux-1C\</font>\</h1>   
* ALBのターゲットグループにTest用Webサーバ#1、Test用Webサーバ#2を設定
* パスベースのルーティングとして以下を設定
    * パスが/Linux1A/*の場合はTest用Webサーバ#1に振り分け
    * パスが/Linux1C/*の場合はTest用Webサーバ#2に振り分け

#Managed prefix list設定前
CloudFront経由での接続
![マネージドプレフィックス設定前_CloudFront_1A.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/a8ce3766-cb8f-5890-9cdc-893ca2ff812e.png)
![マネージドプレフィックス設定前_CloudFront_1C.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/acb60f00-1222-15dd-57b7-91ddc12213ae.png)

ALB経由での接続（0.0.0.0/0 HTTPアクセス許可）
![マネージドプレフィックス設定前_ALB_1A.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/20f9c91a-8835-f67d-abae-991a5f485b8e.png)
![マネージドプレフィックス設定前_ALB_1C.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/f382a130-b74c-b937-4baa-f21e5a3feae0.png)

#ALBのセキュリティグループにManaged prefix listを設定
CloudFrontのManaged prefix listのプレフィックスIDを確認
![マネージドプレフィックス設定(2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/0c6eca20-2dd6-977c-8713-e9e17ee705d2.png)

もともと設定していた、0.0.0.0/0 HTTPアクセス許可のルールを削除
![マネージドプレフィックス設定(1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/8280e5a3-c54d-fa52-796b-69a69649ca9d.png)

CloudFrontのManaged prefix listからのHTTPアクセス許可ルールを設定
![マネージドプレフィックス設定(3).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/a5ba7166-bfd9-56b5-7569-b35f85b4bdd3.png)

設定できたら、ルールを保存
![マネージドプレフィックス設定(4).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/2b094aa8-e3ea-1d95-e99c-03e079f56d0b.png)

# Managed prefix list設定後の接続確認
CloudFront経由での接続
接続できました。
![マネージドプレフィックス設定後_CloudFront_1A.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/2a8de005-1038-e87a-f92e-5750b9092663.png)
![マネージドプレフィックス設定後_CloudFront_1C.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/d0a8123a-69d1-ef61-f9ea-8ce364547fb4.png)

ALB経由での接続（Managed prefix listからのHTTPアクセス許可）
想定通り接続することができなくなりました。
![マネージドプレフィックス設定後_ALB_1A.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/57a4479d-8de1-d188-d3a7-9b695394a6cf.png)
![マネージドプレフィックス設定後_ALB_1C.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2527101/cf853c38-575e-69e6-dd20-6580a7254933.png)

#さいごに
このアップデートにより、これまでより簡単にCloudFrontのオリジン(ALB,EC2など)への通信をCloudFrontからのみに制限できるようになりました。
CloudFrontを利用するにあたって有益なアップデートであったと思います。
引き続きAWS最新情報のキャッチアップをしていきたいです。