Computer >> 컴퓨터 >  >> 시스템 >> Windows 10

Windows 10 원격 데스크톱 세션 섀도잉 완벽 가이드 – 사용자 화면 실시간 확인 및 제어 방법

원격 지원(Remote Assistance) 외에도 원격 데스크톱 세션 섀도잉(Remote Desktop Session Shadowing) 기능을 활용하면 Windows 10 사용자의 데스크톱에 원격으로 연결할 수 있습니다. 많은 관리자들이 Windows Server 2012 R2 또는 Server 2016 기반의 RDS 서버에서 사용자 세션에 접속할 때 이 기능을 활용하고 있지만, Windows 10의 로컬 콘솔 세션에도 동일하게 적용할 수 있다는 사실은 잘 알려져 있지 않습니다. 이 글에서는 세션 섀도잉의 작동 원리와 설정 방법을 자세히 살펴보겠습니다.

RDP 연결과 섀도잉의 차이점

일반적인 RDP로 Windows 10 컴퓨터에 접속하면 로컬에서 작업 중인 사용자 세션이 강제로 로그아웃됩니다(Windows 10에서 다중 동시 RDP 세션을 활성화한 경우에도 마찬가지입니다). 반면 세션 섀도잉을 사용하면 사용자를 로그아웃시키지 않고 콘솔 세션에 직접 연결할 수 있습니다.

예를 들어, Windows Server 2012 R2 서버에서 Windows 10 Pro가 설치된 워크스테이션을 로컬에서 사용 중인 사용자의 데스크톱에 연결한다고 가정해 보겠습니다.

mstsc.exe를 이용한 섀도잉 연결

사용자 세션에 대한 섀도잉 연결을 설정하려면 표준 RDP 도구인 mstsc.exe를 사용해야 합니다. 명령어 형식은 다음과 같습니다.

Mstsc.exe /shadow:<세션 ID> /v:<컴퓨터 이름 또는 IP 주소>

추가로 사용할 수 있는 옵션은 다음과 같습니다.

  • /prompt – 연결 시 사용자 자격 증명을 요청합니다(지정하지 않으면 현재 사용자 자격 증명으로 연결됩니다).
  • /control – 사용자 세션과 상호 작용할 수 있는 모드입니다. 이 옵션을 지정하지 않으면 보기 전용 모드로 연결되어 사용자의 마우스나 키보드 입력을 제어할 수 없습니다.
  • /noConsentPrompt – 사용자에게 연결 확인을 요청하지 않고 바로 세션에 연결합니다.

그룹 정책 및 레지스트리 설정

원격 섀도잉 설정은 그룹 정책(GPO) 또는 레지스트리 수정을 통해 구성할 수 있습니다. 연결 시 사용자의 확인이 필요한지, 그리고 섀도잉 세션에서 보기 또는 제어가 허용되는지 여부를 지정할 수 있습니다.

정책은 GPO 편집기의 컴퓨터 구성 → 정책 → 관리 템플릿 → Windows 구성 요소 → 원격 데스크톱 서비스 → 원격 데스크톱 세션 호스트 → 연결 경로에 있으며, 정책 이름은 "원격 데스크톱 서비스 사용자 세션의 원격 제어 규칙 설정(Set rules for remote control of Remote Desktop Services user sessions)"입니다.

Windows 10 원격 데스크톱 세션 섀도잉 완벽 가이드 – 사용자 화면 실시간 확인 및 제어 방법

정책을 활성화하는 대신 레지스트리 키 HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services에서 DWORD 값 Shadow를 설정할 수도 있습니다. 허용되는 값은 다음과 같습니다.

  • 0 – 원격 제어 비활성화
  • 1 – 사용자 권한과 함께 전체 제어
  • 2 – 사용자 권한 없이 전체 제어
  • 3 – 사용자 권한과 함께 세션 보기
  • 4 – 사용자 권한 없이 세션 보기

기본적으로 이 레지스트리 값은 설정되어 있지 않으며, 이 경우 사용자의 권한을 받아 전체 제어 모드로 섀도잉 연결이 수행됩니다.

사전 요구 사항

섀도잉을 통해 사용자 세션에 원격으로 연결하려면 연결 계정에 관리자 권한이 있어야 하며, 대상 Windows 10 컴퓨터에서 시스템 속성을 통해 원격 데스크톱(RDP)이 활성화되어 있어야 합니다.

Windows 10 원격 데스크톱 세션 섀도잉 완벽 가이드 – 사용자 화면 실시간 확인 및 제어 방법

실전 예제: 원격 세션 목록 조회 및 연결

다음 명령어로 Windows 10 워크스테이션의 세션 목록을 원격으로 조회할 수 있습니다.

qwinsta /server:192.168.1.90

Windows 10 원격 데스크톱 세션 섀도잉 완벽 가이드 – 사용자 화면 실시간 확인 및 제어 방법

실행 결과, 해당 컴퓨터에는 ID = 1인 콘솔 사용자 세션이 하나 존재하는 것을 확인할 수 있습니다.

이제 세션 ID 1에 섀도잉 연결을 시도해 보겠습니다. 다음 명령을 실행합니다.

Mstsc /shadow:1 /v:10.10.11.60

Windows 10 원격 데스크톱 세션 섀도잉 완벽 가이드 – 사용자 화면 실시간 확인 및 제어 방법

연결 요청이 발생하면 Windows 10 사용자의 화면에는 다음과 같은 메시지가 표시됩니다.
원격 연결 요청
PC\admin 님이 사용자의 세션을 원격으로 보려고 합니다. 요청을 수락하시겠습니까?

Windows 10 원격 데스크톱 세션 섀도잉 완벽 가이드 – 사용자 화면 실시간 확인 및 제어 방법

사용자가 연결을 수락하면 Windows 10 콘솔 세션에 연결되어 사용자의 데스크톱 화면을 볼 수 있습니다. 사용자의 모든 작업 내용을 실시간으로 확인할 수 있지만, /control 옵션을 사용하지 않았다면 세션을 제어할 수는 없습니다.

Windows 10 원격 데스크톱 세션 섀도잉 완벽 가이드 – 사용자 화면 실시간 확인 및 제어 방법

팁: 섀도잉 세션을 종료하려면 데스크톱 컴퓨터에서 Alt+*, RDS 서버에서는 Ctrl+* 키를 누르면 됩니다.

네트워크 연결 방식: RemoteRPC

TCPView 등의 도구로 네트워크 연결 상태를 확인해 보면, 섀도잉 연결은 TCP/3389 포트를 사용하는 일반 RDP 연결이 아니라 RemoteRPC 연결임을 알 수 있습니다. 즉, RPC 하이 포트 범위에서 임의의 TCP 포트가 사용됩니다. 연결을 시작하는 컴퓨터 쪽에서는 Mstsc.exe가 연결을 처리하고, 클라이언트 쪽에서는 rdpsa.exe 또는 rdpsaproxy.exe(Windows 10 빌드에 따라 다름)가 연결을 담당합니다. 따라서 클라이언트에서 RemoteRPC가 활성화되어 있어야 합니다.

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server
"AllowRemoteRPC"=dword:00000001

Windows 10 원격 데스크톱 세션 섀도잉 완벽 가이드 – 사용자 화면 실시간 확인 및 제어 방법

지원되는 운영 체제 버전

원격 데스크톱 섀도잉은 Windows 10 / 8.1 및 Windows Server 2012 R2 / 2016 / 2019에서 사용할 수 있습니다. Windows 7 SP1(Windows Server 2008 R2) 클라이언트에서 섀도잉을 사용하려면 RDP 클라이언트 버전 8.1(KB2830477)을 설치해야 하며, 이 업데이트를 적용하기 위해서는 KB2574819와 KB2857650 업데이트가 먼저 설치되어 있어야 합니다.

마무리

이처럼 원격 데스크톱 세션 섀도잉은 로컬 네트워크나 기업 환경에서 원격 지원(Remote Assistance)이나 TeamViewer를 대체할 수 있는 강력한 도구입니다. 별도의 서드파티 프로그램 설치 없이 Windows 자체 기능만으로 사용자 화면을 실시간으로 확인하고 지원할 수 있다는 점에서, IT 관리자에게 매우 유용한 기능이라 할 수 있습니다.