Azure Virtual Desktop 네트워크 연결 이해

Azure Virtual Desktop은 Azure에서 실행되는 세션 호스트에서 클라이언트 세션을 호스트합니다. Microsoft는 고객을 대신하여 서비스의 일부를 관리하고 클라이언트와 세션 호스트를 연결하기 위한 보안 엔드포인트를 제공합니다. 다음 다이어그램은 Azure Virtual Desktop에서 사용되는 네트워크 연결에 대한 개략적인 개요를 제공합니다.

Azure Virtual Desktop 네트워크 연결 다이어그램

세션 연결

Azure Virtual Desktop은 RDP(원격 데스크톱 프로토콜)를 사용하여 네트워크 연결을 통해 원격 표시 및 입력 기능을 제공합니다. RDP는 처음에는 Windows NT 4.0 터미널 서버 버전과 함께 출시되었으며 Microsoft Windows 및 Windows Server가 출시될 때마다 지속적으로 진화하고 있습니다. 처음부터 RDP는 기본 전송 스택과는 별도로 개발되었으며 현재는 여러 유형의 전송을 지원합니다.

역방향 연결 전송

Azure Virtual Desktop은 원격 세션을 설정하고 RDP 트래픽을 운반하기 위해 역방향 연결 전송을 사용합니다. 온-프레미스 원격 데스크톱 서비스 배포와 달리, 역방향 연결 전송은 TCP 수신기를 사용하여 들어오는 RDP 연결을 수신하지 않습니다. 대신 HTTPS 연결을 통해 Azure Virtual Desktop 인프라에 대한 아웃바운드 연결을 사용 합니다.

세션 호스트 통신 채널

Azure Virtual Desktop 세션 호스트를 시작할 때 원격 데스크톱 에이전트 로더 서비스는 Azure Virtual Desktop 브로커의 영구 통신 채널을 설정합니다. 이 통신 채널은 보안 TLS(전송 계층 보안) 연결의 맨 위에 계층화되며 세션 호스트와 Azure Virtual Desktop 인프라 간의 서비스 메시지 교환을 위한 버스 역할을 합니다.

클라이언트 연결 시퀀스

클라이언트 연결 시퀀스는 다음과 같습니다.

  1. 지원되는 Azure Virtual Desktop 클라이언트를 사용하여 사용자는 Azure Virtual Desktop 작업 영역을 구독합니다.

  2. Microsoft Entra ID는 사용자를 인증하고 사용자가 사용할 수 있는 리소스를 열거하는 데 사용되는 토큰을 반환합니다.

  3. 클라이언트는 토큰을 Azure Virtual Desktop 피드 구독 서비스로 전달합니다.

  4. Azure Virtual Desktop 피드 구독 서비스는 토큰의 유효성을 검사합니다.

  5. Azure Virtual Desktop 피드 구독 서비스는 사용 가능한 데스크톱 및 애플리케이션의 목록을 디지털 서명된 연결 구성 형식으로 클라이언트에 다시 전달합니다.

  6. 클라이언트는 사용할 수 있는 각 리소스에 대한 연결 구성을 .rdp 파일 세트에 저장합니다.

  7. 사용자가 연결할 리소스를 선택하면 클라이언트는 관련 .rdp 파일을 사용하고 Azure Front Door의 도움으로 Azure Virtual Desktop 게이트웨이 인스턴스에 대한 보안 TLS 1.2 연결을 설정하고 연결 정보를 전달합니다. 모든 게이트웨이의 대기 시간이 평가되고 게이트웨이는 10ms 그룹으로 표현됩니다. 대기 시간이 가장 짧고 기존 연결 수가 가장 적은 게이트웨이가 선택됩니다.

  8. Azure Virtual Desktop 게이트웨이는 요청의 유효성을 검사하고 Azure Virtual Desktop 브로커에 연결 오케스트레이션을 요청합니다.

  9. Azure Virtual Desktop 브로커는 세션 호스트를 식별하고 이전에 설정된 영구 통신 채널을 사용하여 연결을 초기화합니다.

  10. 원격 데스크톱 스택은 클라이언트에서 사용하는 것과 동일한 Azure Virtual Desktop 게이트웨이 인스턴스에 대한 TLS 1.2 연결을 시작합니다.

  11. 클라이언트 및 세션 호스트가 게이트웨이에 연결되면 게이트웨이는 두 엔드포인트 간에 데이터를 릴레이하기 시작합니다. 이 연결은 클라이언트와 세션 호스트 간에 지원되고 활성화된 상호 합의된 TLS 버전을 사용하여 중첩된 터널을 통해 RDP 연결에 대한 기본 역방향 연결 전송을 TLS 1.3까지 설정합니다.

  12. 기본 전송이 설정된 후 클라이언트는 RDP 핸드셰이크를 시작합니다.

연결 보안

TLS는 모든 연결에 사용됩니다. 사용되는 버전은 수행되는 연결 및 클라이언트 및 세션 호스트의 기능에 따라 달라집니다.

  • 클라이언트 및 세션 호스트에서 Azure Virtual Desktop 인프라 구성 요소로 시작되는 모든 연결의 경우 TLS 1.2가 사용됩니다. Azure Virtual Desktop은 Azure Front Door와 동일한 TLS 1.2 암호화를 사용합니다. 클라이언트 컴퓨터와 세션 호스트가 이러한 암호화를 사용할 수 있는지 확인하는 것이 중요합니다.

  • 역방향 연결 전송의 경우 클라이언트 및 세션 호스트는 모두 Azure Virtual Desktop 게이트웨이에 연결합니다. 기본 전송에 대한 TCP 연결이 설정된 후 클라이언트 또는 세션 호스트는 Azure Virtual Desktop 게이트웨이의 인증서의 유효성을 검사합니다. 그런 다음 RDP는 세션 호스트의 인증서를 사용하여 클라이언트와 세션 호스트 간에 중첩된 TLS 연결을 설정합니다. TLS 버전은 클라이언트와 세션 호스트 간에 지원되고 사용하도록 설정된 상호 합의된 TLS 버전을 TLS 1.3까지 사용합니다. TLS 1.3은 Windows 11(21H2) 및 Windows Server 2022부터 지원됩니다. 자세한 내용은 Windows 11 TLS 지원을 참조하세요. 다른 운영 체제의 경우 운영 체제 공급업체에 TLS 1.3 지원을 문의하세요.

기본적으로 RDP 암호화에 사용되는 인증서는 배포하는 동안 OS에 의해 자체 생성됩니다. 엔터프라이즈 인증 기관에서 발급한 중앙 관리 인증서를 배포할 수도 있습니다. 인증서 구성에 대한 자세한 내용은 원격 데스크톱 수신기 인증서 구성을 참조하세요.

다음 단계