[AWS Service] Client VPN을 사용하여 Private API Gateway Access

2025. 1. 22. 11:55·AWS Service

이번 글에서는 Client VPN을 사용하여 local에서 Private API Gateway Access 하려고자 합니다. Private API Gateway는 AWS API Gateway가 제공하는 API 유형 중 하나로, API를 인터넷에 공개하지 않고 특정 VPC 내부에서만 접근 가능하도록 제한하는 방식입니다. 이를 통해 안전하고 제한적인 네트워크 환경에서 API를 운영할 수 있습니다. 

1. Endpoint 생성

Private API Gateway는 여러 방법으로 사용할 수 있지만, 이번 글에서는 특정 VPC 내에 접근이 가능하게 구성해보겠습니다. 먼저 VPC Endpoint를 생성해야 합니다.

 

2. Private API Gateway 생성

이제 Private API Gateway를 생성할 수 있습니다. Private API Gateway를 생성하기 위해선 REST API으로 생성해야 하며, API endpoint type을 Private으로 생성해야 합니다.

Private API Gateway를 생성한 후, 테스트 목적으로 동작하는 API 엔드포인트를 설정해야 합니다.

설정 후 API Gateway를 배포하기 위해선 Resouce policy를 생성해야 합니다. 

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "execute-api:Invoke",
            "Resource": "arn:aws:execute-api:ap-northeast-2:<account-id>:<api-id>/*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceVpce": "vpce-xxxxxxxxxxxxxxxxx"
                }
            }
        }
    ]
}

Resouce Policy 설정까지 마쳤다면 이제 API Gateway를 배포할 수 있습니다. 

3. Client VPN 생성

API Gateway 배포까지 마쳤다면 Client VPN을 생성해야 합니다.

Client VPN에 대한 인증서는 간단하게 EasyRSA를 사용하여 구성할 수 있습니다. 아래 글을 참고하여 생성합니다.

 

AWS Client VPN에 대한 상호 인증 활성화 - AWS Client VPN

이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오.

docs.aws.amazon.com

인증서 구성까지 마쳤다면 client vpn을 생성합니다. Client vpn 구성은 아래 글에 나와있으니 참고하여 생성합니다.

2025.01.03 - [AWS Service] - [AWS Service] Openssl을 사용해서 Client VPN 연결

4. 동작 테스트

Client VPN을 연결하시고, 정상적으로 연결이 되었다면 Private API Gateway에 curl 요청을 보내면 아래와 요청이 정상적으로 가게 됩니다.

curl <API Gateway URL>

마무리

이번 글에서는 Private API Gateway를 Client VPN을 통해 로컬 환경에서 접근해보았습니다. API Gateway는 다양한 기능을 지원하기 때문에 학습해야 할 내용도 많습니다. 그중 이번에는 Private API 기능을 활용해보았습니다. 이번 글은 여기서 마치겠습니다 읽어주셔서 감사합니다.

저작자표시 비영리 변경금지 (새창열림)

'AWS Service' 카테고리의 다른 글

[AWS Service] 생성한 EC2에 EBS 마운트하는 방법  (1) 2025.06.12
[AWS Service] MWAA와 Glue를 연동하여 데이터 파이프라인 구축하기  (0) 2025.02.15
[AWS Service] Amazon Macie를 사용하여 S3 데이터 분석  (0) 2025.01.21
[AWS Service] S3에 저장된 log Athena로 분석  (0) 2025.01.21
[AWS Service] Fluent-Bit로 Cloudwatch에 Log 전송  (0) 2025.01.21
'AWS Service' 카테고리의 다른 글
  • [AWS Service] 생성한 EC2에 EBS 마운트하는 방법
  • [AWS Service] MWAA와 Glue를 연동하여 데이터 파이프라인 구축하기
  • [AWS Service] Amazon Macie를 사용하여 S3 데이터 분석
  • [AWS Service] S3에 저장된 log Athena로 분석
dml113
dml113
dml113의 AWS 이야기
  • dml113
    Cloud
    dml113
  • 전체
    오늘
    어제
    • 분류 전체보기 (34)
      • Project (0)
      • Kubernetes (17)
        • CNCF (12)
        • TroubleShooting (1)
      • AWS Service (9)
      • Linux (3)
      • Github (2)
      • Production Traffic (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
dml113
[AWS Service] Client VPN을 사용하여 Private API Gateway Access
상단으로

티스토리툴바