Linux - Virtualization and CloudThis forum is for the discussion of all topics relating to Linux Virtualization and Linux Cloud platforms. Xen, KVM, OpenVZ, VirtualBox, VMware, Linux-VServer and all other Linux Virtualization platforms are welcome. OpenStack, CloudStack, ownCloud, Cloud Foundry, Eucalyptus, Nimbus, OpenNebula and all other Linux Cloud platforms are welcome. Note that questions relating solely to non-Linux OS's should be asked in the General forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Hi. I would like to know if it is possible to connect to a remote desktop that is running say Debian 8 with GNOME GUI. I have a server running through Microsoft Azure, and I noticed that they only offer connection by means of interfacing with a command line. However, I specifically need to run a program that is much more practical to use with a GUI as opposed to a CLI (I don't even think it properly supports a CLI at this time juncture), and while this program works under Windows, it is much more cost efficient for me to run it under Linux due to the licensing cost of Windows.
I spoke to a friend briefly who works with Ubuntu and he says he hasn't seen such a program before. I would appreciate it if somebody could either affirm or disprove his claim and possibly guide me towards a solution of what I am trying to achieve.
Absolutely. There are many ways to do what you want.
The one which may be the best for you (given that you want to use a single application) is to use X forwarding through ssh: http://en.tldp.org/HOWTO/XDMCP-HOWTO/ssh.html. This will allow you to use your application from any machine with an ssh client (including putty under Windows). It'll work over the internet, and is easily configured to use PKI for security.
A third, and less secure way is to use XDMCP: http://www.tldp.org/HOWTO/XDMCP-HOWTO/intro.html. Though less secure, it's probably the easiest to configure since everything you need is likely already installed.
Install some vnc server (i believe tightvnc is the default for Debian 8), set it to launch on startup. It will launch an internal X server and you can connect to it via VNC protocol.
Auto launched stuff can be controlled from $HOME/.vnc/xstartup
This setup is designed for headless machines, no real X server needed. Also this can be run from an unprivileged user account.
As for security, make it listen on localhost ONLY and connect to it with ssh port forwarding.
I would use either X forwarding or VNC. I use tightvnc as the windows vnc client, and VcxSrv on windows for X-forwarding via putty ssh.
For vnc on the server machine, I usually use x11vnc and start it manually when I'm connected over ssh, this way there isn't a full-time vnc service running on the server.
Both mechanisms work adequately over the internet.
With XWindows, you can always open a window from one host on another. I often use it just between my two computers (one running Solaris and one running Mac OS X, with the Mac OS X one being the one that is receiving the window from the other since OS X windows can't be shared in that way since its native windows are not XWindows windows, but it does support displaying XWindows windows) that share one monitor. With Gigabit Ethernet you hardly even notice it's running on another computer.
Absolutely. There are many ways to do what you want.
The one which may be the best for you (given that you want to use a single application) is to use X forwarding through ssh: http://en.tldp.org/HOWTO/XDMCP-HOWTO/ssh.html. This will allow you to use your application from any machine with an ssh client (including putty under Windows). It'll work over the internet, and is easily configured to use PKI for security.
A third, and less secure way is to use XDMCP: http://www.tldp.org/HOWTO/XDMCP-HOWTO/intro.html. Though less secure, it's probably the easiest to configure since everything you need is likely already installed.
FWIW, the stuff required for XDMCP is not already installed. The Ubuntu VMs Microsoft Azure provide are fundamentally slightly modified plain Ubuntu server installs - meaning there is no X, no GUI packages installed at all by default.
You can install it with apt, of course. But depending on how the particular application works, and how graphics intensive it is, performance over XDMCP could be extremely poor. I find VNC's performance to be pretty good.
If it's just one specific application that needs to be run, then the simplest method may be to use ssh tunneling of X. You still have to use apt to install X, of course. But there's no need to set up any sort of X server (XDMCP or VNC or otherwise). The X server in this case would be what you normally think of as the "client" - namely, the local machine.
With XWindows, you can always open a window from one host on another. I often use it just between my two computers (one running Solaris and one running Mac OS X, with the Mac OS X one being the one that is receiving the window from the other since OS X windows can't be shared in that way since its native windows are not XWindows windows, but it does support displaying XWindows windows) that share one monitor. With Gigabit Ethernet you hardly even notice it's running on another computer.
Even with gigabit ethernet, I find it doesn't work so hot with a web browser. But that's more of a stunt than anything else (not much reason to do such a thing).
Now, the OP is asking about a Microsoft Azure VM, so the connection is going to be a lot slower and a LOT laggier than a local gigabit ethernet connection. Also, the low end Azure VMs are really pathetic in terms of raw performance. I have a bottom end Ubuntu VM on Azure. It's plenty good enough for the extremely lightweight web server task I have it set up for (just a throwaround practice machine, really). But it's really lame. We're talking 667MB of RAM and a single Xeon core (E5-2674@2.4Ghz).
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.