Remote desktop sharing on Linux?

Forum: LinuxTotal Replies: 11
Author Content
Sander_Marechal

Jun 02, 2008
3:32 PM EDT
Hi all,

I am looking for a remote desktop sharing utility. Not like VNC where you have to set up a server and all that, but a service such as dimdim or Adobe's new acrobat.com. My laptop is on a corporate LAN but occasional I have a need to share my desktop with e.g. SugarCRM support. These services can work through a Lan and firewall. With VNC I'd have to get the correct ports forwarded to my desktop.

I have been looking everywhere for a service that works on Linux as well. 99.9% out there only support Windows. A few support MacOSX as well. None that I found support Linux as the host (a few have flash-based viewers so the guest can be on Linux). Do you know of any?
techiem2

Jun 02, 2008
3:53 PM EDT
So I take it tunneling vnc through ssh isn't an option? (I know you can setup VNC at the X server level so it actually shares your desktop instead of just creating a new one).
rijelkentaurus

Jun 02, 2008
3:56 PM EDT
Sounds like you are after a WebEx kind of option, right?
jdixon

Jun 02, 2008
4:15 PM EDT
Pretty much everything on Linux seems to be VNC or RDP related. However, a quick Google search reveals this page:

http://blog.lxpages.com/2007/03/25/remote-desktop-for-linux-...

which mentions something called CrossLoop, which can be found at:

http://www.crossloop.com/

Worth looking at, anyway.

Please let us know if it works or not.
krisum

Jun 02, 2008
10:34 PM EDT
Is NX an option? I use nomachine's NX free edition (http://www.nomachine.com/select-package-server.php?id=1&ids=...) which is a breeze to setup. Just install the server packages on the machine (3 rpms/debs) and the client package on the other side (clients are available for Linux, Windows). The free edition allows upto two concurrent new sessions or can work in VNC kind of way of sharing the existing desktop ("shadow" mode). I have found that the server works out of box with little setup (just check /usr/NX/etc/server.cfg to enable shadow mode), and requires no extra ports since it tunnels through the normal ssh server.
Sander_Marechal

Jun 02, 2008
11:03 PM EDT
Quoting:So I take it tunneling vnc through ssh isn't an option?


No, because it would mean reconfiguring the corporate firewall to point port 22 to my IP address. That's what is so ideal about these kinds of services: The guest doesn't have to connect to my computer directly.

Quoting:Sounds like you are after a WebEx kind of option, right?


From reading wikipedia, it sounds like WebEx offers a lot of services that companies sych as dimdim offer as well, but not screen sharing.

Quoting:something called CrossLoop


Unfortunately, the host software is Windows only.

But after that I went looking for other VNC related software and I ran across VNC reflector, which may be an option: http://sourceforge.net/projects/vnc-reflector/ I'd need to install this on a publicly accessible server inside our network, then people from outside can connect to my laptop through there. No port forwarding needed.
krisum

Jun 02, 2008
11:34 PM EDT
I think you could use SSH port forwarding with NX (I guess something similar would work with VNC) in this scenario. Check this: http://www.nomachine.com/ar/view.php?ar_id=AR02C00151 If you have an HTTP proxy already running in the corporate environment, you could use that for NX as given here: http://www.nomachine.com/ar/view.php?ar_id=AR04E00457
Sander_Marechal

Jun 03, 2008
3:52 AM EDT
We have a HTTP proxy, but I don't have the root password so I can't change the configuration to allow this. Similar for the other NX solution: No (root) access to the firewall.

The problem to overcome with NX, VNC and all the other standard Linux solutions is that they expect the guest (client) to connect to the host (server). Not a problem when the host is a big server configured and maintained by sysadmins, but in the "desktop share" scenario, the host is an unprivileged user desktop inside a corporate firewall.

The solution is to have both the guest and the host connect to a server they can mutually reach: This is where those oodles of "desktop share" services jump in; they provide the common server that both parties can use.

I think I can make VNC reflection work for me, but it would be nice if any of the big boys (VNC, NX) can seriously look at this use-case and provide a reflection/proxy service by default. It shouldn't be too hard to add.
krisum

Jun 03, 2008
7:50 PM EDT
Did you take a look at the first solution provided above? It does not require any changes to the firewall rather just uses the port forwarding of the SSH protocol from the client side only (using -L option of ssh command). I have not tested it myself but I think that will be the simplest solution for you if it works. As I mentioned that the same should also work with VNC.
Sander_Marechal

Jun 03, 2008
9:59 PM EDT
From the article:

Quoting: On the client machine run the following:

# ssh -L 2222:your_nx_server_name:22 your_user@your_firewall_machine


I need an account on the firewall. I don't have that.
krisum

Jun 03, 2008
11:37 PM EDT
I would think that this will work on any publicly accessible machine that is running sshd since it just utilizes SSH forwarding feature. I may be a little dense here, but if you do not have an account on any machine accessible from outside the firewall how would you install/run vnc-reflector or any other such software?

Edit: To clarify the above: The ssh command mentioned logs in to "your_firewall_machine" and forwards any connections on local port 2222 to "your_nx_server_name" using the sshd on "your_firewall_machine". So when you connect to the local ssh (e.g. using ssh -p 2222 localhost) then you automatically get connected to "your_nx_server_name". As the article mentions this involves encryption/decryption twice, but that should work at a good enough speed with NX. Now "your_firewall_machine" can be any machine directly accessible from the client and running sshd. So all you need is an account on any publicly accessible machine for this to work. You should not require a root account on the client machine as long as the port "2222" is not a privileged one (i.e. >= 1024).
Sander_Marechal

Jun 04, 2008
2:02 AM EDT
Quoting:I would think that this will work on any publicly accessible machine that is running sshd since it just utilizes SSH forwarding feature.


Duh! Silly me. Thanks for pointing out the obvious...

You cannot post until you login.