すこぶる.net

技術系備忘録など

AWS VPC Endpoint

VPCエンドポイントのゲートウェイエンドポイントとは

投稿日:

概要

前回 VPCエンドポイントのインターフェイスエンドポイントを VPCピアリングを用いることで集約し、コストを削減する記事を上げました。
今回はゲートウェイタイプを利用するメリットや、利用するとどのような状態になるのかを説明します。

VPCエンドポイントのゲートウェイエンドポイントはなぜ必要か

EC2 など VPC内のリソースから S3 にアクセスするには、IAMロールで権限を付与し操作するのが一般的です。
この状態は、インターネットゲートウェイ、もしくは NAT Gateway を使用してインターネットを経由して接続している形になると思います。

そこで、ゲートウェイエンドポイントを使用すると以下のメリットがあります。

  • AWS のプライベートなネットワーク内で接続ができ、インターネットに接続しないため通信がよりセキュアになる
  • ゲートウェイエンドポイントは作成および利用で追加料金が発生しないため、通信コストを削減できる
  • ゲートウェイエンドポイントのポリシーで接続先の制限が可能

また、RDS(Auora)から S3 に SELECT INTO OUTFILE S3 で S3 にデータを保存する際にも必要です。
EC2などと違い、パブリックアクセス “なし” を設定しているデータベースの場合は、アウトバウンド接続に制限があるため、自身で接続の許可を行うか、ゲートウェイエンドポイントを用意する必要があります。
※ パブリックアクセスを “あり” にするのは推奨できません。

ゲートウェイエンドポイントを使用するとどう変わるのか

ゲートウェイエンドポイントを作成してみました。ルートテーブルに注目してください。
pl-61a54008 という送信先があり、ターゲットにはS3用のゲートウェイエンドポイントを入れています。

ゲートウェイエンドポイント

ルートテーブル

pl-61a54008 というのは、東京リージョンの S3 に使用される IPリストです。それは、ルートから pl-61a54008 をクリックして遷移するか、VPC のマネージドプレフィックスリストで確認することができます。

マネージドプレフィックスリスト

実際に、VPC内の EC2 から dig コマンドで s3.ap-northeast-1.amazonaws.com を名前解決してみてください。以下のようにマネージドプレフィックスリストにある IP が返却されるはずです。
ゲートウェイエンドポイントを使用していない場合は、このように決まった IP が返ってくることはありません。

まとめ

ゲートウェイエンドポイントを導入した際のポイントとしては、経路が変わるだけなので基本的には変わらず IAMロールで操作の制御を行うということです。
前述のメリットもありますので導入を考えてみては良いかと思います。

ゲートウェイエンドポイントの公式ドキュメント: https://docs.aws.amazon.com/ja_jp/vpc/latest/privatelink/gateway-endpoints.html

-AWS, VPC Endpoint
-, ,

執筆者:

関連記事

NginxからプライベートのS3にリバースプロキシ

概要 Nginx から AWS にあるプライベートな S3 のバケットにリバースプロキシしたいという要件があったため、その方法をご紹介します。 AWS にある EC2 上からであれば、IAM Role …

【AWS Lightsail】データベースのタイムゾーン変更方法

Amazon Lightsail のデータベースのタイムゾーン変更方法について Amazon Lightsail のデーターベースを使っているときに、time_zone を UTC から Asia/T …

DNSの多段CNAMEとRoute53のエイリアスレコードとは

多段 CNAME とは 多段 CNAME とは、 DNS において、 CNAME レコードに別の CNAME レコードを登録することです。 具体的には以下のようなレコードを多段 CNAME といいます …

VPCピアリングで他VPCのVPCエンドポイント(インターフェイス)を利用する方法

現状と課題 AWSのコストカットをしたいと思い、Cost Exploer で確認したところ、VPCエンドポイントの利用料金が高額になっていることに気づきました。 2024年3月時点で、VPCエンドポイ …

【ALB】ターゲットがunhealthyでもつながる仕様

AWS ALBの動作について AWSで使用しているALB(Application Load Balancer)の動作で誤解していたことがあった。 ALB配下にEC2インスタンスを複数台ぶら下げた状況で …