はじめに
AWS のネットワーク構成を考えていると、
次のような疑問を持つことがあります。
VPC 内の EC2 から AWS サービスにアクセスするとき、必ず NAT Gateway は必要?
- NAT Gateway の通信料が思ったより高い
- セキュリティ的に「インターネット経由」は避けたい
- こうした課題を解決する仕組みが VPC エンドポイント です。
本記事では、
VPC エンドポイントの仕組み・種類・使いどころ を、
ネットワークが得意でない方でもイメージできるように整理します。
VPC エンドポイントとは?
VPC エンドポイント とは、
VPC 内のリソースが、
インターネットを経由せずに AWS サービスへ接続できる仕組み
です。
通常、プライベートサブネットの EC2 から AWS サービス(S3 や SSM など)へ接続する場合、
EC2 → NAT Gateway → Internet → AWS サービス
という経路になります。
VPC エンドポイントを使うと、
EC2 → VPC Endpoint → AWS サービス
となり、インターネットを通らない通信 が可能になります。
なぜ VPC エンドポイントが必要なのか?
① セキュリティ向上
- インターネットに出ない
- セキュリティグループ・IAM で制御可能
- 攻撃面(Attack Surface)を減らせる
② コスト削減
- NAT Gateway の 時間課金・転送料金を削減
- S3 など通信量が多い場合に効果大
③ ネットワーク構成がシンプルになる
- NAT Gateway の台数・冗長構成を考えなくてよい
- ルートテーブルが分かりやすくなる
VPC エンドポイントの種類
VPC エンドポイントには 2 種類 あります。
🟦 1. Gateway Endpoint
特徴
- ルートテーブルに追加するタイプ
- 対応サービスが限定的
- 追加コストなし(無料)
対応サービス
- S3
- DynamoDB
イメージ
EC2 → Gateway Endpoint → S3
向いているケース
- S3 へのアクセスが多い
- NAT Gateway の通信量を減らしたい
- コストを抑えたい
🟩 2. Interface Endpoint(PrivateLink)
特徴
- ENI(Elastic Network Interface)が作成される
- セキュリティグループで制御
- 時間課金 + データ転送料金あり
対応サービス
- SSM / EC2 Messages
- CloudWatch
- ECR
- Secrets Manager
- KMS など
イメージ
EC2 → Interface Endpoint(ENI)→ AWS サービス
Gateway と Interface の違い
| 項目 | Gateway Endpoint | Interface Endpoint |
|---|---|---|
| 対象サービス | S3 / DynamoDB | 多数 |
| 接続方式 | ルートテーブル | ENI |
| セキュリティ制御 | IAM / ポリシー | SG + IAM |
| コスト | 無料 | 有料 |
| NAT 削減効果 | 大 | 中 |
Session Manager / Fleet Manager との関係
これまでの記事で触れた Session Manager / Fleet Manager も、
実は VPC エンドポイントと相性が非常に良いです。
Session Manager / Fleet Manager は以下の通信を必要とします。
- SSM
- EC2 Messages
- SSMMessages
これらを Interface Endpoint で用意すれば、
- NAT Gateway 不要
- インターネット不要
- 完全に閉域での運用
が可能になります。
👉 「踏み台なし + インターネットなし + SSM 接続」という、かなり強い構成になります。
よくある構成例
✔ セキュリティ重視構成
- プライベートサブネットのみ
- NAT Gateway なし
- S3 → Gateway Endpoint
- SSM / CloudWatch → Interface Endpoint
✔ コスト最適化構成
- NAT Gateway を最小限に
- 通信量が多い S3 は Gateway Endpoint
- 必要な Interface Endpoint のみ追加
注意点・ハマりどころ
⚠ Interface Endpoint は有料
- 時間課金 + データ転送課金
- NAT Gateway より安くなるとは限らない
👉 通信量・時間を見て判断が必要
⚠ エンドポイントを作っただけでは使えない
- ルートテーブル
- セキュリティグループ
- IAM ポリシー
の設定が必要。
⚠ DNS の挙動
- Private DNS を有効にすると既存の AWS SDK / CLI がそのまま動く
- 無効だとエンドポイント専用の DNS 名が必要
どんなときに導入すべきか?
導入を検討すべきケース
- セキュリティ要件が厳しい
- NAT Gateway の通信量が多い
- SSM / ECR / CloudWatch を多用
- プライベートサブネット完結構成にしたい
まとめ
- VPC エンドポイントは AWS サービスへの“近道”
- インターネットを経由しないため安全
- NAT Gateway のコスト削減に効く
- Gateway / Interface の違いを理解することが重要
ネットワークが少し難しく感じる分野ですが、「NAT を通さずに AWS に直接つなぐ仕組み」
と捉えるとイメージしやすくなります。