Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Remote Desktop Protocol in Node.js (lc.cx)
140 points by citronneur on July 7, 2015 | hide | past | favorite | 28 comments



Oh cool! Now you can embed an RDP session into a webpage. Finally, a way to use the primary system administration tool from almost anywhere!

With this, you can hand out links to pages with your server RDP already configured - just send the link to the admin and let them administer.

How well does this work with dynamic username/password? If we wanted to leave those fields blank, and maybe have the webpage prompt on open?

Something missing is RDPClip.exe, which synchronizes the copy/paste clipboard data between your local session and any remote sessions. Though I'm not sure how that would work in some cases.


Agreed - this is awesome! Also, if you didn't catch it, there appears to be a full web example using this library (as well as websockets) here: https://github.com/citronneur/mstsc.js


Is graphical remote desktop really the primary systems administration tool in the windows server world?


Yeah, it's a widely accepted de facto method for interacting with the GUI. While in Server 2012, it feels like all GUI elements are just wrappers for Powershell cmdlets, most 3rd party tools have only a graphical interface.

Server 2003 doesn't support Powershell 4 or newer, nor .NET 4.5.1 or newer, and so IIS6 and other old Windows features have limited CLI interfaces.

Most Powershell cmdlets work on Server 2008/R2, but remote (WinRM) isn't enabled. There's a quick command to enable, but that's a security hole like leaving WMI open to the internet, and so is hard to push on secure environments.

RDP gives KVM, and that's been enough for decades.


If people still have '03 they aren't part of the windows server world anymore.


Yes they are, for a few more days.


Maybe for tasks in s small show or on a specific server, but you'll find that most enterprises have automated tools for provisioning, deployment, patching, etc.


sure they do ;)

I would phrase that more like: Most enterprises believe they have automated tools etc. Sure, the desktops are controlled centrally, but most corporations i have been working with in the last 15 years have had very limited tools to deploy servers.

Most of the time, i have seen these projects get implemented, but then die out when they start to consider all the old in-house apps. In the last one i was at, they implemented the tools, but ended up using it only for basic system setup and patching. Any application was installed by hand and managed by hand.


Only in small or unskilled shops.


I would hazard to suggest those outnumber the skilled large organisations by quite a margin.


An exemple of node-rdpjs -> https://github.com/citronneur/mstsc.js


Very nice work, but Microsoft did a pretty good job with their RDP clients, and making them for OS X and of course Windows. I'm not sure what the draw is for a web-based RDP client.


It's usable by everyone else NOT using MS (which, in IT, is a lot of people).


Others have alluded to this elsewhere in the comments, but the draw is that this is a programmable rdp client in Node.JS. You can use this to write host scripting code, you could use this as the basis for something like Screenhero, etc.


VPS / server management all from one user interface / control panel.


We have this already with VNC. Ramnode has a HTML5 VNC client in their CP.


VNC is supposedly much slower than RDP.


VNC is a raster/pixel protocol. RDP uses Windows' drawing primitives.

So for anything that's not intrinsically raster (video, 3d rendering), RDP is certainly faster. :)


RDP on ChromeOS.


https://chrome.google.com/webstore/detail/chrome-remote-desk...

chrome addin for rdp on chromeos or chrome desktop browser


Are websockets required or can it fall back to polling? I would like to to use it behind an authentication proxy that does not support websockets.


Finally tested it out. Yes, it does fall back to polling :)


Oh this is great! The remote-host scripting this would allow is super cool.


Unless you're building malware/pen-test tools or you're targeting old versions of Windows remote management is much easier via winrm. And there's a chance that your preferred language has a library for it already.


If only it supported NLA...


Planned in next release


That's awesome. Most RDP implementers seem to give up on NLA.


Do you have any screencast to see it in action?




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: