VPC プライベートエンドポイントへのアクセスの一元化 - スケーラブルで安全なマルチ VPC の AWS ネットワークインフラストラクチャを構築する

VPC プライベートエンドポイントへのアクセスの一元化

VPC エンドポイントを使用すると、インターネットゲートウェイや NAT デバイスを必要とせずに、サポートされている AWS のサービスに VPC をプライベートに接続できます。VPC 内のインスタンスは、パブリック IP アドレスがなくても、このインターフェイスエンドポイントを使用して AWS のサービスエンドポイントと通信できます。VPC と他のサービスとの間のトラフィックは、AWS ネットワークバックボーンから離れません。現在、2 種類のエンドポイントとして、インターフェイスエンドポイント (AWS PrivateLink を使用) とゲートウェイエンドポイントをプロビジョニングできます。ゲートウェイエンドポイントは自由にプロビジョニングできます。一元化のための強力なユースケースはありません。

インターフェイス VPC エンドポイント

インターフェイスエンドポイントは、1 つ以上の Elastic Network Interface で構成され、サポートされている AWS のサービスへのトラフィックのエントリポイントとなるプライベート IP アドレスが割り当てられます。インターフェイスエンドポイントをプロビジョニングすると、エンドポイントを実行した時間ごとにコストがかかります。デフォルトでは、AWS のサービスにアクセスする VPC ごとにインターフェイスエンドポイントを作成します。したがって、複数の VPC で AWS の特定のサービスとやり取りするランディングゾーンのセットアップでは、コストがかかり、管理しにくい場合があります。これを回避するには、一元化された 1 つの VPC でインターフェイスエンドポイントをホストできます。すべてのスポーク VPC は、これらの一元管理されたエンドポイントを使用します。

AWS のサービスへの VPC エンドポイントを作成するときに、プライベート DNS を有効にすることができます。この設定を有効にすると、AWS マネージドの Route 53 プライベートホストゾーン (PHZ) が作成され、パブリック AWS サービスエンドポイントをインターフェイスエンドポイントのプライベート IP に解決できるようになります。マネージド PHZ は、インターフェイスエンドポイントを持つ VPC 内でのみ機能します。このセットアップでは、一元化された VPC でホストされている VPC エンドポイント DNS をスポーク VPC で解決できるようにしたい場合、マネージド PHZ は機能しません。これを克服するには、インターフェイスエンドポイントの作成時にプライベート DNS を自動的に作成するオプションを無効にします。または、図 18 に示すように、Route 53 PHZ を手動で作成し、インターフェイスエンドポイントを指す完全な AWS のサービスエンドポイント名でエイリアスレコードを追加することもできます。

図 18 – 手動で作成した PHZ

このプライベートホストゾーンは、ランディングゾーン内の他の VPC と関連付けられます。この設定により、スポーク VPC はフルサービスエンドポイント名を、一元化された VPC のインターフェイスエンドポイントに解決できます。

注記

共有プライベートホストゾーンにアクセスするには、スポーク VPC 内のホストが VPC の Route 53 リゾルバー IP を使用する必要があります。インターフェイスエンドポイントには、VPN および Direct Connect 経由でオンプレミスネットワークからもアクセスできます。条件付き転送ルールを使用して、フルサービスエンドポイント名のすべての DNS トラフィックを Route 53 リゾルバーのインバウンドエンドポイントに送信します。このインバウンドエンドポイントがプライベートホストゾーンに従って DNS リクエストを解決します。

図 19 では、Transit Gateway がスポーク VPC から一元化されたインターフェイスエンドポイントへのトラフィックフローを有効にしています。ネットワークサービスアカウントで VPC エンドポイントとそのプライベートホストゾーンを作成し、スポークアカウントでスポーク VPC と共有します。他の VPC とエンドポイント情報を共有する方法の詳細については、AWS Transit Gateway と AWS PrivateLinkAmazon Route 53 Resolver の統合に関するブログ記事を参照してください。

注意: VPC エンドポイントの分散アプローチ (つまり、VPC ごとのエンドポイント) を使用すると、VPC エンドポイントに最小特権ポリシーを適用できます。一元化されたアプローチでは、1 つのエンドポイントですべてのスポーク VPC アクセスにポリシーを適用して管理します。VPC の数が増えるに従って、単一のポリシードキュメントで最小特権を維持することの複雑さが増す可能性があります。単一のポリシードキュメントでは、影響範囲も拡大します。ポリシードキュメントのサイズも制限されます (20,480 文字)。

図 19 - インターフェイス VPC エンドポイントの一元化