VPCを実行していて、Amazon s3からファイルをダウンロードしてバックエンド処理を行うサーバーがそのネットワークのプライベート部分にある場合、内部でS3にアクセスしてそれらのファイルを取得できますか?または、NAT経由でパブリックインターネットにアクセスし、https経由でs3ファイルをダウンロードして、そのように処理する必要がありますか?
「インターネット」のようなユーザー名で、私はあなたがこれを知っていると思います。しかし、あなたが尋ねたので...
:)
VPCは本当にプライベートです。明示的に許可したトラフィックのみがVPCの境界を通過できます。
したがって、VPC内で、外部リソースへのアクセスが必要なインスタンスには、EIPを割り当てる必要があります(この場合、AWSのインフラストラクチャを使用して外部リソースにアクセスできます)、またはNAT Host (この場合、すべてのトラフィックは独自のNATを介してVPCから出力されます)。
独自のNAT Hostを提供することを選択した場合は、そのインスタンスのソース/宛先チェックを無効にする必要があること、および=を指すプライベートサブネットへのデフォルトルートを追加する必要があることに注意してください。 NATホスト。
UPDATE(2015-05-10):2015年5月11日の時点で、AWSはS3用の 「VPCエンドポイント」をリリースしました を使用すると、プロキシホストまたはNATインスタンスを経由せずにVPCから直接S3にアクセスできます。VPCの本当にプライベートな性質を尊重して、この機能デフォルトではオフになっていますが、AWSコンソールまたはAPIを使用して簡単にオンにできます。
インスタンスがVPCのパブリックサブネットにある場合:
インスタンスがVPCのプライベートサブネットにある場合:
結論として、S3にアクセスするには、インターネットにアクセスできる必要があります。