내 VPC에 프라이빗 서브넷이 있습니다. 퍼블릭 서브넷에서 이 인스턴스에 SSH를 통해 연결했습니다. NAT 게이트웨이를 사용하면 aws s3 ls
문제 없이 모든 버킷을 실행하고 볼 수 있습니다 .
프라이빗 서브넷과 연결된 라우팅 테이블에서 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 구성이 올바른지 확인하세요.