클라이언트 VPN 엔드포인트 - AWS Client VPN

클라이언트 VPN 엔드포인트

모든 클라이언트 VPN 세션은 클라이언트 VPN 엔드포인트에서 종료됩니다. 클라이언트 VPN 엔드포인트를 구성하여 모든 클라이언트 VPN 세션을 관리하고 제어합니다.

클라이언트 VPN 엔드포인트 생성

클라이언트가 VPN 세션을 설정하도록 활성화하려면 클라이언트 VPN 엔드포인트를 생성합니다.

클라이언트 VPN은 의도한 대상 네트워크가 프로비저닝되는 AWS 계정과 동일한 계정에서 생성되어야 합니다.

사전 조건

시작하기 전에 다음이 있는지 확인하십시오.

클라이언트 VPN 엔드포인트를 생성하는 방법(콘솔)

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

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

  3. (선택 사항) 설명에 클라이언트 VPN 엔드포인트에 대한 간략한 설명을 입력합니다.

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

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

    참고

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

  6. 클라이언트가 VPN 연결을 설정할 때 클라이언트를 인증하는 데 사용할 인증 방법을 지정합니다. 하나 이상의 인증 방법을 선택해야 합니다.

    • 사용자 기반 인증을 사용하려면 사용자 기반 인증 사용을 선택하고 다음 중 하나를 선택합니다.

      • Active Directory 인증: Active Directory 인증을 사용하려면 이 옵션을 선택합니다. 디렉터리 ID에는 사용할 Active Directory의 ID를 지정합니다.

      • 연동 인증: SAML 기반 연동 인증을 사용하려면 이 옵션을 선택합니다. SAML 제공업체 ARN에는 IAM SAML 자격 증명 공급자의 ARN을 지정합니다.

    • 상호 인증서 인증을 사용하려면 상호 인증 사용을 선택한 다음, 클라이언트 인증서 ARN에 AWS Certificate Manager(ACM)에서 프로비저닝되는 클라이언트 인증서의 ARN을 지정합니다.

      참고

      클라이언트 인증서가 서버 인증서와 동일한 인증 기관(발행자)에 의해 발급된 경우 서버 인증서 ARN을 클라이언트 인증서 ARN으로 계속 사용할 수 있습니다. 서버 인증서와 동일한 CA를 사용하는 각 사용자에 대해 별도의 클라이언트 인증서 및 키를 생성한 경우 서버 인증서 ARN을 사용할 수 있습니다.

  7. Amazon CloudWatch Logs를 사용하여 클라이언트 연결에 대한 데이터를 로깅할지 여부를 지정합니다. Do you want to log the details on client connections?(클라이언트 연결 세부 정보를 로깅하시겠습니까?)에서 다음 중 하나를 수행합니다.

    • 클라이언트 연결 로깅을 활성화하려면 를 선택합니다. CloudWatch Logs log group name(CloudWatch Logs 로그 그룹 이름)에 사용할 로그 그룹의 이름을 입력합니다. CloudWatch Logs log stream name(CloudWatch Logs 로그 스트림 이름)에 사용할 로그 스트림의 이름을 입력하거나 사용자 대신 자동으로 로그 스트림을 생성할 수 있도록 이 옵션을 비워 둡니다.

    • 클라이언트 연결 로깅을 비활성화하려면 아니요를 선택합니다.

  8. (선택 사항) DNS 확인에 사용할 DNS 서버를 지정합니다. 사용자 지정 DNS 서버를 사용하려면 DNS Server 1 IP address(DNS 서버 1 IP 주소)DNS Server 2 IP address(DNS 서버 2 IP 주소)에 사용할 DNS 서버의 IP 주소를 지정합니다. VPC DNS 서버를 사용하려면 DNS Server 1 IP address(DNS 서버 1 IP 주소) 또는 DNS Server 2 IP address(DNS 서버 2 IP 주소)에 IP 주소를 지정하고 VPC DNS 서버 IP 주소를 추가합니다.

    참고

    클라이언트가 DNS 서버에 도달할 수 있는지 확인합니다.

  9. (선택 사항) 엔드포인트를 분할 터널 VPN 엔드포인트로 사용하려면 분할 터널 활성화를 선택합니다.

    기본적으로 VPN 엔드포인트에서 분할 터널이 비활성화됩니다.

  10. (선택 사항) 기본적으로 클라이언트 VPN 서버는 UDP 전송 프로토콜을 사용합니다. TCP 전송 프로토콜을 대신 사용하려면 Transport Protocol에서 TCP를 선택합니다.

    참고

    일반적으로 UDP가 TCP보다 뛰어난 성능을 제공합니다. 클라이언트 VPN 엔드포인트를 만든 후에는 전송 프로토콜을 변경할 수 없습니다.

  11. (선택 사항) VPC ID의 경우 클라이언트 VPN 엔드포인트와 연결할 VPC를 선택합니다. 보안 그룹 ID의 경우 클라이언트 VPN 엔드포인트에 적용할 VPC의 보안 그룹을 하나 이상 선택합니다.

  12. (선택 사항) VPN 포트의 경우 VPN 포트 번호를 선택합니다. 기본값은 443입니다.

  13. 클라이언트 VPN 엔드포인트 생성을 선택합니다.

클라이언트 VPN 엔드포인트를 생성한 후 다음을 수행하여 구성을 완료하고 클라이언트가 연결할 수 있도록 합니다.

  • 클라이언트 VPN 엔드포인트의 초기 상태는 pending-associate입니다. 첫 번째 대상 네트워크를 연결한 이후에만 클라이언트가 클라이언트 VPN 엔드포인트에 연결할 수 있습니다.

  • 네트워크에 액세스할 수 있는 클라이언트를 지정하려면 권한 부여 규칙을 생성합니다.

  • 클라이언트에 배포할 클라이언트 VPN 엔드포인트 구성 파일을 다운로드하고 준비합니다.

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

클라이언트 VPN 엔드포인트를 생성하는 방법(AWS CLI)

create-client-vpn-endpoint 명령을 사용합니다.

클라이언트 VPN 엔드포인트 수정

클라이언트 VPN이 생성된 후 다음 설정을 수정할 수 있습니다.

  • 설명

  • 서버 인증서

  • 클라이언트 연결 로깅 옵션

  • DNS 서버

  • 분할 터널 옵션

  • VPC 및 보안 그룹 연결

  • VPN 포트 번호

클라이언트 VPN 엔드포인트가 생성된 이후에 클라이언트 IPv4 CIDR 범위, 인증 옵션 또는 전송 프로토콜을 수정할 수 있습니다.

콘솔 또는 AWS CLI를 사용하여 클라이언트 VPN 엔드포인트를 수정할 수 있습니다.

클라이언트 VPN 엔드포인트를 수정하는 방법(콘솔)

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

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

  3. 수정할 클라이언트 VPN 엔드포인트를 선택하고 작업을 선택한 다음 클라이언트 VPN 엔드포인트 수정을 선택합니다.

  4. 필요한 설정을 변경하고 클라이언트 VPN 엔드포인트 수정을 선택합니다.

클라이언트 VPN 엔드포인트를 수정하는 방법(AWS CLI)

modify-client-vpn-endpoint 명령을 사용합니다.

클라이언트 구성 내보내기

클라이언트 VPN 엔드포인트 구성 파일은 클라이언트(사용자)가 클라이언트 VPN 엔드포인트와의 VPN 연결을 설정하는 데 사용하는 파일입니다. 이 파일을 다운로드하여 VPN에 액세스해야 하는 모든 클라이언트에게 배포해야 합니다.

클라이언트 VPN 엔드포인트가 상호 인증을 사용하는 경우 다운로드한 .ovpn 구성 파일에 클라이언트 인증서와 클라이언트 프라이빗 키를 추가해야 합니다. 정보를 추가한 다음, 클라이언트는 .ovpn 파일을 OpenVPN 클라이언트 소프트웨어로 가져올 수 있습니다.

중요

.ovpn 구성 파일에 클라이언트 인증서와 클라이언트 프라이빗 키 정보를 추가해야 합니다. 그렇지 않은 경우 클라이언트는 클라이언트 VPN 엔드포인트에 연결할 수 없습니다.

기본적으로 OpenVPN 클라이언트 구성의 “--remote-random-hostname” 옵션은 와일드 카드 DNS를 활성화합니다. 와일드 카드 DNS가 활성화되므로 클라이언트가 엔드포인트의 IP 주소를 캐싱하지 않으며 엔드포인트의 DNS 이름을 ping할 수 없습니다.

클라이언트 VPN 엔드포인트가 Active Directory 인증을 사용하고 클라이언트 구성 파일을 배포한 후 디렉터리에서 Multi-Factor Authentication(MFA)을 활성화한 경우 새 파일을 다운로드하여 클라이언트에 다시 배포해야 합니다. 클라이언트는 이전 구성 파일을 사용하여 클라이언트 VPN 엔드포인트에 연결할 수 없습니다.

콘솔 또는 AWS CLI를 사용하여 클라이언트 구성을 내보낼 수 있습니다.

클라이언트 구성을 내보내는 방법(콘솔)

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

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

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

클라이언트 구성을 내보내는 방법(AWS CLI)

export-client-vpn-client-configuration 명령을 사용하고 출력 파일 이름을 지정합니다.

$ aws ec2 export-client-vpn-client-configuration --client-vpn-endpoint-id endpoint_id --output text>config_filename.ovpn

클라이언트 인증서 및 키 정보를 추가하려면(상호 인증)

다음 옵션 중 하나를 사용할 수 있습니다.

(옵션 1) 클라이언트 인증서 및 키를 클라이언트 VPN 엔드포인트 구성 파일과 함께 클라이언트에 배포합니다. 이 경우 구성 파일에 인증서 및 키의 경로를 지정합니다. 선호하는 텍스트 편집기를 사용하여 구성 파일을 열고 파일 끝부분에 다음을 추가합니다. /path/를 클라이언트 인증서 및 키의 위치로 바꿉니다(위치는 엔드포인트에 연결하는 클라이언트를 기준으로 함).

cert /path/client1.domain.tld.crt key /path/client1.domain.tld.key

(옵션 2) 구성 파일에 <cert></cert> 태그 사이에 클라이언트 인증서의 내용을 추가하고 <key></key> 태그 사이에 프라이빗 키의 내용을 추가합니다. 이 옵션을 선택하면 구성 파일만 클라이언트에 배포됩니다.

클라이언트 VPN 엔드포인트에 연결할 각 사용자에 대해 별도의 클라이언트 인증서 및 키를 생성한 경우 각 사용자에 대해 이 단계를 반복합니다.

다음은 클라이언트 인증서 및 키를 포함하는 클라이언트 VPN 구성 파일 형식의 예입니다.

client dev tun proto udp remote asdf.cvpn-endpoint-0011abcabcabcabc1.prod.clientvpn.eu-west-2.amazonaws.com 443 remote-random-hostname resolv-retry infinite nobind persist-key persist-tun remote-cert-tls server cipher AES-256-GCM verb 3 <ca> Contents of CA </ca> <cert> Contents of client certificate (.crt) file </cert> <key> Contents of private key (.key) file </key> reneg-sec 0

클라이언트 VPN 엔드포인트 보기

콘솔 또는 AWS CLI를 사용하여 클라이언트 VPN 엔드포인트에 대한 정보를 볼 수 있습니다.

콘솔을 사용하여 클라이언트 VPN 엔드포인트를 보는 방법

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

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

  3. 볼 클라이언트 VPN 엔드포인트를 선택합니다.

  4. 탭을 사용하여 연결된 대상 네트워크, 권한 부여 규칙, 라우팅 및 클라이언트 연결을 확인합니다.

AWS CLI를 사용하여 클라이언트 VPN 엔드포인트를 보는 방법

describe-client-vpn-endpoints 명령을 사용합니다.

클라이언트 VPN 엔드포인트 삭제

클라이언트 VPN 엔드포인트를 삭제하면 상태가 deleting으로 전환되고 클라이언트가 더 이상 연결할 수 없습니다. 클라이언트 VPN 엔드포인트를 삭제하기 전에 연결된 대상 네트워크를 모두 연결 해제해야 합니다.

콘솔 또는 AWS CLI를 사용하여 클라이언트 VPN 엔드포인트를 삭제할 수 있습니다.

클라이언트 VPN 엔드포인트를 삭제하는 방법(콘솔)

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

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

  3. 삭제할 클라이언트 VPN 엔드포인트를 선택하고, 작업을 선택하고, 클라이언트 VPN 엔드포인트 삭제를 선택한 다음 예, 삭제를 선택합니다.

클라이언트 VPN 엔드포인트를 삭제하는 방법(AWS CLI)

delete-client-vpn-endpoint 명령을 사용합니다.