2013-04-17 2 views
6

내 웹 페이지에서 서버에 대한 rdp 세션을 열려고합니다.웹 페이지에서 RDP하는 방법

<td><a href="file:///c:/Users/stegar06/Desktop/wtf.bat">testrdp</a></td> 

.bat 파일 그냥 작성 다음 줄이 있습니다 MSTSC/V : 유럽, 중동, 아프리카 - 권운

무엇 발생하는 파일이 단지 텍스트 파일로 내 크롬 브라우저에 표시됩니다 있다는 것입니다. 따라서 웹 페이지가로드되고 글자 그대로 "mstsc/v : emea-cirrus"가 맨 위에 표시됩니다. 원격 데스크톱 클라이언트를 시작하고 주소로 이동하려면 어떻게해야합니까?

나는 또한 .rdp 파일을 만들려고 시도했으며 href를 참조했다. href 또한 그냥 일반 텍스트로 나타났습니다. RDP 파일은 다음 코드를 사용하여 만든 :

screen mode id:i:2 
desktopwidth:i:1436 
desktopheight:i:925 
session bpp:i:16 
auto connect:i:1 
full address:s:emea-orion 
compression:i:1 
keyboardhook:i:2 
audiomode:i:2 
redirectdrives:i:0 
redirectprinters:i:0 
redirectcomports:i:0 
redirectsmartcards:i:0 
displayconnectionbar:i:1 
alternate shell:s: 
shell working directory:s: 
disable wallpaper:i:1 
disable full window drag:i:1 
disable menu anims:i:1 
disable themes:i:1 
bitmapcachepersistenable:i:1 
winposstr:s:0,3,0,0,800,600 
redirectclipboard:i:1 
redirectposdevices:i:0 
drivestoredirect:s: 
autoreconnection enabled:i:1 
authentication level:i:0 
prompt for credentials:i:0 
negotiate security layer:i:1 
remoteapplicationmode:i:0 
allow desktop composition:i:0 
allow font smoothing:i:0 
disable cursor setting:i:0 
gatewayhostname:s: 
gatewayusagemethod:i:0 
gatewaycredentialssource:i:4 
gatewayprofileusagemethod:i:0 
+0

브라우저는 이러한 종류의 동작을 피하기 위해 샌드 박스 처리됩니다. 일반적으로 임의의 페이지를 방문하면 컴퓨터에서 일부 실행 파일을 호출하고 잠재적으로 누가 아는 지, 어떤 손상이 있는지를 원하지 않습니다. 이와 같은 것을 가능하게 만들 수 있다면, 몇 가지 보안 오버라이드를해야 할 것입니다. 그리고 그때조차도 예방 조치가 필요하지 않을 것이라고 생각하지 않습니다. 'wtf.bat'가 오버라이드 된 것으로 가정하십시오. 대체 된 배치 파일은 비즈니스에별로 좋지 않을 수 있습니다. – JayC

+0

가상 머신이 ActiveX 컨트롤 (IE 전용)을 통해 액세스하고 HTML5 Canvas 및 WebSockets가있는 VNC에 대해 들어 본 적이 있습니다 ... RDP와 같은 액세스를 원한다면 여전히 옵션이 있습니다. 하지만 그렇지 않으면 로컬로 액세스 할 수있는 실행 파일이나 배치 파일을 실행하면 원하는 브라우저에서 보안 허점을 열어야합니다. – JayC

+1

3 개의 단어 :'' – tripleee

답변

1

은 보안상의 이유로, 당신은 단순히 현대의 브라우저에서 링크를 통해 배치 파일을 실행할 수 없습니다.

VBScript에서 호출을 배치 파일로 래핑하고 셸을 통해 실행하면이 기능을 사용할 수 있습니다. 그러나 IE에서 허용하도록 ActiveX 사용 권한을 열어야합니다.

이 작업을 수행하는 방법에 대한 예는 here을 참조하십시오.

11

Windows가 원격 데스크톱과 연결해야하는 서버 측에서 .RDP 파일을 만들고 브라우저가이를 표시하는 대신 강제로 다운로드하도록 할 수 있습니다. PHP에서는 다음과 같이 할 것입니다 :

$file = 'screen mode id:i:2 
desktopwidth:i:1436 
desktopheight:i:925 
session bpp:i:16 
auto connect:i:1 
full address:s:emea-orion 
compression:i:1 
keyboardhook:i:2 
audiomode:i:2 
redirectdrives:i:0 
redirectprinters:i:0 
redirectcomports:i:0 
redirectsmartcards:i:0 
displayconnectionbar:i:1 
alternate shell:s: 
shell working directory:s: 
disable wallpaper:i:1 
disable full window drag:i:1 
disable menu anims:i:1 
disable themes:i:1 
bitmapcachepersistenable:i:1 
winposstr:s:0,3,0,0,800,600 
redirectclipboard:i:1 
redirectposdevices:i:0 
drivestoredirect:s: 
autoreconnection enabled:i:1 
authentication level:i:0 
prompt for credentials:i:0 
negotiate security layer:i:1 
remoteapplicationmode:i:0 
allow desktop composition:i:0 
allow font smoothing:i:0 
disable cursor setting:i:0 
gatewayhostname:s: 
gatewayusagemethod:i:0 
gatewaycredentialssource:i:4 
gatewayprofileusagemethod:i:0'; 

header("Content-Disposition: attachment; filename=filename.rdp"); 
header("Content-Type: application/rdp"); 
print $file; 
exit(); 

저는이 기술을 이전에 사용했고 잘 작동했습니다. 사용자가 링크를 클릭하거나 저장 또는 열 것인지 묻는 메시지가 나타나면 열 때 원격 데스크톱이 지정된 설정으로 실행됩니다. 특히 ASP.MVC

public FileResult RDP() 
     { 
      MemoryStream memoryStream = new MemoryStream(); 
      TextWriter tw = new StreamWriter(memoryStream); 
      tw.WriteLine("screen mode id:i:2"); 
      tw.WriteLine("use multimon:i:0"); 
      ///The rest of the file 
      memoryStream.Position = 0; 
      return File(memoryStream, "application/rdp", "conenction.rdp"); 
     } 
+4

나는 마음을 놓지 않기를 바란다. .NET 예제를 추가했다. 팁은 RDP를 사용하고 모든 설정을 한 다음 일반 탭에서 옵션과 "다른 이름으로 저장"을 클릭하는 것입니다. 모든 설정을 복사하십시오. URL의 형태로 데이터베이스 또는 뭔가 +1로 이동 중에 RDP 파일을 만들 수 있기 때문에 이것은 훌륭합니다. --- 그리고 정말로, 이것이 답이되어야합니다! – ppumkin

+0

좋은 답변, 고마워.다운로드 영역을 혼란스럽게하지 않는 것처럼 파일을 실행 후 제거하는 방법이 있습니까? – Federer

1

의 .NET 용

편집

예 나는 RDP 클라이언트 기반 브라우저의 사용을 제안 할 수 있습니까? 요즘 오픈 소스를 선택할 수 있습니다. Windows의 경우 Guacamole FreeRDP-WebConnect (Linux 서버를 사용하는 경우) 또는 Myrtille (Windows의 경우)입니다. 2X RDP 클라이언트 또는 LogMeIn과 같은 더 많은 기능 (필요에 따라 다름)이 포함 된 상용 소프트웨어도 있습니다.

관련 문제