키워드 : Windows 8 mstsc 문제점, Windows 8 RDP 문제점, 터미널서비스 문제점, RDP 6.0, 자격증명

Windows 8 계정을 MS의 Live 계정으로 설정 시 발생할 수 있는 RDP 문제점에 대해서 다뤄본다.
해당 문제는 터미널서비스 서버와 클라이언트가 모두 Windows 8 일때 발생 하였다.
Windows 8에 포함된 RDP Version 6.0에서 발생하는 것으로 판단이 되며, 클라이언트가 Live 계정을 사용할 때 발생을 한다.

본인의 경우 증상은 아래와 같았다.
회사에서 사용하는 Windows 8(Live계정을 사용하는 클라이언트)와
집에서 사용하는 Windows 8(로컬계정을 사용하는 RDP서버)간 RDP(회사PC->집PC) 연결시 '자격 증명이 작동하지 않습니다."
계정과 암호는 분명히 맞게 입력을 했는데도 연결이 실패된다. TCP 포트를 확인해 보면 세션까지 맺는걸로 봐서 네트워크 문제는 아닌걸로 판단이 되어 회사와 집 PC에 각각 VMWARE로 Windows8을 새로 깔아서 확인 결과 원인은 Live 계정을 사용하는 회사 PC를 통해서 연결시에만 문제가 된다는 것을 알았다. 그리고 회사 PC를 통해 Windows 7(RDP서버)으로 연결시엔 문제가 발생되지 않는다.
RDP 연결시 본인은 mstsc 프로그램의 접속 히스토리 리스트에 흔적을 안 남기려고 cmd 창에서 명령어 기반으로 RDP 연결을 한다.
Live 계정을 사용하는 회사PC로 연결시에만 '사용자 자격 증명 입력' 창엔 암호 밑부분에 도메인 : Microsoft 표기가 되는게 보인다.
그래서 회사PC로 mstsc 프로그램을 띄운 후 컴퓨터와 사용자 이름까지 입력을 하니까 도메인 부분이 빠지면서 '자격 증명 작동' 문제 없이 연결이 된다. 하지만 회사 PC 내의 VMWARE는 연결이 되어도 집PC(물리적OS, 가상 OS 모두)로는 연결이 안된다.(그리고 로컬계정을 사용하는 회사 VMware Windows 8 로도 연결이 잘되고..)
그래서 집에 공유기 DDNS 도메인 변경 후 다시 시도.. 안된다. Wan IP로 연결, 그래도 안된다. 다시 공유기 Wan의 맥값 변경하여 Wan IP 변경… 그래도 안된다. 자격 증명 관리 창을 띄워서 수정해보고, 레지스트리를 건드려보고 별 짓을 다해도 안된다. 골때린다.. 버그인가..?
그래서 구글을 동원해 찾아보니 역시나 같은 문제를 겪는 사람들이 있었고, 그에 대한 해결책을 제시해 놓았다.

다시 정리하자면,
Windows 8 MS Live 계정을 사용하면서 cmd 창에서 명령어 기반으로 다른 Windows 8 RDP를 연결하는 경우 '자격 증명이 작동하지 않습니다.' 라는 문구와 함께 연결이 되지 않는다. 하지만 mstsc 프로그램을 띄우고서 하면 연결이 되는 RDP 서버도 있다.
이 문제는 RDP Version 6을 사용하는 경우만 발생하고 아직 국내엔 문제점을 보고하는 웹문서가 없는 듯 하다.

google에서 아래 두가지 문구로 검색을 하여 해결방법을 제시한 웹사이트를 찾아 냈다.
Windows 8 mstsc domain microsoft fail
Windows 8 credential login fail

아래는 해결방법이 나온 웹사이트 이다. 실질적으로 두번째 링크인 MS의 문서에 헤결 방법이 있다.
http://social.technet.microsoft.com/Forums/en-US/W8ITProPreRel/thread/859684c3-59f6-410a-bc9e-d9cdd666ae58/

http://support.microsoft.com/kb/941641

– MS 문서 내용 –
1.시작, 실행을 차례로 누르고 mstsc.exe를 입력한 다음 확인을 누릅니다.
2.옵션을 누른 다음 일반 탭을 누릅니다.
3.다른 이름으로 저장을 누른 다음 파일 이름 상자에 파일 이름을 입력합니다.
4.원격 데스크톱 파일을 저장할 위치를 선택하고 저장을 누른 다음 취소를 누릅니다.
참고 저장된 파일의 확장명은 .rdp입니다.
5.시작, 실행을 차례로 누르고 notepad를 입력한 다음 확인을 누릅니다.
6.파일 메뉴에서 열기를 누릅니다.
7.파일 형식 목록에서 모든 파일을 누릅니다.
8.찾는 위치 목록에서 4단계에서 저장한 파일을 찾아 누른 다음 열기를 누릅니다.
9.다음과 유사한 줄을 찾습니다.
authentication level:i:n
참고 n 자리 표시자는 현재 인증 수준을 나타냅니다.
10.인증 수준을 0으로 변경하여 줄이 다음과 같이 되도록 합니다.
authentication level:i:0
참고 인증 수준을 0으로 설정하면 RDP 6.0에서 서버 인증을 확인하지 않습니다.
11.파일의 끝에 다음 줄을 추가합니다.
enablecredsspsupport:i:0
참고 이 줄이 있으면 원격 데스크톱 연결을 설정하기 전에 자격 증명을 제공할 필요가 없습니다.
12.파일 메뉴에서 저장을 누릅니다.

* ms에서 제시한 방법에서 덧 붙히면 기본적으로 문서 폴더내에 Default.rdp 파일이 숨김형태로 존재한다. 해당 파일을 메모장으로 열어서 수정하면 된다. 따로 rdp 파일을 저장해서 사용할 경우 해당 rdp 파일을 수정하면 된다.

회사 PC로 집 PC 연결이 안되는 문제점은 RDP Version 6.0 의 버그인지? 아니면 다른 무언가가 있는지는 확인을 못했다.
4개의 물리 및 가상 Windows 8 OS를 동원 했으며 각각 OS는 PC명, 계정명, 암호 등을 달리해서 테스트 해봤고 TCP 덤프(계정정보가암호화됨)까지 떠 봤으나 원인을 찾지 못 함.
그냥 맘편하게 MS에서 제시한 방법으로 해결해서 사용한다.

★ 아래와 같은 상황에선 /public 모드 옵션을 사용하여 연결 문제를 해결 한다.
1) Windows XP(또는 2003) 클라이언트 PC에서 라이브계정을 사용하는 Windows 8 PC로 RDP 연결
c:\>mstsc /v sample.com:3311
2) 같은 클라이언트 PC에서 연결을 끊고 같은 도메인(혹은 IP주소)으로 다른 Windows 7 PC로 연결하여 로그인 시도.
c:\>mstsc /v sample.com:3322
암호를 맞게 입력해도 암호가 틀렸다고 나온다. 아래처럼 /public 옵션을 적용하면 문제가 해결된다.
c:\>mstsc /v sample.com:3322 /public
– 또는 mstsc 창을 띄운 후 옵션 클릭 -> 사용자 이름(MicrosoftAccount\sample@sample.com)을 지우고 Windows 7 계정 기입 -> 연결

* 윈도우 라이브 계정 도입으로 인해 발생되는 문제이므로 라이브 계정을 사용하지 않는다면 문제가 발생하지 않는다.
일련의 문제는 기존 연결의 사용자 이름이 HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers 레지스트리에 남게되고 재 연결때 서버측 도메인(또는IP주소)이 같을 경우 그 레지스트리 값을 그대로 사용하면서 문제 발생하는 것이다. 특히 명령어 기반으로 연결시엔 사용자를 미리 지정할 수 있는 옵션이 없는데다가 레지스트리의 기존값을 그대로 대입하기 때문에 문제의 원인 찾기가 쉽지 않았다.

Windows 8 mstsc 문제점 (명령어 기반으로 연결시..)

Windows 8 mstsc 문제점 (명령어 기반으로 연결시..)”에 대한 2개의 생각

  • 2013년 3월 22일 6:25 오후
    고유주소

    엄청나게 헤매고 있었는데 구원을 해주시는군요. 감사합니다.

    응답
  • 2013년 3월 26일 7:15 오전
    고유주소

    도움이 되셨다니 다행이네요 ^^;

    응답

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다