aws s3 ls
VPC にプライベート サブネットがあります。パブリック サブネットからこのインスタンスに SSH 接続しました。NAT ゲートウェイを使用すると、問題なくすべてのバケットを実行して表示できます。
プライベートサブネットに関連付けられたルートテーブルから NAT ゲートウェイを削除し、S3 へのフルアクセスを開く VPC エンドポイントを追加しても、バケットを一覧表示できません。何が間違っているのでしょうか?
両方のサブネットに関連付けたネットワーク ACL は完全にオープンです。
答え1
VPC Endpoint
これは問題のトラブルシューティングに非常に役立つリソースですS3
。 https://aws.amazon.com/premiumsupport/knowledge-center/connect-s3-vpc-endpoint/
TL;DR トラブルシューティング手順は次のとおりです。
- VPCでDNS解決を有効にする必要があります
- ゲートウェイVPCエンドポイントを使用してAmazon S3へのルートがあることを確認してください
- 利用可能なアウトバウンドルールがAmazon S3へのトラフィックを許可していることを確認する
- ネットワークACLルールはTCPポート1024-65535からの受信とS3への送信を許可していますか?
- エンドポイント ポリシーを確認します。ポリシーが S3 バケットまたは接続の問題の影響を受ける IAM ユーザーへのアクセスをブロックしていないかどうかを確認します。
- バケットポリシーで、ゲートウェイ VPC エンドポイントと接続する VPC からのアクセスが許可されていることを確認します。
- IAMユーザーまたはロールに関連付けられたユーザーがAmazon S3にアクセスするための適切な権限を持っていることを確認してください。
- AWS CLI の設定が正しいことを確認してください。