Community생산성 & 협업github.com

aws/VPC 엔드포인트 구성 (비공개 AWS 서비스 액세스)

AWS PrivateLink를 사용하여 비공개 AWS 서비스 액세스를 위한 VPC 엔드포인트(인터페이스 및 게이트웨이)를 구성합니다. 인터넷 게이트웨이, NAT 디바이스 또는 공용 IP 주소 없이 S3, DynamoDB 및 기타 AWS 서비스에 안전한 비공개 연결을 설정할 때 사용합니다. 엔드포인트 생성, 보안 그룹, 라우팅 테이블 및 DNS 구성을 다룹니다.

VPC 엔드포인트 구성 (비공개 AWS 서비스 액세스)란 무엇인가요?

이 스킬은 AWS PrivateLink를 활용하여 VPC 엔드포인트(인터페이스 및 게이트웨이 유형)를 구성하는 방법을 제공합니다. 인터넷 연결 없이도 AWS 서비스(S3, DynamoDB 등)에 안전하게 비공개로 액세스할 수 있도록 설계되었으며, 인터넷 게이트웨이, NAT 디바이스 또는 공용 IP 주소가 필요 없습니다. 주요 기능으로는 엔드포인트 생성, 보안 그룹 설정, 라우팅 테이블 업데이트, DNS 구성(프라이빗 DNS 활성화)이 포함됩니다. AWS CLI, AWS SDK, 또는 Terraform과 같은 IaC 도구를 사용하는 모든 환경에서 활용 가능하며, 보안 및 비용 최적화가 중요한 프로덕션 네트워크 아키텍처에 유용합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/aws/agent-toolkit-for-aws/tree/main/skills/configuring-vpc-endpoints-for-private-aws-service-access

Installed? Explore more 생산성 & 협업 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

VPC 엔드포인트 구성 (비공개 AWS 서비스 액세스)은(는) 무엇을 하나요?

AWS PrivateLink를 사용하여 비공개 AWS 서비스 액세스를 위한 VPC 엔드포인트(인터페이스 및 게이트웨이)를 구성합니다. 인터넷 게이트웨이, NAT 디바이스 또는 공용 IP 주소 없이 S3, DynamoDB 및 기타 AWS 서비스에 보안 비공개 연결을 설정할 때 사용하세요. 엔드포인트 생성, 보안 그룹, 라우팅 테이블 및 DNS 구성을 다룹니다.

사전 조건

  • 유효한 AWS 계정 및 자격 증명 (액세스 키 ID 및 시크릿 액세스 키)
  • AWS CLI 설치 및 구성
  • 기존 VPC 및 서브넷
  • 서비스에 따라 적절한 IAM 권한 (예: ec2:CreateVpcEndpoint, ec2:DescribeVpcEndpoints 등)

단계별 가이드

1. VPC 엔드포인트 생성

게이트웨이 엔드포인트 (S3, DynamoDB)

aws ec2 create-vpc-endpoint \
    --vpc-id vpc-12345678 \
    --service-name com.amazonaws.us-east-1.s3 \
    --route-table-ids rtb-12345678

인터페이스 엔드포인트 (기타 서비스)

aws ec2 create-vpc-endpoint \
    --vpc-id vpc-12345678 \
    --vpc-endpoint-type Interface \
    --service-name com.amazonaws.us-east-1.ec2 \
    --subnet-ids subnet-12345678 subnet-87654321 \
    --security-group-ids sg-12345678

2. 보안 그룹 구성

인터페이스 엔드포인트의 경우 TLS(443) 트래픽을 허용하도록 보안 그룹을 구성합니다.

aws ec2 authorize-security-group-ingress \
    --group-id sg-12345678 \
    --protocol tcp \
    --port 443 \
    --cidr 10.0.0.0/16

3. DNS 확인 설정

프라이빗 DNS 이름을 활성화하여 VPC 내에서 서비스를 이름으로 확인할 수 있도록 합니다.

aws ec2 modify-vpc-endpoint \
    --vpc-endpoint-id vpce-12345678 \
    --private-dns-enabled

4. 라우팅 테이블 업데이트

게이트웨이 엔드포인트는 라우팅 테이블에 경로를 자동으로 추가합니다. 수동 업데이트가 필요한 경우:

aws ec2 create-route \
    --route-table-id rtb-12345678 \
    --destination-cidr-block 0.0.0.0/0 \
    --vpc-endpoint-id vpce-12345678

예제: S3 게이트웨이 엔드포인트 구성

  1. S3 게이트웨이 엔드포인트 생성:
    aws ec2 create-vpc-endpoint --vpc-id vpc-12345678 --service-name com.amazonaws.us-east-1.s3 --route-table-ids rtb-12345678
    
  2. S3 버킷 정책을 비공개 엔드포인트로 제한:
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": "*",
          "Action": "s3:GetObject",
          "Resource": "arn:aws:s3:::example-bucket/*",
          "Condition": {
            "StringEquals": {
              "aws:SourceVpce": "vpce-12345678"
            }
          }
        }
      ]
    }
    

문제 해결

  • 엔드포인트 생성 실패: IAM 권한 및 서브넷 CIDR이 겹치지 않는지 확인하세요.
  • DNS 확인 오류: private-dns-enabled가 설정되었는지 확인하세요.
  • 연결 문제: 보안 그룹이 TLS(443) 트래픽을 허용하는지 확인하세요.

참고

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

aws/amazon-bedrock

Builds generative AI applications on Amazon Bedrock. Covers model invocation (Converse API, InvokeModel), RAG with Knowledge Bases, Bedrock Agents, Guardrails, and AgentCore. Use when invoking models, setting up Knowledge Bases, creating agents, applying guardrails, deploying to AgentCore, troubleshooting Bedrock errors (ThrottlingException, AccessDeniedException), or choosing models (Claude, Llama, Nova, Titan). ALSO USE for prompt caching setup and debugging, quota health checks and throttling diagnosis, cost attribution and tracking, migrating between Claude model generations (4.5 to 4.6 to 4.7), chunking strategies, API selection (Converse vs InvokeModel), guardrail capabilities, and model selection. Also covers AgentCore Payments setup (x402, microtransactions, Payment Manager, Connector, Instrument, Coinbase CDP, Stripe Privy, 402 Payment Required, pay for content, paid endpoint, agent payments). NOT for custom model training, Rekognition, or Comprehend.

aws/aws-amplify

Build and deploy full-stack web and mobile apps with AWS Amplify Gen2 (TypeScript code-first). Covers auth (Cognito), data (AppSync/DynamoDB), storage (S3), functions, APIs, and AI (Amplify AI Kit with Bedrock). Supports React, Next.js, Vue, Angular, React Native, Flutter, Swift, and Android. Always use this skill for Amplify Gen2 topics — even for questions you think you know — it contains validated, version-specific patterns that prevent common mistakes. TRIGGER when: user mentions Amplify Gen2; project has amplify/ directory or amplify_outputs; code imports @aws-amplify packages; user asks about defineBackend, defineAuth, defineData, defineStorage, defineFunction, or npx ampx. SKIP: Amplify Gen1 (amplify CLI v6), standalone SAM/CDK without Amplify (use aws-serverless), direct Bedrock without Amplify AI Kit (use bedrock).

aws/aws-billing-and-cost-management

Analyze AWS costs, find savings, manage budgets, evaluate Savings Plans and Reserved Instances, right-size EC2/Lambda/RDS/EBS with Compute Optimizer, look up service pricing, query CUR with Athena, detect cost anomalies, scope costs to billing views, and monitor Free Tier usage. Triggers on: AWS bill, cost analysis, reduce spend, savings plan, reserved instance, right-size, budget alert, cost optimization, pricing, free tier, cost anomaly, CUR, cost audit, billing view, billing view ARN.

aws/aws-cdk

Authors, deploys, and troubleshoots AWS infrastructure using CDK with TypeScript or Python. Covers best practices, stack architecture, and construct patterns. Always use when writing CDK constructs, bootstrapping environments, running cdk deploy/synth/diff, fixing CDK or CloudFormation errors, planning stack structure, importing existing resources, resolving drift, or refactoring stacks without resource replacement.

aws/aws-cloudformation

Author, validate, and troubleshoot AWS CloudFormation templates. Covers template authoring with secure defaults, pre-deployment validation (cfn-lint, cfn-guard, change sets), and root-cause diagnosis of failed stacks using CloudFormation events and CloudTrail correlation.

aws/aws-containers

Deploys and operates containerized workloads on ECS, Fargate, and ECR. Covers task definitions, Fargate services, ECR repository setup and lifecycle policies, ECS Exec debugging, service scaling, deployment strategies, load balancer integration, and logging configuration. Use when deploying, debugging, or optimizing containers on AWS. ALSO USE for container deployment options (ECS vs ECS Express Mode), networking modes, health check troubleshooting, OOM errors, secrets injection, blue/green deployments, ECR image management, and App Runner sunset guidance and migration. NOT for Kubernetes, EKS, or CI/CD pipelines.

aws/aws-iam

Verified corrections for IAM behaviors that AI agents frequently get wrong — policy evaluation edge cases, trust policy gotchas, STS session limits, Organizations quirks, and SAML/MFA specifics. Use alongside documentation when working with IAM roles, policies, STS, or Organizations. Do NOT use for non-IAM authorization like Cognito user-pool policies or app-level RBAC.

aws/aws-messaging-and-streaming

Guides use of AWS messaging and streaming services. Covers Amazon SQS, Amazon SNS, Amazon EventBridge, Amazon MQ, Amazon Kinesis Data Streams, Amazon Data Firehose, Amazon Managed Service for Apache Flink, and Amazon Managed Streaming for Apache Kafka (MSK). Use when implementing messaging and streaming patterns.

aws/aws-observability

Builds, configures, debugs, and optimizes AWS observability using CloudWatch (Logs Insights, Metrics, Alarms, Dashboards, EMF), X-Ray, CloudTrail, and ADOT. Covers Log Insights query syntax (fields, filter, stats, parse, pattern, join, subqueries), alarm configuration (metric, composite, anomaly detection, missing data treatment), dashboard design, custom metrics (PutMetricData, EMF, metric filters), X-Ray tracing (ADOT, sampling rules, annotations vs metadata), ADOT collector config, and CloudTrail auditing. Use when the user mentions CloudWatch, Log Insights, alarms, INSUFFICIENT_DATA, dashboards, custom metrics, EMF, X-Ray, traces, sampling, CloudTrail, who deleted, ADOT, OpenTelemetry, observability, monitoring, synthetics, canaries, or troubleshooting alarm behavior. Do NOT use for application logging setup, container log drivers, or security threat detection.

aws/aws-sdk-js-v3-usage

AWS SDK for JavaScript v3 development patterns. Use when writing JavaScript or TypeScript code that uses AWS services via @aws-sdk/* packages (aws-sdk-js-v3), or when asked about schemas, runtime validation, serialization, or code generation in the context of the JS/TS AWS SDK.

aws/aws-sdk-python-usage

AWS SDK for Python (boto3/botocore) development patterns. You MUST use this skill when writing Python code that uses AWS services via boto3 or botocore. This includes creating service clients or resources, configuring sessions and credentials, handling errors with ClientError, using paginators and waiters, S3 file transfers and presigned URLs, DynamoDB table operations, and any boto3/botocore client configuration. Use this skill whenever Python code imports boto3 or botocore, or when the user asks about AWS operations in Python.

aws/aws-sdk-swift-usage

AWS SDK for Swift development patterns. Use when writing Swift code that uses AWS services via aws-sdk-swift package.

aws/aws-serverless

Builds, deploys, manages, debugs, configures, and optimizes serverless applications on AWS using Lambda, API Gateway, Step Functions, EventBridge, and SAM/CDK. Covers cold starts, CORS debugging, event source mappings, troubleshooting, concurrency, SnapStart, Powertools, function URLs, EventBridge Scheduler, Lambda layers, and production readiness. Triggers on mentions of Lambda, API Gateway, Step Functions, SAM templates, CDK serverless stacks, DynamoDB stream triggers, SQS event sources, cold starts, timeouts, 502/504 errors, throttling, concurrency, CORS, Powertools, or any event-driven architecture on AWS, even without the word "serverless." Does not apply to EC2, ECS/Fargate containers, or Amplify hosting.

aws/aws-transform

Performs code upgrades, migrations, and transformations using the AWS Transform (ATX) CLI. Use when upgrading language versions, migrating AWS SDKs, migrating frameworks (Angular, Vue.js, Spring Boot, React), upgrading libraries, optimizing performance, migrating x86 to Graviton, analyzing codebases / generating documentation, or defining custom transformations with natural language. Runs locally on a few repositories or at scale across hundreds via AWS Batch/Fargate.

aws/connecting-lambda-to-api-gateway

Connects an existing AWS Lambda function to Amazon API Gateway by creating a REST or HTTP API with resource/method setup, Lambda proxy integration, permissions, and deployment. Always use this skill when connecting Lambda to API Gateway — it handles CORS, throttling, access logging, and production security hardening that are easy to miss.

aws/connecting-lambda-to-dynamodb

Connects an AWS Lambda function to DynamoDB with IAM roles, stream event source mapping, and read/write permissions. Use when setting up Lambda-DynamoDB integration, processing DynamoDB stream events, or deploying serverless event-driven architectures.

aws/connecting-to-data-source

Create and troubleshoot AWS Glue connections to JDBC databases (Oracle, SQL Server, PostgreSQL, MySQL, RDS), Redshift, Snowflake, and BigQuery. Gathers connection hints from user, discovers existing connections and RDS/Redshift candidates, registers credentials in Secrets Manager or IAM DB auth, configures VPC, and tests. Triggers on: connect to database, set up Glue connection, register data source, connect to Snowflake/BigQuery/RDS, connection timeout, test connection, troubleshoot connection. Do NOT use for moving data (use ingesting-into-data-lake), creating tables (use creating-data-lake-table), queries (use querying-data-lake), catalog exploration (use exploring-data-catalog), or SaaS (Salesforce, ServiceNow, SAP, MongoDB, Kafka).

aws/connecting-vpcs-with-peering

Establishes VPC peering connections between two VPCs for direct private network connectivity. Always use this skill when creating or managing VPC peering — it validates CIDR overlap, updates all route tables in both VPCs, configures DNS resolution, and provides security group guidance that are critical for correct connectivity.

aws/creating-amazon-aurora-db-cluster-with-instances

Creates a complete Amazon Aurora database cluster with instances, handling cluster creation, instance provisioning, and Secrets Manager password management in the proper sequence. Use when setting up new Aurora MySQL or PostgreSQL clusters with production-ready configuration.

aws/creating-api-gateway-stage

Creates an API Gateway stage with CloudWatch logging, X-Ray tracing, throttling, WAF integration, and IAM roles following AWS best practices. Use when deploying a REST API to different environments such as dev, test, or production.

관련 스킬