클라이언트 VPN 시작하기 - AWS Client VPN

클라이언트 VPN 시작하기

다음 작업은 클라이언트 VPN에 익숙해지는 데 도움이 됩니다. 이 자습서에서는 다음을 수행하는 클라이언트 VPN 엔드포인트를 생성합니다.

  • 모든 클라이언트에게 단일 VPC에 대한 액세스를 제공합니다.

  • 모든 클라이언트에게 인터넷에 대한 액세스를 제공합니다.

  • 상호 인증을 사용합니다.

다음 다이어그램은 이 자습서를 완료한 후의 VPC 및 클라이언트 VPN 엔드포인트의 구성을 나타냅니다.


            클라이언트 VPN 인터넷 액세스

사전 조건

이 시작하기 자습서를 완료하려면 다음이 필요합니다.

  • 클라이언트 VPN 엔드포인트에서 작업하는 데 필요한 권한.

  • 하나 이상의 서브넷과 인터넷 게이트웨이가 있는 VPC. 서브넷과 연결된 라우팅 테이블에는 인터넷 게이트웨이에 대한 경로가 있어야 합니다.

1단계: 서버와 클라이언트 인증서 및 키 생성

이 자습서에서는 상호 인증을 사용합니다. 상호 인증에서는 클라이언트 VPN이 인증서를 사용하여 클라이언트와 서버 간 인증을 수행합니다.

서버와 클라이언트 인증서 및 키를 생성하는 자세한 단계는 상호 인증 단원을 참조하십시오.

2단계: 클라이언트 VPN 엔드포인트 생성

클라이언트 VPN 엔드포인트를 생성할 때 클라이언트가 연결하여 VPN 연결을 설정할 수 있는 VPN 구성을 생성합니다.

클라이언트 VPN 엔드포인트를 생성하려면

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 클라이언트 VPN 엔드포인트를 선택하고 클라이언트 VPN 엔드포인트 생성을 선택합니다.

  3. (선택 사항) 클라이언트 VPN 엔드포인트의 이름과 설명을 제공합니다.

  4. 클라이언트 IPv4 CIDR에서 클라이언트 IP 주소를 할당할 IP 주소 범위(CIDR 표기법)를 지정합니다. 예: 10.0.0.0/22.

    참고

    IP 주소 범위는 대상 네트워크 또는 클라이언트 VPN 엔드포인트가 연결될 경로와 중복될 수 없습니다. 클라이언트 CIDR 범위는 /12~/22 사이의 블록 크기여야 하고 VPC CIDR 또는 라우팅 테이블의 다른 라우팅과 중복될 수 없습니다. 클라이언트 VPN 엔드포인트를 생성한 후에는 클라이언트 CIDR을 변경할 수 없습니다.

  5. Server certificate ARN(서버 인증서 ARN)에 서버에서 사용할 TLS 인증서의 ARN을 지정합니다. 클라이언트는 서버 인증서를 사용하여 연결할 클라이언트 VPN 엔드포인트를 인증합니다.

    참고

    서버 인증서는 AWS Certificate Manager(ACM)에서 프로비저닝해야 합니다.

  6. 클라이언트가 VPN 연결을 설정할 때 클라이언트를 인증하는 데 사용할 인증 방법을 지정합니다. 이 자습서에서는 상호 인증 사용(Use mutual authentication)을 선택한 다음, 클라이언트 인증서 ARN(Client certificate ARN)1단계에서 생성한 클라이언트 인증서의 ARN을 지정합니다.

  7. 클라이언트 연결에 대한 세부 정보를 기록하시겠습니까?(Do you want to log the details on client connections?)에서 아니요(No)를 선택합니다.

  8. 기본 설정의 나머지 부분은 그대로 두고 클라이언트 VPN 엔드포인트 생성(Create 클라이언트 VPN Endpoint)을 선택합니다.

클라이언트 VPN 엔드포인트를 생성할 때 지정할 수 있는 다른 옵션에 대한 자세한 내용은 클라이언트 VPN 엔드포인트 생성 단원을 참조하세요.

클라이언트 VPN 엔드포인트를 생성하면 상태가 pending-associate입니다. 하나 이상의 대상 네트워크를 연결한 이후에만 클라이언트가 VPN 연결을 설정할 수 있습니다.

3단계: 클라이언트에서 VPN 연결 활성화

클라이언트가 VPN 세션을 설정할 수 있으려면 대상 네트워크를 클라이언트 VPN 엔드포인트에 연결해야 합니다. 대상 네트워크는 VPC 안의 서브넷입니다.

클라이언트 VPN 엔드포인트에 서브넷을 연결하려면

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 클라이언트 VPN 엔드포인트를 선택합니다.

  3. 서브넷을 연결할 클라이언트 VPN 엔드포인트를 선택하고 연결, 연결을 차례로 선택합니다.

  4. VPC에서 서브넷이 있는 VPC를 선택합니다. 클라이언트 VPN 엔드포인트를 생성할 때 VPC를 지정한 경우 VPC는 동일한 VPC여야 합니다.

  5. Subnet to associate(연결할 서브넷)에서 클라이언트 VPN 엔드포인트에 연결할 서브넷을 선택합니다.

  6. 연결을 선택합니다.

    참고

    권한 부여 규칙에서 허용하는 경우, 하나의 서브넷 연결만으로도 클라이언트가 VPC의 전체 네트워크에 액세스할 수 있습니다. 추가 서브넷을 연결하여 가용 영역 중 하나가 다운될 경우에도 고가용성을 제공할 수 있습니다.

첫 번째 서브넷을 클라이언트 VPN 엔드포인트에 연결하면 다음과 같이 진행됩니다.

  • 클라이언트 VPN 엔드포인트의 상태가 available로 전환됩니다. 이제 클라이언트가 VPN 연결을 설정할 수 있지만, 권한 부여 규칙을 추가할 때까지는 VPC 내 리소스에 액세스할 수 없습니다.

  • VPC의 로컬 경로가 자동으로 클라이언트 VPN 엔드포인트 라우팅 테이블에 추가됩니다.

  • VPC의 기본 보안 그룹이 자동으로 서브넷 연결에 적용됩니다.

4단계: 클라이언트가 네트워크에 연결하도록 승인

클라이언트가 연결된 서브넷이 위치하는 VPC에 액세스하도록 승인하려면 권한 부여 규칙을 생성해야 합니다. 권한 부여 규칙은 VPC에 액세스할 수 있는 클라이언트를 지정합니다. 이 자습서에서는 모든 사용자에게 액세스 권한을 부여합니다.

대상 네트워크에 권한 부여 규칙을 추가하는 방법

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 클라이언트 VPN 엔드포인트를 선택합니다.

  3. 권한 부여 규칙을 추가할 클라이언트 VPN 엔드포인트를 선택하고 Authorization(권한 부여)을 선택한 다음 Authorize ingress(수신 승인)를 선택합니다.

  4. 활성화할 대상 네트워크(Destination network to enable)에 액세스를 허용할 네트워크의 CIDR을 입력합니다. 예를 들어, 전체 VPC에 대한 액세스를 허용하려면 VPC의 IPv4 CIDR 블록을 지정합니다.

  5. 다음에 대한 액세스 권한 부여(Grant access to)에서 모든 사용자에게 액세스 허용(Allow access to all users)을 선택합니다.

  6. 설명에 권한 부여 규칙에 대한 간략한 설명을 입력합니다.

  7. Add authorization rule(권한 부여 규칙 추가)을 선택합니다.

  8. VPC의 리소스에 대한 보안 그룹에 서브넷 연결에 대한 보안 그룹에서의 액세스를 허용하는 규칙이 있는지 확인합니다. 이렇게 하면 클라이언트가 VPC의 리소스에 액세스할 수 있습니다. 자세한 내용은 보안 그룹 단원을 참조하십시오.

5단계: (선택 사항) 추가 네트워크에 대한 액세스 활성화

AWS 서비스, 피어링된 VPC, 온프레미스 네트워크 등 VPC에 연결된 추가 네트워크에 대한 액세스를 활성화할 수 있습니다. 각 추가 네트워크에서 네트워크에 대한 라우팅을 추가하고 권한 부여 규칙을 구성하여 클라이언트에 액세스 권한을 부여해야 합니다.

이 자습서에서는 인터넷에 대한 라우팅을 추가하고(0.0.0.0/0) 모든 사용자에게 액세스 권한을 부여하는 권한 부여 규칙을 추가합니다.

인터넷에 대한 액세스를 활성화하려면

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 클라이언트 VPN 엔드포인트를 선택합니다.

  3. 라우팅을 추가할 클라이언트 VPN 엔드포인트를 선택하고 라우팅 테이블을 선택한 다음 Create Route(라우팅 생성)를 선택합니다.

  4. Route destination(라우팅 대상 주소)0.0.0.0/0을 입력합니다. Target VPC Subnet ID(대상 VPC 서브넷 ID)에서 트래픽을 라우팅할 서브넷의 ID를 입력합니다.

  5. Create Route(라우팅 생성)를 선택합니다.

  6. 권한 부여(Authorization)를 선택한 다음 수신 승인(Authorize Ingress)을 선택합니다.

  7. 활성화할 대상 네트워크(Destination network to enable)0.0.0.0/0을 입력하고 모든 사용자에게 액세스 허용(Allow access to all users)을 선택합니다.

  8. Add authorization rule(권한 부여 규칙 추가)을 선택합니다.

  9. 트래픽을 라우팅하는 서브넷과 연결된 보안 그룹이 인터넷과의 인바운드 및 아웃바운드 트래픽을 허용하는지 확인합니다. 이렇게 하려면 0.0.0.0/0과의 인터넷 트래픽을 허용하는 인바운드 및 아웃바운드 규칙을 추가합니다.

6단계: 클라이언트 VPN 엔드포인트 구성 파일 다운로드

마지막 단계에서는 클라이언트 VPN 엔드포인트 구성 파일을 다운로드하고 준비합니다. 구성 파일에는 VPN 연결을 설정하는 데 필요한 클라이언트 VPN 엔드포인트 및 인증서 정보가 포함되어 있습니다. 클라이언트 VPN 엔드포인트에 연결하여 VPN 연결을 설정해야 하는 클라이언트에 이 파일을 제공해야 합니다. 클라이언트는 이 파일을 VPN 클라이언트 애플리케이션으로 업로드합니다.

클라이언트 VPN 엔드포인트 구성 파일을 다운로드하고 준비하려면

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 클라이언트 VPN 엔드포인트를 선택합니다.

  3. 클라이언트 VPN 엔드포인트를 선택하고 클라이언트 구성 다운로드(Download Client Configuration)를 선택합니다.

  4. 1단계에서 생성된 클라이언트 인증서 및 키를 찾습니다. 클라이언트 인증서 및 키는 복제된 OpenVPN easy-rsa 리포지토리의 다음 위치에서 찾을 수 있습니다.

    • 클라이언트 인증서 — easy-rsa/easyrsa3/pki/issued/client1.domain.tld.crt

    • 클라이언트 키 — easy-rsa/easyrsa3/pki/private/client1.domain.tld.key

  5. 원하는 텍스트 편집기를 사용하여 클라이언트 VPN 엔드포인트 구성 파일을 열고, <cert></cert> 태그 사이에 클라이언트 인증서의 내용을 추가하고 <key></key> 태그 사이에 프라이빗 키의 내용을 추가합니다.

    <cert> Contents of client certificate (.crt) file </cert> <key> Contents of private key (.key) file </key>
  6. 클라이언트 VPN 엔드포인트 DNS 이름 앞에 임의의 문자열을 추가합니다. 클라이언트 VPN 엔드포인트 DNS 이름을 지정하는 행을 찾은 다음 임의의 문자열 앞에 임의의 문자열을 붙여 형식이 random_string.displayed_DNS_name이 되도록 합니다. 다음 예를 참조하십시오.

    • 원래 DNS 이름: cvpn-endpoint-0102bc4c2eEXAMPLE.prod.clientvpn.us-west-2.amazonaws.com

    • 수정된 DNS 이름: asdfa.cvpn-endpoint-0102bc4c2eEXAMPLE.prod.clientvpn.us-west-2.amazonaws.com

  7. 클라이언트 VPN 엔드포인트 구성 파일을 저장하고 닫습니다.

  8. 클라이언트 VPN 엔드포인트 구성 파일을 클라이언트에 배포합니다.

클라이언트 VPN 엔드포인트 구성 파일에 대한 자세한 내용은 클라이언트 구성 파일 내보내기 및 구성 단원을 참조하세요.

7단계: 클라이언트 VPN 엔드포인트에 연결

AWS 제공 클라이언트 또는 다른 OpenVPN 기반 클라이언트 애플리케이션을 사용하여 클라이언트 VPN 엔드포인트에 연결할 수 있습니다. 자세한 내용은 AWS 클라이언트 VPN 사용 설명서 단원을 참조하십시오.