🍚

CloudFront用のマネージドプレフィックスリストを使おうとしたら、ルール数の上限とかいう罠にハマった話

2022/11/09に公開

経緯

  • EC2の前にCloudFrontを置きました
  • EC2にhttpやhttpsでは直接アクセスできないようにしたいです
  • セキュリティグループやネットワークACLにCloudFrontのIPを全部登録するのはツライのでヤダ
    • ここを見れば、一応IPの一覧が分かるが、、、

ならば、マネージドプレフィックスリストを使って、インバウンドのホワイトリストを設定しよう!!
https://aws.amazon.com/jp/blogs/news/limit-access-to-your-origins-using-the-aws-managed-prefix-list-for-amazon-cloudfront/

早速やってみる

  • VPCのメニューを辿って、CloudFront用のマネージドプレフィックスリストを確認(CloudFront用のものが最初から用意されている)
    • 名前をメモっておく
  • 設定したいEC2のセキュリティグループのインバウンドに、マネージドプレフィックスを指定したルールを追加
    • パッと見てCloudFront用か判断できないので、事前に名前を確認しておく必要がある
  • ルールを保存!
The maximum number of rules per security group has been reached

設定失敗!!

なぜ、エラーになったのか?

セキュリティグループ当たりのインバウンドルール上限に引っかかったからです。

  • セキュリティグループのインバウンドルールは、デフォルトで60個までしか登録できない
  • CloudFrontのマネージドプレフィックスリストに登録されている件数は現在45個だが、個数にカウントされる値はマネージドプレフィックスリストの最大エントリのパラメーターとなっており、これが55
  • つまり、CloudFrontのマネージドプレフィックスをセキュリティグループに設定すると、自由に設定できるのは残りたったの5個!!

上に貼ったキャプチャのように5個以上設定してたので、上限を超えてエラーになってしまったようです。
ちなみに少し前まではもっとひどくてデフォルト50だったらしく、最初から上限を突破していたみたいですね。

参考

https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-security-groups
https://aws.amazon.com/jp/blogs/news/limit-access-to-your-origins-using-the-aws-managed-prefix-list-for-amazon-cloudfront/#:~:text=CloudFront マネージドプレフィックスリストは、セキュリティグループ内で 55 ルールとしてカウントされることに注意してください。

上限緩和申請をしよう!

5個しか登録できないという不便に耐える必要はなく、上限緩和の申請ができます。

  • AWSのコンソールから、Service Quotasに行き、VPCを選択。その後、Inbound or outbound rules per security groupを選びましょう。

  • 真の上限100で申請

  • 1時間くらい待ったら、60から100に変更されていた

改めてセキュリティグループの設定をしよう

設定できました!!

以上です

NCDCエンジニアブログ

Discussion