2025/04/17
概要
インターフェース型のVPCエンドポイントに設定するセキュリティグループにおいて、
アウトバウンドルールの設定は不要である。
なぜ不要なのかを調べたので、記事を書いた。
結論としては、
VPCエンドポイントとVPCエンドポイントサービスの通信は
PrivateLinkを介して行われるため、
VPCエンドポイントに設定するセキュリティグループのアウトバウンドルールは不要である。
VPCエンドポイントとは
そもそもVPCエンドポイントとは何か、について。
VPCエンドポイントとは、AWS VPC内にあるAWSリソースがインターネットを経由せずに
AWSサービスにアクセスできるようにするためのサービスである。
インターネットを経由せずにAWSサービスにアクセスできるため、
- セキュリティの向上
- データ転送のコスト削減 などが期待できる。
図で表すとこんな感じ。
VPCエンドポイントの種類
VPCエンドポイントには、以下の2種類がある。
- インターフェイス型エンドポイント
- ゲートウェイ型エンドポイント
インターフェース型エンドポイントは、AWSサービスに対して
Elastic Network Interface(ENI)を介して接続するためのエンドポイントである。
ゲートウェイ型エンドポイントは、S3やDynamoDBなどのAWSサービスに対して
VPCのルートテーブルを介して接続するためのエンドポイントである。
インターフェース型VPCエンドポイントの実態
インターフェース型VPCエンドポイントを作成すると、ENIが自動的に作成される。
このENIはVPCエンドポイントサービスと接続されるためのものである。
つまり、インターフェース型VPCエンドポイントの実態はENIであり、
VPC内のリソースはこのENIを介してVPCエンドポイントサービスに接続される。
図で表すとこんな感じ。
ENIとVPCエンドポイントサービスの通信
ENIとVPCエンドポイントサービスとの通信には、PrivateLinkが使用される。
PrivateLinkとは
PrivateLinkとは、VPC内のリソースがAWSサービスやVPCエンドポイントサービスに
アクセスするためのプライベートな接続を提供するサービス。
PrivateLinkはAWS管理のため、ユーザ側で管理や設定が不要のものとなる。
つまり、VPCエンドポイントから出る通信はAWS側で管理されるため、
ユーザ側でセキュリティグループのアウトバウンドルールを設定する必要がない。
上図から、
VPCエンドポイントに設定するセキュリティグループにおいて、
インバウンドルールは設定が必要であるが、
アウトバウンドルールは設定不要となるのである。
まとめ
インターフェース型のVPCエンドポイントに設定するセキュリティグループにて、
アウトバウンドルールが設定不要である理由について解説した。
CloudFormationで作成する際、アウトバウンドルールについては特に明記する必要はないが
明記しないとデフォルト値の0.0.0.0/0が設定される。
※繰り返しになるがこの設定値に意味はない。
一般的に、0.0.0.0/0は全ての通信を許可ことを意味するので、
設定値だけ見ればセキュリティに検知される場合がある。
そのため、CloudFormationで作成する際、セキュリティ検知がされる場合は
127.0.0.1/32などの最低限の設定のみを記載すると良い。