AWS Client VPN이란 무엇입니까? - AWS Client VPN

AWS Client VPN이란 무엇입니까?

AWS Client VPN은 AWS 리소스 및 온프레미스 네트워크의 리소스에 안전하게 액세스할 수 있도록 하는 관리형 클라이언트 기반 VPN 서비스입니다. Client VPN에서는 OpenVPN 기반 VPN 클라이언트를 사용하여 어떤 위치에서든 리소스에 액세스할 수 있습니다.

Client VPN의 기능

Client VPN은 다음과 같은 기능을 제공합니다.

  • 보안 연결 - OpenVPN 클라이언트를 사용하여 어떤 위치에서든 안전한 TLS 연결을 제공합니다.

  • 관리형 서비스 - AWS 관리형 서비스이므로 서드 파티 원격 액세스 VPN 솔루션을 배포하고 관리하는 운영 부담이 없습니다.

  • 높은 가용성 및 탄력성 - AWS 리소스와 온프레미스 리소스에 연결하는 사용자 수에 따라 자동으로 확장/축소됩니다.

  • 인증 - Active Directory 인증, 연동 인증 및 인증서 기반 인증을 사용한 클라이언트 인증을 지원합니다.

  • 세분화된 제어 - 네트워크 기반 액세스 규칙을 정의하여 사용자 지정 보안 제어를 구현할 수 있습니다. 이러한 규칙은 Active Directory 그룹의 세부 수준에서 구성됩니다. 또한 보안 그룹을 사용하여 액세스 제어를 구현할 수도 있습니다.

  • 간편한 사용 - 단일 VPN 터널을 사용하여 AWS 리소스와 온프레미스 리소스에 액세스할 수 있습니다.

  • 관리 효율성 - 클라이언트 연결 시도에 대한 세부 정보를 제공하는 연결 로그를 볼 수 있습니다. 또한 활성 클라이언트 연결을 종료하는 기능을 포함하여 활성 클라이언트 연결을 관리할 수도 있습니다.

  • 심층적 통합 - AWS Directory Service 및 Amazon VPC를 포함한 기존 AWS 서비스와 통합됩니다.

Client VPN의 구성 요소

다음은 Client VPN의 핵심 개념입니다.

Client VPN 엔드포인트

Client VPN 엔드포인트는 Client VPN 세션을 활성화하고 관리하기 위해 생성하고 구성하는 리소스입니다. 이는 모든 Client VPN 세션의 종료 지점입니다.

대상 네트워크

대상 네트워크는 Client VPN 엔드포인트와 연결하는 네트워크입니다. VPC의 서브넷이 대상 네트워크입니다. 서브넷을 Client VPN 엔드포인트와 연결하면 VPN 세션을 설정할 수 있습니다. 고가용성을 위해 여러 서브넷을 하나의 Client VPN 엔드포인트와 연결할 수 있습니다. 모든 서브넷이 동일한 VPC에 위치해야 합니다. 각 서브넷이 서로 다른 가용 영역에 속해야 합니다.

라우팅

각 Client VPN 엔드포인트에는 사용 가능한 대상 네트워크 라우팅을 설명하는 라우팅 테이블이 있습니다. 라우팅 테이블의 각 라우팅은 특정 리소스 또는 네트워크에 대한 트래픽 경로를 지정합니다.

권한 부여 규칙

권한 부여 규칙은 네트워크에 액세스할 수 있는 사용자를 제한합니다. 지정된 네트워크의 경우 액세스가 허용되는 Active Directory 또는 자격 증명 공급자(IdP) 그룹을 구성합니다. 이 그룹에 속한 사용자만 지정된 네트워크에 액세스할 수 있습니다. 기본적으로 권한 부여 규칙이 없으므로 클라이언트가 리소스 및 네트워크에 액세스하도록 허용하는 권한 부여 규칙을 구성해야 합니다.

클라이언트

VPN 세션을 설정하기 위해 Client VPN 엔드포인트에 연결하는 최종 사용자입니다. 최종 사용자는 OpenVPN 클라이언트를 다운로드하고 사용자가 생성한 Client VPN 구성 파일을 사용하여 VPN 세션을 설정해야 합니다.

클라이언트 CIDR 범위

클라이언트 IP 주소를 할당할 IP 주소 범위입니다. Client VPN 엔드포인트에 대한 각 연결에는 클라이언트 CIDR 범위의 고유한 IP 주소가 할당됩니다. 클라이언트 CIDR 범위(예: 10.2.0.0/16)를 선택합니다.

Client VPN 포트

AWS Client VPN은 TCP 및 UDP 모두에 대해 포트 443과 1194를 지원합니다. 기본값은 포트 443입니다.

Client VPN 네트워크 인터페이스

서브넷을 Client VPN 엔드포인트와 연결하면 해당 서브넷에 Client VPN 네트워크 인터페이스가 생성됩니다. Client VPN 엔드포인트에서 VPC로 전송된 트래픽은 Client VPN 네트워크 인터페이스를 통해 전송됩니다. 그런 다음 클라이언트 CIDR 범위의 소스 IP 주소가 Client VPN 네트워크 인터페이스 IP 주소로 변환되는 소스 네트워크 주소 변환(SNAT)이 적용됩니다.

연결 로깅

Client VPN 엔드포인트에 대한 연결 로깅을 활성화하여 연결 이벤트를 로깅할 수 있습니다. 이 정보를 사용하여 포렌식을 실행하거나, Client VPN 엔드포인트가 어떻게 사용되고 있는지 분석하거나, 연결 문제를 디버깅할 수 있습니다.

셀프 서비스 포털

Client VPN은 엔드포인트에 연결하는 데 필요한 설정이 포함된 최신 버전의 AWS VPN Desktop Client 및 최신 버전의 Client VPN 엔드포인트 구성 파일을 최종 사용자가 다운로드할 수 있는 셀프 서비스 포털 웹 페이지를 제공합니다. Client VPN 엔드포인트 관리자는 Client VPN 엔드포인트에 대한 셀프 서비스 포털을 활성화하거나 비활성화할 수 있습니다. 셀프 서비스 포털은 아시아 태평양(도쿄), 미국 동부(버지니아 북부) 및 유럽(아일랜드) 리전과 AWS GovCloud(미국 서부)의 서비스 스택으로 지원되는 글로벌 서비스입니다.

Client VPN 작업

다음 방법 중 하나를 사용하여 Client VPN으로 작업할 수 있습니다.

Amazon VPC 콘솔

Amazon VPC 콘솔은 Client VPN을 위한 웹 기반 사용자 인터페이스를 제공합니다. AWS 계정에 가입한 경우 Amazon VPC 콘솔에 로그인하고 탐색 창에서 Client VPN을 선택할 수 있습니다.

AWS Command Line Interface (CLI)

AWS CLI는 Client VPN 퍼블릭 API에 대한 직접 액세스를 제공합니다. 이는 Windows, macOS, Linux에서 지원됩니다. AWS CLI 시작하기에 대한 자세한 내용은 AWS Command Line Interface 사용 설명서를 참조하세요. Client VPN 명령에 대한 자세한 내용은 AWS CLI 명령 참조를 참조하세요.

AWS Tools for Windows PowerShell

AWS에서는 PowerShell 환경에서 스크립트를 작성하는 사용자에게 다양한 AWS 제품 및 서비스에 대한 명령을 제공합니다. AWS Tools for Windows PowerShell 시작하기에 대한 자세한 내용은 AWS Tools for Windows PowerShell 사용 설명서를 참조하세요. Client VPN용 cmdlet에 대한 자세한 내용은 AWS Tools for Windows PowerShell Cmdlet 참조를 참조하세요.

Query API

Client VPN HTTPS Query API를 사용하면 Client VPN과 AWS에 프로그래밍 방식으로 액세스할 수 있습니다. HTTPS 쿼리 API를 이용하면 HTTPS 요청을 서비스에 바로 보낼 수 있습니다. HTTPS API를 사용할 때는 자격 증명을 사용하여 요청에 디지털 방식으로 서명하는 코드를 포함해야 합니다. 자세한 내용은 AWS Client VPN 작업을 참조하세요.

Client VPN의 제한 사항 및 규칙

Client VPN에는 다음과 같은 규칙과 제한 사항이 있습니다.

  • 클라이언트 CIDR 범위는 연결된 서브넷이 위치하는 VPC의 로컬 CIDR 또는 Client VPN 엔드포인트의 라우팅 테이블에 수동으로 추가된 라우팅과 중첩될 수 없습니다.

  • 클라이언트 CIDR 범위는 블록 크기가 최소 /22여야 하며 /12를 초과할 수 없습니다.

  • 클라이언트 CIDR 범위의 주소 중 일부는 Client VPN 엔드포인트의 가용성 모델을 지원하는 데 사용되며 클라이언트에 할당할 수 없습니다. 따라서 Client VPN 엔드포인트에서 지원할 최대 동시 연결 수를 활성화하는 데 필요한 IP 주소 수의 두 배가 포함된 CIDR 블록을 할당하는 것이 좋습니다.

  • Client VPN 엔드포인트를 생성한 후에는 클라이언트 CIDR 범위를 변경할 수 없습니다.

  • Client VPN 엔드포인트와 연결된 서브넷은 동일한 VPC에 있어야 합니다.

  • 동일한 가용 영역의 여러 서브넷을 한 Client VPN 엔드포인트와 연결할 수 없습니다.

  • Client VPN 엔드포인트는 전용 테넌시 VPC에서 서브넷 연결을 지원하지 않습니다.

  • Client VPN은 IPv4 트래픽만 지원합니다. IPv6에 대한 자세한 내용은 IPv6 고려 사항을 참조하세요.

  • Client VPN은 Federal Information Processing Standard(FIPS)를 준수하지 않습니다.

  • Active Directory에 대해 Multi-Factor Authentication(MFA)이 비활성화된 경우 사용자 암호의 형식은 다음과 같을 수 없습니다.

    SCRV1:<base64_encoded_string>:<base64_encoded_string>
  • 상호 인증을 사용하여 인증하는 클라이언트에는 셀프 서비스 포털을 사용할 수 없습니다.

  • IP 주소를 사용하여 Client VPN 엔드포인트에 연결하는 것은 권장하지 않습니다. Client VPN은 관리형 서비스이므로 변경하려면 DNS 이름이 확인하는 IP 주소가 표시되는 경우가 있습니다. 또한 클라우드 추적 로그에서 Client VPN 네트워크 인터페이스가 삭제되고 다시 생성된 것을 볼 수 있으며 이는 예상된 동작입니다. 제공된 DNS 이름을 사용하여 Client VPN 엔드포인트에 연결하는 것이 좋습니다.

  • AWS Client VPN 데스크톱 애플리케이션을 사용하는 경우에는 현재 IP 전달이 사용 중지되어 있습니다. 이 기능은 NIST에서 보고된 문제를 해결하기 위해 2018년 12월 18일 서비스 출시 이후 사용 중지되었습니다. 그러나 일부 고객의 경우에는 서비스를 위해 이 기능이 필요할 수 있음을 잘 알고 있습니다. 현재 특정 날짜가 지정되지는 않았지만 향후 릴리스에서 IP 전달 기능을 안전하게 사용할 수 있도록 할 계획입니다.

Client VPN의 요금

각 엔드포인트 연결 및 각 VPN 연결에 대해 시간당 요금이 부과됩니다. 자세한 내용은 AWS Client VPN 요금을 참조하세요.

Amazon EC2에서 인터넷으로 전송되는 데이터 전송에 대한 요금이 부과됩니다. 자세한 내용은 Amazon EC2 온디맨드 요금 페이지에서 데이터 전송을 참조하세요.

Client VPN 엔드포인트에 대한 연결 로깅을 활성화하는 경우 계정에서 CloudWatch Logs 로그 그룹을 생성해야 합니다. 로그 그룹 이용 시 요금이 부과됩니다. 자세한 내용은 Amazon CloudWatch 요금(유료 티어 아래에서 로그 선택)을 참조하세요.

Client VPN 엔드포인트에 대해 클라이언트 연결 핸들러를 활성화하는 경우 Lambda 함수를 생성하고 호출해야 합니다. Lambda 함수 호출에는 요금이 적용됩니다. 자세한 내용은 AWS Lambda 요금을 참조하세요.