[윈도우 원격접속] 한 사용자로 다중 접속하기 <Multi Session>
원격 접속을 통한 다중접속하기
Multi Session 사용가능
클라우드 컴퓨팅 본격적으로 사용하기 |
언제 어디서나 접속 및 사용가능한 컴퓨터를 만들기 위해 원격접속을 통해 클라우드 컴퓨터를 구축하는 방법에 대해 글을 쓴적이 있습니다. 실제로 가장 최신 버전의 윈도우 서버인 윈도우 서버 2012(Windows Server 2012)에서는 클라우드 컴퓨팅 기능을 강조하며, 여러사용자가 동시에 접속 가능한 원격 제어 컴퓨터를 구축할 수 있습니다.
하지만, 제 서버에서 사용하는 것은 단순한 사용자 버전의 윈도우 8.1 (Windows 8.1 - Client Version)인데 기본적으로 로컬 컴퓨터 사용과 원격 데스크탑 접속은 한 사용자에 한해서만 가능합니다.
즉, 사용자 한 명만 컴퓨터를 사용한다는 전체하에서만 원격제어와 실제 제어를 할 수 있습니다.
예를 들어 Admin 계정으로 로그온하여 데스크탑을 사용중 누워서 컴퓨터를 하고 싶어서 아이패드를 이용하여 원격데스크탑을 접속하면 기존에 사용하던 컴퓨터에서 계정은 자동적으로 로그아웃이되고 원격접속한 사용자로 새로 로그인하게 됩니다.
일반적으로 개인용 PC를 사용하지만 가족들이 모두 사용하는 컴퓨터가 있을 수도 있고, 저 처럼 개인서버를 구축하여 개인적인 서버를 운영하는 경우도 있습니다. 여러사람이 한 대의 PC를 사용하는 경우가 발생할 수 있는데 그런 경우에 컴퓨터를 동시에 사용할 수 있도록 세팅해 보도록 하겠습니다.
우리나라에서 일반적으로 컴퓨터를 사용하는 경우는 사용자 계정은 하나로 고정하고 가족 모두가 사용하는 경우가 대부분 입니다. 이번 글은 여러 사람이 같은 컴퓨터의 같은 계정으로 다 같이 사용하는 경우에 굉장히 유용한 방법입니다. 여러 계정을 사용자 개개인 별로 만들어서 하는 경우는 더 안정적인 방법으로 따로 포스팅 하도록 하겠습니다.
기본적인 원격 접속과 RD Client 설정 방법은 다음글들을 확인해 주시기 바랍니다.
경고!
이 다음부터 설명드릴 내용들은 윈도우 시스템파일에 변형을 주기 때문에 치명적인 에러가 발생할 수 있습니다. 제가 직접 확인해보고 포스팅을 하지만, 상황에 따라 정상적인 컴퓨터 사용이 불가 할 수 있습니다. 해당 사항을 충분히 숙지하시고 사용하시기 바랍니다. 또한, 해당 경우로 발생하는 문제에 대해서 책임은 개인에게 있음을 안내드립니다.
또한, Client 버전에서 2개 이상의 세션을 동시에 사용하는 것은 라이선스 위반이라고 합니다.
참고 : http://techinicalhacks.blogspot.kr/2015/11/multiple-rdp-sessions-like-windows.html
추가 합니다.
정책 설정도 같이 설정을 해야 완벽하게 사용을 할 수 있습니다. 정책 설정에 관한 글은 이 글([원격제어] 멀티세션 (Multi Session) 정책설정)을 참고하시면 됩니다.
한 계정으로 멀티세션 사용하기 - RDP wrapper |
위에서 설명했다시피 기본적으로 컴퓨터로 로그온한 상태에서 원격으로 접속을 하게 되면 기존에 사용하던 컴퓨터에서는 자동으로 로그오프가 됩니다.
간단하게 클릭 한방으로 몇 가지 설정을 자동으로 바꿔주는 프로그램를 통해 쉽게 여러 원격접속을 사용 할 수 있습니다.
RDP Wrapper
제작사 홈페이지 : http://stascorp.com/load/1-1-0-63
다운로드 링크 : http://stascorp.com/load/0-0-0-63-20
1.5 버전 링크 : https://github.com/binarymaster/rdpwrap/releases
직접 다운로드 링크
2014년 12월 11일 자로 1.5버전이 배포 되었습니다.
윈도우 10을 지원하는 등 안정성 및 커스텀 설정이 가능합니다.
이전 버전
(원본 링크)
(ZIP 파일로 재 압축)
역시 직접 다운로드 링크가 있어야 블로그를 찾아오는 맛이 있죠!
해당 파일은 윈도우 8.1 뿐만 아니라 모든 윈도우 전 버전에서 사용가능합니다. 제 termsrv.dll 파일은 빌드 9600(윈도우 8.1)에 17095 버전(가장 최신 업데이트 버전)인데도 정상적으로 사용가능하였습니다. 작동 원리는 하단에 적어 놓도록 하겠습니다.
시작 전 다시 한번 말씀드리지만 가능한 백업을 부탁드립니다. (혹시 모를 상황에 대비하여)
그나마 이 파일은 다른 패치들과는 달리 원격 접속의 설정을 관리하는 시스템 파일인 termsrv.dll 파일을 수정하지 않고 멀티 세션을 가능하게 해줍니다.
해당 파일을 적당한 폴더에 압축을 풀어 줍니다. 그리고 해당 폴더 안에 있는 install.bat 파일을 실행해 줍니다. (좀 더 확실하게 하기 위해 마우스 오른쪽 버튼을 누르고 관리자 권한으로 실행할 것을 추천합니다. 물론 안해도 상관없습니다.)
만약, 설치 후 다시 설치 취소를 하고 싶거나 원상 복구 하고 싶다면 uninstall.bat 파일을 실행하면 됩니다.
설치를 하면 다음과 같은 화면이 나오고 설치를 자동적으로 시작합니다. 혹은 CMD를 통해 해당 폴더를 찾아서 RDPWinst.exe -i 를 입력하여도 상관없습니다.
설치를 마치고 나면 다음과 같은 화면이 나오며, RDPCheck 프로그램으로 확인할 수 있다.(즉, 확인해 보라는 얘기죠.)라고 하는데 저는 에러가 나와서 확인을 못해봤습니다. 이 프로그램은 그야말로 확인만 하는 프로그램이기 때문에 실행이 안된다고(또는 실행을 안한다고) 해서 멀티 세션으로 접속을 전혀 이상이 생기거나 그러지는 않았습니다.
이제 설치가 완료되었습니다.
작동원리는 이러합니다. termsrv.dll 파일이 원격접속을 관리하는 서비스 프로그램 파일인데, 이 파일 대신에 rdpwrap.dll 이라는 파일로 대체하여 원격접속을 우회하는 방법입니다. system32폴더의 dll파일은 건드리는 것이 아니라 임의의 폴더를 생성하여 서비스를 관리하는 파일만 대체하는 방식이라 안전하다고 볼 수 있습니다.
대신 rdpwrap 파일은 Windows Vista 버전의 termsrv.dll 파일을 기초로 작업을 하였는지 경고 문구가 Vista 이하 버전이라는 경고가 나오기는 하는데 무시하고 진행하셔도 문제되는 부분이 없습니다.
그럼 실제로 한 사용자 계정으로 여러 컴퓨터에서 동시에 접속이 가능한지 확인해보도록 합니다.
테스트한 기계는 데스크탑, 스마트폰, 노트북으로 동시에 접속하였습니다.
처음 데스크탑이나 노트북과 같은 원격 데스크톱 연결에서 처음 해당 컴퓨터로 접속을 하면 다음과 같은 경고문구가 나옵니다. 위에 설명한 대로 다른 dll파일로 대체를 하여서 이런 경고가 나오는데 신경쓰지 않고 연결하기 위해 "예"를 누르면 됩니다.
만약, 다음 번 접속시에 이 경고문을 보지 않도록 하려면 "이 컴퓨터로의 연결을 다시 묻지 않음"을 체크하면 됩니다.
반면 모바일로 접속하여서 RD Client 어플을 이용하는 경우, 다음과 같이 안내문이 나오는데 위와 같은 내용입니다. 역시 다음번 부터 나오지 않도록 하려면 "Don't ask me for connections to this computer"를 활성화 시켜주시면 됩니다.
그럼 진짜로 확인해 보면 원격 데스크톱 연결을 이용하여 같은 계정을 두 번 접속하였습니다. 이 썸네일 화면에서 보여주듯이, 각기 완전히 다른 컴퓨터처럼 다른 세션으로 사용 가능합니다.
서버가 된 컴퓨터에서 작업 관리자를 실행시켜 로그온 되어 있는 사용자를 확인해보니 같은 Admin 계정이 세 번 로그온 되어있는 것을 확인 할 수 있습니다.
마치며. |
이 프로그램을 이용하는 방법 외에는 termsrv.dll 파일은 변경하는 방법이 있습니다. 위에 처럼 Vista 이하 버전이라는 경고문은 나오지 않지만 시스템 파일을 직접 수정한다는 단점이 있습니다.
이 프로그램을 사용하기도 편리하고 아이디어도 상당하고 성능도 뛰어납니다. 이 포스팅을 하기전 끙끙거리며 멀티세션을 사용할 수 있도록 연구를 하고 차근차근 포스팅 준비를 했는데 우연히 찾은 이 프로그램이 한방에 모든 문제점들을 해결해 주는 군요.
물론 프로그램을 사용하는 방법외에 (무슨과정으로 프로그램이 진행되는지 못미더울수 있으니) 직접 termsrv.dll 파일을 수정하여 접속하는 방법에 대해서도 포스팅 하도록 하겠습니다.