- 公開日
- 最終更新日
【AWS Organizations】「宣言型ポリシー」を使ってVPC BPAを有効化する際の既存設定への影響有無
この記事を共有する
目次
はじめに
こんにちは。サービスGの中野です。
今回、AWS Security Hubで検出される以下の項目に対し、AWS Organizations(以降、Organizations)の「宣言型ポリシー」を使うことで組織全体で是正対応できることを知り、色々調べてみました。
[EC2.172] EC2 VPC ブロックパブリックアクセス設定はインターネットゲートウェイトラフィックをブロックする必要があります
この記事では気になったことや検証結果をまとめているだけなので、細かい設定方法などはAWSドキュメントやAWSブログをご参考ください。
VPC BPA とは
VPC BPA(Block Public Access)は、VPCリソースに対するパブリックインターネットアクセスをブロックするセキュリティ機能です。
- 設定単位:アカウントのリージョンごとに設定可能
- モード :無効、双方向のトラフィックをブロック、インバウンドトラフィックのみブロック から選択可能
- 除外設定:特定のサブネットやVPCをブロックの対象外とすることが可能
詳しくはAWSドキュメントをご確認ください。
なお、宣言型ポリシーを使用する場合は、以下項目を指定し特定のOUやアカウントにポリシー適用する形になります。
- モード:無効、双方向のトラフィックをブロック、インバウンドトラフィックのみブロック
- 除外設定:作成を許可、作成を拒否
気になったこと
今回、Organizations配下ではVPC BPAを有効化しているアカウントもあれば、有効化していないアカウントもあり、有効化しているアカウントについては除外設定もしている状態でした。
この場合、Organizationsから宣言ポリシーを適用することで、既にVPC BPAを有効化しているアカウントに対して変な形で設定が上書きされ、除外設定が削除されてしまわないか⇒除外設定しているサブネット内にあるシステムで接続断が発生しないか、が気になり検証してみました。
結論・検証内容
結論、宣言型ポリシーを適用しても、各アカウントの除外設定は削除されず、ポリシー適用中も接続断は発生しませんでした。
実施した検証内容は、除外設定したサブネット内にEC2を1台立てて、そのEC2から継続的に"ping 8.8.8.8" を実行するという単純な検証内容です。パケットロスは0、応答時間も変化はありませんでした。
おまけ
その他の検証内容・躓いた部分を備忘録として残しておきます。
検証1
- 宣言型ポリシーで除外設定の作成を「拒否」した場合、既存の徐外設定はどうなるのか
⇒ 削除はされませんが、無効化となりました。(=接続断が発生)
検証2
- 宣言型ポリシーをデタッチした場合、アカウントごとのVPC BPAの設定はどうなるのか
⇒ 宣言型ポリシーをアタッチする前の状態(アカウントごとに元々設定されていた状態)に戻りました。
躓いた部分
アカウントステータスレポート の出力先S3バケットは、バージニア北部で作成する必要がありました。
(当初、東京リージョンにバケットを作成して、バケットポリシーをいじくりまわしていたのですが永遠にうまくいかず。。)
前提条件を確認したところ、以下の記載を見つけました。
S3 バケットは、リクエストが行われたリージョンと同じリージョンにあり、適切な S3 バケットポリシーを持っている必要があります。
Organizationsがグローバルサービスのため、レポート生成のリクエストもバージニア北部で行われるということか、と思いました。
おわりに
久しぶりにブログを書いてみました。どなたかの参考になれば幸いです。
この記事は私が書きました
中野 友加里
記事一覧身体動かすの好きです。頑張って同じくらい頭も動かします。