많은 Windows 터미널 서버 관리자들이 경험했듯이, Windows Server 2012부터 RDS 서버에는 tsadmin.msc(원격 데스크톱 서비스 관리자)와 tsconfig.msc(원격 데스크톱 세션 호스트 구성) 스냅인이 더 이상 포함되어 있지 않습니다. 마이크로소프트는 대부분의 RDS 호스트 설정을 서버 관리자(Server Manager), 그룹 정책 편집기(gpedit.msc), 또는 RDS 컬렉션 설정을 통해 관리할 수 있다고 판단했지만, 실제로 이러한 도구들은 기존 TS 스냅인만큼 쉽고 편리하지 않습니다.
레거시 TS 스냅인 복원 개요
이 글에서는 Windows Server 2016이 설치된 RDS 서버에서 레거시 tsadmin.msc와 tsconfig.msc 스냅인을 사용하는 방법을 소개합니다. 이 가이드는 Windows Server 2019 및 2012 R2 환경에도 동일하게 적용할 수 있습니다.
방법은 간단합니다. Windows Server 2008 R2가 실행 중인 서버에서 7개의 파일과 레지스트리 키를 복사하여 Windows Server 2016의 동일한 경로(C:\Windows\System32)에 넣으면 됩니다. 복사해야 할 파일은 다음과 같습니다.
- c:\windows\system32\tsadmin.dll
- c:\windows\system32\tsconfig.dll
- c:\windows\system32\wts.dll
- c:\windows\system32\tsconfig.msc
- c:\windows\system32\tsadmin.msc
- c:\windows\system32\en\tsconfig.resources.dll
- c:\windows\system32\en\tsadmin.resources.dll
레지스트리 키 내보내기 및 가져오기
다음으로 Windows Server 2008 R2에서 regedit.exe를 실행하여 아래 두 개의 레지스트리 키를 *.reg 파일로 내보냅니다.
- [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\FX:{80aaa290-abd9-9239-7a2d-cf4f67e42128}]
- [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\FX:{3FCE72B6-A31B-43ac-ADDA-120E1E56EB0F}]
그런 다음 이 reg 파일들을 순서대로 Windows Server 2016의 레지스트리로 가져옵니다. reg 파일을 더블클릭한 후 레지스트리 변경을 승인하면 됩니다.
마지막으로 위에서 언급한 dll 및 msc 파일들을 Windows Server 2016 호스트의 C:\Windows\System32 디렉터리에 복사합니다. REGSVR32로 dll 파일을 별도로 등록할 필요는 없습니다.
참고: 지원 종료로 인해 요즘은 Windows Server 2008 R2 환경을 확보하기가 쉽지 않습니다. 이 경우 필요한 파일이 모두 포함된 압축 파일(tsadmin_msc_windows-server-all.zip, 영문 버전용)을 다운로드하여 사용할 수 있습니다.
TSADMIN.MSC로 사용자 세션 관리하기
설정이 완료되면 다음 명령어로 TSAdmin 스냅인을 실행해 보세요.
tsadmin.msc
이 콘솔에서는 사용자 세션을 매우 편리하게 관리할 수 있습니다. 세션 연결 해제, 메시지 전송, 안전한 로그오프 처리 등의 작업이 가능하며, 여러 사용자를 한 번에 선택해 일괄 작업을 수행할 수도 있습니다.
TSCONFIG.MSC로 RDS 호스트 구성하기
tsconfig.msc 콘솔 역시 정상적으로 실행됩니다.
tsconfig.msc 콘솔에서는 RDS 호스트의 핵심 설정을 훨씬 쉽고 직관적으로 구성할 수 있습니다. 주요 기능은 다음과 같습니다.
- RDS 라이선스 서버 및 RDS CAL 유형 지정
- RD 연결 브로커 팜에 호스트 추가 및 팜 내 호스트 가중치 구성
- RDP 암호화 수준 설정
- 사용자가 세션에 로그온할 때 자동으로 시작할 프로그램 지정
- 독립형(standalone) RDS 호스트에서 연결 해제된 사용자 세션의 시간 초과 설정
네트워크상의 다른 RDS 호스트 원격 관리
모든 RDS 호스트에 이 콘솔을 설치할 필요는 없습니다. "원격 데스크톱 세션 호스트 서버에 연결(Connect to Remote Desktop Session Host Server)" 옵션을 사용하면 네트워크상의 다른 RDS 호스트를 원격으로 관리할 수 있습니다.
주의 사항 및 알려진 제한
참고: 이 방법은 마이크로소프트에서 공식적으로 지원하지 않는 비공식 접근 방식이므로, 반드시 사용자의 책임하에 적용해야 합니다.
또한 tsadmin.msc 콘솔에서는 사용자의 터미널 세션에 직접 연결할 수 없으며, "액세스가 거부되었습니다(Access is denied)" 오류가 발생합니다. 사용자의 원격 데스크톱 세션에 연결해야 한다면 RDS 섀도잉(RDS Shadowing) 기능을 활용하는 방법을 사용해야 합니다.
아울러 tsconfig.msc 콘솔의 RDP-Tcp 연결 속성에는 보안(Security) 탭이 존재하지 않습니다. 원래 이 탭은 기술 지원팀과 같은 비관리자 그룹에게 RDS 호스트의 사용자 세션 연결 및 관리 권한을 부여할 때 매우 유용했습니다. 특정 그룹에게 서버의 RDP 세션에 대한 전체 권한을 부여하려면 다음 명령어를 사용할 수 있습니다.
wmic /namespace:\\root\CIMV2\TerminalServices PATH Win32_TSPermissionsSetting WHERE (TerminalName ="RDP-Tcp") CALL AddAccount "woshub\helpdeskteam",2
PowerShell을 사용하면 RDP-Tcp 연결 속성의 현재 권한 설정을 확인할 수 있습니다.
Get-WmiObject -Namespace "root/cimv2/terminalservices" -Class win32_tspermissionssetting