VNC and Similar
Important Note: Where software codebases for Linux are listed below with URLs for their 'upstream' developer sites, you as a Linux user should not in the general case download this (or any other) software from the 'upstream' site's code repositories, downloadable tarballs, etc. Instead, you should, where possible, favour distro-maintained packages -- created by and for your Linux distribution. There are a number of individually compelling reasons why this is so. -- RM.]
Contents:
- 1. VNC/RFP Linux implementations
- 2. VNC/RFP non-Linux implementations
- 3. NX Protocol
- 4 Xpra remote X11-handler
- 5. RDP (Remote Desktop Protocol)
- 6. Tarantella
- 7. TeamViewer
- 8. Others
- Discussion
1. VNC/RFP Linux Implementations
VNC is a graphical desktop sharing system usable to remotely control another computer. Its basis in transport of pixels supports great flexibility, but limits network efficiency compared to remote graphics solutions with more abstraction of graphics (covered further down this page), such as NX and X11.
Its underlying bitmap-transport protocol "RFP" = Remote Framebuffer Protocol aka "RFB" = Remote Framebuffer, should not be confused with Microsoft's Windows-centric bitmap-transport protocol "RDP" = Remote Desktop Protocol, developed by Citrix.
2X Software, VNC/RFP client. Proprietary.
AppliDis, VNC/RFP client. Proprietary.
Cendio ThinLinc, VNC/RFP server and client. Proprietary.
EchoVNC, VNC/RFP client, Remote Desktop (RDP) client, and RAdmin client, based on UltraVNC. Includes firewall-friendly packet-relaying courtesy of the echoWare toolkit. Also available for MS-Windows. Last updated 2013. GPLv2. http://sourceforge.net/projects/echovnc/
gtk-vnc, VNC/RFP client. C, gtk+-based (core library) with Python bindings, written by Jan de Groot. Front-ends for it include Vinagre (GNOME), Boxes (GNOME), virtviewer, and virt-manager. Can be compiled to work with gtk+3 or gtk+2, with Vala bindings or without, with use of Cyrus SASL for authentication or without. Includes lib to provide GObject bindings and to provide a PulseAudio bridge. Requires gnutls, libgcrypt. LGPL. https://wiki.gnome.org/Projects/gtk-vnc
iTALC (intelligently Teaching And Learning with Computer), VNC/RFP server and client. C++, Qt4. Developed for use in classrooms. MS-Windows is also supported. GPL. http://italc.sf.net/
Keystone (unmaintained), VNC/RFP viewer for use with Qt and kdelibs 2.x, and was usually bundled into the KDE 2.x kdenetwork package. Project appears to have stalled at v. 0.4 w/ KDE 2.0 in 2001. GPL. http://xmelegance.org/keystone/
libVNCServer and libVNCClient, cross-platform C libraries that allow to easily implement VNC server or client functionality in an application, implementing RFP v. 3.8. Cross-platform. GPL. https://libvnc.github.io/
Paglo Remote-VNC, VNC/RFP server and client, fork of TightVNC, adding automatic traversal of NAT and firewalls using Jingle. GPLv2. http://sourceforge.net/projects/remotevnc/
RealVNC, VNC/RFP server and client. Formerly AT&T Cambridge's reference implementation. There is a GPLed 'open edition' (formerly 'free edition') plus two other proprietary editions. http://www.realvnc.com/. Open edition is often bundled in Linux distributions under names like vnc4server and xvnc4viewer.
TigerVNC, VNC/RFP server and client, 2009 fork of TightVNC started because TightVNC had produced no releases since 2006 and RealVNC had expended little effort on its open edition. Focuses on performance and on remote display functionality. GPL. C, C++, and Java. GPLv2. http://tigervnc.org/
TightVNC, VNC/RFP server and client, including some enhancements such as JPEG and zlib compression and automatic SSH tunneling in Unix. Written in C, C++, and Java. GPLv2. http://www.tightvnc.com/
TridiaVNC, VNC/RFP server and client, discontinued in 2005. ('TridiaVNC Pro' was proprietary.) GPL. http://www.tridiavnc.com/
TurboVNC, VNC/RFP server and client, fork of TightVNC 1.3.x, including numerous performance enhancements. GPLv2. http://www.turbovnc.org/
x0rfbserver, kfrb, and x0rfb from the rfb package (discontinued; great name, eh?), site http://www.hexonet.de/ is gone — defunct project. Debian removed the 'rfb' package in 2006 as orphaned. GPL.
x11vnc, VNC/RFP server by Karl Runge, at http://www.karlrunge.com/x11vnc/ (uses libvncserver). GPL.
Xvnc, VNC/RFP server, based on a standard X11 server, presenting itself to local applications as an X11 server and to remote VNC users as a VNC/RFP server. GPL. http://www.hep.phy.cam.ac.uk/vnc_docs/xvnc.html
2. VNC/RFP non-Linux Implementations
2X Software, AppliDis, Apple Remote Desktop, Apple Screen Sharing (iChat), Cendio ThinLinc, Chicken of the VNC, EchoVNC, Fog Creek Copilot, iTALC, Mac HelpMate, Microsoft Remote Desktop Services/Terminal Services, PocketVNC, Remote Desktop Manager, Royal TS, UltraVNC.
You'll find a number of resources about VNC over SSH in my
ssh-clients
file, http://linuxmafia.com/ssh/.
Also worth looking into:
3. NX Protocol
NX, developed by NoMachine, is a remote desktop-environment display technology that greatly improves on the performance of pixel-transport protocols such as VNC/RFP and RDP. NoMachine based the protocol on the Differential X Protocol Compressor (DXPC) project. All implementations include tunneling over SSH. Natively, NX was intended to optimise remote X11 sessions, but many NX server implementations also support proxying connections to RDP and/or VNC/RFP, giving those protocols some of the same speed improvements.
2X Terminal Server for Linux, server. Proprietary.
FreeNX: (http://sourceforge.net/projects/freenx.berlios/). Client and server. As of 2015, FreeNX is unmaintained since 2008, and supplanted by newer alternatives such as X2Go and Neatx. GPLv2.
This package started out as Kevin Vigor's BSD-licensed DXPC (Differential X11 Protocol Compressor), http://www.vigor.nu/dxpc/, an open-source method of sending highly compressed and proxied X11 graphics, an update of the LBX = Low Bandwidth X idea. Much faster than VNC. This became MLView DXPC (final version Nov. 2002), then NoMachine's NX aka NX Terminal Server (http://www.nomachine.com/), which during that transition switched to proprietary licensing. Then in 2005, Fabian Franz's FreeNX project reused NX's core libraries, which are GPLed, while substituting GPLed server pieces for NX's proprietary ones.
Very laudatory article about FreeNX:
http://www.linuxjournal.com/article/8342kNX, client. By Joseph Wenninger. Unmaintained, feature-incomplete. GPL.
NeatX server was an internal project at Google, released to the public and approximating parity with the essentials of the proprietary NX server, but no longer maintained since 2009. GPLv2. https://code.google.com/p/neatx/
NoMachine Enterprise Client, regular client, clients. Binaries also exist for MS-Windows, Macintosh OS X, and Solaris. Proprietary. https://www.nomachine.com/download
NoMachine Enterprise Server, Terminal Server, and Cloud Server, servers. Proprietary. https://www.nomachine.com/feature_comparison
nxcl client and libnxcl library, client. By Seb James. Update to George Wright's nxclientlib, removing its dependency on Qt, adding GNU autotools support, and working with version 3 of the NX core libraries. The nxcl client runs as a daemon process and communicate with dbus for system communication, and to libnxcl for NX functions. GPL. https://github.com/Fabianx/freenx/tree/master/freenx-client/nxcl
nxlaunch, client. By Seb James. gtk+-based graphical NX tool. Requires nxcl (daemon client) to negotiate and operate the NX connection. It thus does not yet call the libnxcl library directly, but could be rewritten to do. GPL. https://github.com/Fabianx/freenx/tree/master/freenx-client/nxcl
nxrun client and nxc client library, client. pygtk-based. By Lawrence Roufail. Somewhat unfinished as to feature set, as of 2006, and possibly orphaned. GPL.
OpenNX client is similar to the original NX client, but with some enhancements. C++, wxWidgets. Binaries also exist for MS-Windows and Macintosh OS X. LGPL 2.1. http://opennx.net/
qtnx, client. By George Wright. Qt 4.x-based, uses Wright's variant of nxcl library 'nxclientlib'. GPL. https://github.com/gw280/QtNX
QVD, server and client. GPL. http://theqvd.com
Remmina, front-end (see separate entry) does NX via a plug-in able to call X2Go's nxproxy client.
X2Go, server and client. Also does RDP via proxying from X2Go client to X2Go Server to rdesktop encrypted over SSH. Coded in Python (and possibly other languages). Client is sometimes packaged as 'NX proxy' / 'nxproxy'. Client is reported to be non-interoperable with NoMachine NX's and FreeNX's servers. GPLv2+, MIT License, BSD License, AGPL. http://wiki.x2go.org/
4. Xpra (X Persistent Remote Applications) remote X11-hander
Nathaniel Smith designed Xpra as a set of utilities to run X clients, typically on a remote host, and direct their display to the local machine without the X clients closing or losing any state in case the network connection between the local machine and the remote host is lost. He was inspired in its design by author's experience of attempting to use various setups based on NX technology, attempting to improve on that experience.
It connects as a compositing window manager to an Xvfb display server. However, instead of combining the window images to present on the screen, it directs the window images into a network connection to the Xpra client, where they are displayed on the remote screen. The Xpra server also supports direct attachment, which makes it behave as a persistent application server, for example in the case where there is only an X server available at the remote end.
Xpra also acts as a window manager for the X server it is running against, but does not actually have any window manager policy built into it. Instead, it takes all the window management requests from the applications, sends them over the wire to the client, which then issues those same requests on the real display, waits for further answer the real window manager gives, and then forwards that answer back to the Xpra server. In addition to the normal Xpra client, it also supports using an HTML 5 capable Web browser as a client.
Xpra has been aptly called "GNU Screen for X11".
Coded in Python. GPLv2+. https://xpra.org/
5. RDP (Remote Desktop Protocol)
RDP is the commodity form of Citrix's remote-imaging technology that it called ICA = Independent Computing Architecture, subsequently licensed to Microsoft. The server side is Windows-only for remote execution of Win32 code. There are numerous Linux clients, both open source and proprietary.
2X Software Parallels, RDP client. Proprietary. http://www.2x.com/rdp-client/linux/
Citrix Winframe, Metaframe, Metaframe XP, Presentation Server, XenApp, reference RDP client from Citrix called its implementation of ICA = Independent Computing Architecture remote imaging, which Citrix bundled with its MultiWin extensions to MS-Window NT 3.5x to create Citrix Winframe in 1996. Winframe was then licensed by Microsoft Corporation and rebranded as Microsoft Terminal Server. Microsoft also rebranded the ICA protocol as Microsoft Remote Desktop Protocol = RDP. Citrix then further developed Winframe into MetaFrame, Metaframe XP, Presentation Server, and most recently XenApp. Citrix calls its client piece a 'receiver'. Proprietary. http://www.citrix.com/
Ericom Blaze, RDP client. Proprietary. http://www.ericom.com/
FreeRDP, RDP client, a fork of rdesktop aiming at modularizing the code, addressing various issues, and implementing new features. Apache License 2.0. http://www.freerdp.com/
iTivity, RDP client, Windows Terminal Services client, X11 server, and SSH/telnet client for multiple OSes. Company in question formerly produced TridiaVNC. Proprietary. http://www.tridia.com/itivity/
KRDC (KDE Remote Desktop Connection), a graphical (kdelibs, qt) front-end to FreeRDP and libvncserver, with FreeNX planned in the future. FDL, GPL, LGPL. https://www.kde.org/applications/internet/krdc/
NeutrinoRDP, RDP client, a fork of FreeRDP 1.01. xrdp is a module-based RDP server, which can act as RDP proxy server. xrdp contains 'front-end' module called NeutrinoRDP, which can be used to make an RDP connections from xrdp. The proxy module actually uses neutrinordp-client shared libraries to make RDP connections from the xrdp server. (The flow looks like: Client A to xrdp load neutrino proxy module to Client B.) Apache License 2.0. https://github.com/neutrinolabs/NeutrinoRDP
PAC Manager, a Perl/gtk+ graphical front-end to rdesktop for RDP, vncviewer for VNC/RFP, SecureCRT/PuTTY/etc. for ssh, telnet, etc. GPLv3. https://sites.google.com/site/davidtv/
rdesktop, the original open source RDP client. Much faster than VNC. GPLv3. http://www.rdesktop.org/
Remmina, graphical remote-desktop client for gtk+, front-ending FreeRDP for its RDP support, and also doing VNC/RFP, NX, XDMCP, and SSH. GPL. http://remmina.org/
SeamlessRDP, RDP server-side (Win32) extension software developed by Sendio, originally for the proprietary Sendio ThinLinc RDP server for Win32 but then released as open source and usable without ThinLinc, using rdesktop 1.8.0 or later. In seamless mode, the RDP client creates a separate X11 window for each window on the server side. GPLv3. https://www.cendio.com/seamlessrdp
ThinSoft WinConnect, RDP client. Proprietary. http://www.thinsoftinc.com/product_rdp_client_winconnect.aspx
tsclient (Terminal Server Client), gtk+/gnomelibs graphical front-end to rdesktop, Xnest, and VNC/RFP. In C. GPL. http://sourceforge.net/projects/tsclient/
Ulteo Open Virtual Desktop, RDP client included in an application delivery and virtual desktop system with many other features. GPLv2 with some proprietary modules. http://www.openvirtualdesktop.com/
xrdp is an RDP and X11 server, that can also be used as a VNC/RFP to RDP bridge. Uses Xvnc or X11rdp as a backend. Apache License 2.0. https://github.com/neutrinolabs/xrdp
6. Tarantella
For completeness:
Oracle Secure Global Desktop: This is a
remote-Win32-access technology formerly called Tarantella, until Sun
Microsystems bought Tarantella, Inc., formerly Santa Cruz Operation
(dubbed 'old SCO' to distinguish it from the Utah company formerly
named Caldera Systems that renamed itself The SCO Group). Santa
Cruz Operation in turn had developed Tarantella from code acquired when
it bought IXI Limited of Cambridge, UK and Visionware Limited of Leeds,
UK, in 1993 and 1994, respectively. Following the Oracle acquisition,
Sun Secure Global Desktop became Oracle Secure Global Desktop. Proprietary.
http://www.oracle.com/us/technologies/virtualization/secure-global-desktop/overview/
7. TeamViewer
For completeness:
TeamViewer is a computer software package
for remote control, desktop sharing, online meetings, Web conferencing,
and file transfer between computers. Proprietary.
http://www.teamviewer.com/
8. Others
For completeness:
Other non-VNC/RFB, non-RDP, non-NX remote-desktop solutions are
available on Linux from Bomgar, Ericom, GO-Global, Google (Chrome
Remote Desktop), GoToMyPC, Mikogo, NetSupport Manager, OpenText, Proxy
Networks, Radmin, Remote Utilities, ScreenConnect, Splashtop Remote,
Symantec pcAnywhere, and WebEx. All of these are proprietary.
Discussion
The remainder of this page is mailing list discussion relevant to the options cataloged above.
From david.golden@oceanfree.net
From: David Golden (david.golden@oceanfree.net)
To: ilug@linux.ie
Subject: Re: [ILUG] RE: VNC Opinions
Date: Fri, 21 Dec 2001 10:56:55 +0000
On Friday 21 December 2001 10:23, Siobhan Kelly wrote:
> x-application-windows on my Unix machine, I wanted to
> run a X-desktop such as KDE though and wasn't able to
> configure this.
>
As I've mentioned out-of-the-blue a few days ago on this mailing list, there are two different ways to use VNC on Unix boxes - the original way makes VNC export a completely different X desktop to the normally configured defaults, by using a special server binary based on XFree 3.3 called "Xvnc".
Normally, Linux distributions which include VNC set this up to export a lightweight desktop environment based on twm - in theory, you could alter the startfiles Xvnc uses (which are normally completely independent from the normal X ones) to start a heavyweight desktop environment like KDE or GNOME - just change "twm" to "startkde" in ~/.vnc/xstartup, for example - but beware that KDE <3.0 won't reliably support two instances of the environment it establishes running at the same time for the same user.
The second method, more similar to the way VNC works on Windows and Mac, is to export a pre-existing X desktop. The program to do this is called (pretty badly from a marketing perspective) "x0rfbserver". You just start up an X server, and then the end-user can start up x0rfbserver to export that display via VNC. This could potentially be very useful for tech support, "persistent" remote logins, and so on. It also breaks the normal X security/authentication model (obviously enough, it's bypassing it totally), so should be used with care.
http://www.hexonet.de/software/x0rfbserver/ (2005 note: Site is defunct, and project apparently died during 2004)
Date: Fri, 21 Dec 2001 02:23:33 -0800 (PST)
From: Siobhan Kelly (dublingeek@yahoo.ie)
To: ilug@linux.ie
Subject: [ILUG] RE: VNC Opinions
I've just read this week's IBM DeveloperWorks article about VNC and SSH (http://www-106.ibm.com/developerworks/library/l-sare1.html?n-l-12201) The article will concentrate on X next week, and by then I should have my answers.
By the way thanks for you tips on X but I was really interested in your opinion of VNC. I know somebody is going to point out that the clear-text/hash password sub-thread was about VNC but, all the other postings were about VNC. If I can run VNC over SSH, is this not better than X over SSH? Since VNC will run an any platform (where binaries are not available it will run in a JVM). As I said in my earlier mail, we use VNC to get remote views on Windows clients and vice-versa from those Windows clients to our Windows and Unix servers. This is why I prefer VNC over X. I tried X before and was happy to run individual x-application-windows on my Unix machine. I wanted to run a X-desktop such as KDE, though, and wasn't able to configure this.
Regards
Siobhan
From: "Robert Gallagher" (nothingworks@eircom.net)
To: ilug@linux.ie
Subject: RE: [ILUG] VNC opinions
Date: Fri, 21 Dec 2001 01:34:33 -0000
You could also try using an exported X desktop.
First, start an X server on your local machine; I find labtam's Xwinpro to be the best, www.labf.com.
Then from your shell, set the DISPLAY environment variable like so: "export DISPLAY=<your-ip>:0.0".
Where your-ip is the IP of the machine you started the X server on earlier. And that's basically it; fire up an xterm to see that it's working, and then you can go off and start up window managers or whatever.
You could also set the DISPLAY variable automatically by putting this line in your shell start-up profile:
export DISPLAY=`w | grep <username> | awk '{print $3}' | head -n 1`:0.0
I've found exported desktops to be a lot faster than VNC, if you're just planning on running X apps remotely, it's usually a better option.
You can also tunnel X traffic over an SSH connection using something like plink, but I'm not 100% too sure how to go about that :)
From: David Golden (david.golden@oceanfree.net)
To: ilug@linux.ie
Date: Tue, 4 Dec 2001 23:02:03 +0000
Subject: [ILUG] VNC and X
Something that maybe not everyone on the list has seen- I came across a useful little utility today - x0rfbserver
http://www.hexonet.de/software/x0rfbserver/ (RM 2005 note: Site is defunct, and project apparently died during 2004)
Unlike the normal Unix VNC server (which is a modified X server, and independent from your normal desktop), this one acts more like VNC on Windows and Mac OS, allowing remote access to a pre-existing X desktop by vncclients.
Now, this sucks compared to X for normal remote GUI work, but could be very useful for support and teaching environments - the one thing you can't normally do with X is see the exact same screen as the end-user - with this application, you can "remote control" their display, and maybe even walk them through step-by-step what they're supposed to be doing.
So, now you can have the best of both worlds on Linux - proper X remote GUIs, and the style of brute-force remote-control of whole displays popular with Windows-admin-monkeys.
Date: Thu, 1 Mar 2001 12:01:34 -0800
To: pigdog-l@bearfountain.com
Subject: Re: [Pigdog] VNC r0xx
From: Rick Moen (rick@linuxmafia.com)
begin PaoTzu quotation:
> There is a ton of instructions on how to set up ssh+VNC.
Stuff I have on hand, relevant to that:
Cameron Simpson's (cs@zip.com.au) VNC over SSH
instructions at
http://www.zip.com.au/~cs/answers/vnc-thru-firewall-via-ssh.txt
,
Frank Stajano's (fstajano@uk.research.att.com)
"SSH-protected VNC" paper at http://www.uk.research.att.com/vnc/sshwin.html
and http://www.uk.research.att.com/vnc/sshvnc.html
,
Mindbright Technology AB's (Mats Andersson's) MindVNC. GNU
General Public License. Java source or bytecode. Implements
secure (SSH-tunneled) VNC-client sessions, as example of how
MindTerm's ssh-package can be used to SSH-tunnel TCP-based
protocols, generally. SSH protocol v. 1.5.
http://www.mindbright.se/english/technology/products/mindvnc.html
Using VNC over ssh on NT http://web.mit.edu/pismere/ssh/vnc-over-ssh.html
VNC/SSH through firewalls
http://www.zip.com.au/~cs/answers/vnc-thru-firewall-via-ssh.txt
Also covered in Sean Boran's SSH article: http://www.boran.com/security/ssh_stuff.html
To: svlug@svlug.org
Subject: Re: [svlug] VNC
From: Nathan Myers (ncm@cantrip.org)
Date: Sat, 5 Jun 1999 08:56:04 -0700
Rob Walker wrote:
> Are you guys seeing any (more!) windows stability
issues while you are
> running VNC? Larry Augustin was seeing some problems
running vnc and
> just one app.
I have no access to MS systems, but the VNC FAQ on their Web site has a long list of MS bugs and workarounds, and also mentions a memory leak in older versions of the server. I did notice that it's pretty easy to hang Netscape's Java interpreter by running the VNC Java viewer, which would otherwise have been pretty cool. Amusingly, in light of Mandrake's comments, it was Enlightenment's pop-up tooltips that first hung the Java viewer.
A good way to hang VNC itself, by the way, is to try anything recursive. Too bad; that would be the ultimate cool, like a hall of mirrors in a window.
Nathan Myers
ncm@cantrip.org
To: svlug@svlug.org
Subject: [svlug] VNC
Message-Id: E10q3SX-0008Ew-00@localhost
From: Nathan Myers (ncm@cantrip.org)
Date: Fri, 4 Jun 1999 16:33:09 -0700
I have been trying out VNC (Virtual Network Computing) and it's uber-cool. The magic formula (for those who have it installed already; maybe you need
apt-get install vncserver xvncviewer
(or the equivalent, if any, for non-Debian users) first) is:
1. Quit out of X.
2. Start the VNC server
vncserver :0 -geometry 1024x768 -depth 16 -pixelformat rgb565
Maybe you need to change the geometry to match your video card. E.g., it might be
vncserver :0 -geometry 1280x1024 -depth 32
(If you use 8bpp, it is less pretty.) This creates an invisible X desktop with all your gadgets.
3. Start the viewer
xinit `which xvncviewer` -passwd ~/.vnc/passwd -geometry 1024x768 -display localhost:1.0 localhost:0.0 -- :1
Again, maybe the geometry spec for your screen is different. This allows you to see your desktop gadgets in the server.
4. Your screen looks pretty much the same as before, except the mouse pointer has a little square in it and everything is a bit slower. The uber-cool part comes next. Go to another machine on the network, preferably one where you can watch the first screen, and say:
xvncviewer -shared yourmachine:0.0
Now you have a second view of the same desktop. You can quit (or crash) out of both viewers, and the desktop is still there waiting to be connected to. (BTW: Since the first viewer is running on an X server with no window manager, you'll have to kill the viewer, e.g., from an xterm, to get out of it.)
They have VNC viewers for practically everything, even Palm Pilots. (http://www.icsi.berkeley.edu/~minenko/PalmVNC/solaris.gif) The Windows viewer is only 145K and can be run directly from a floppy. They have one in Java, too, that works under Netscape.
VNC traffic can be encrypted with SSH or SSL, instructions are on their Web page (which changed hands recently): http://www.uk.research.att.com/vnc/
Nathan Myers
ncm@cantrip.org
Date: Thu, 8 Oct 1998 12:45:17 -0700
From: Seth David Schoen (schoen@uclink4.berkeley.edu)
To: svlug-digest@svlug.org
Subject: Re: [svlug] VNC or XMX for helping others with linux.
Mike Rushford writes:
> For both a NT to NT or Linux to NT connection you are allowed to
> interact with the VNC consoles on both machine and whatever happens on
> one happens on either systems screen. However when a VNC connection
> occurs from NT to Linux or Linux to Linux then it's only observable
> and controllable from the originator or client side of a Linux or NT
> connection; no screen appears on the server Linux box.
>
> I would like to get the Linux X session screen :0.0 to appear on the
> NT box rather than a new X server and screen session. I would like to
> use this when I want to help a friend at some problem he is having on
> his Linux box. In this way he can see what I am doing on his Linux
> box. I would like this whether I use a NT or Linux box to VNC-connect
> to this Linux box. Is there a way to do this?
Sure: Run an ordinary X server on your Linux box, and then run a VNC X server in the background (no graphical display), which will have to listen on display :1 rather than :0.
Then run the VNC client for Linux from your regular X session, and tell it to connect to the VNC server on localhost. You are now using a VNC client under Linux to control an X session on the same Linux box (even though it is not actually your "outer" X session). Since another person can also connect to the VNC server there, you should be able to use this for demonstration purposes to show how to do something under X.
If you make the VNC server your default X server, you can even make the ordinary X server into a sort of client for your default X session, by running a very large VNC client... :-)
(This is all conjecture, since I have never used a VNC client on any platform other than the PalmPilot; I'm almost certain that it would work, though.)
-- Seth David Schoen L&S '01 (undeclared) / schoen@uclink4.berkeley.edu He said, "This is what the king who will reign over you will do." And they said, "Nay, but we will have a king over us, that we also may be like all the nations." (1 Sam 8) http://ishmael.geecs.org/~sigma/ http://www.loyalty.org/
Date: Sat, 26 Jan 2002 12:13:29 +1100
From: Mike MacCana (mikem@cyber.com.au)
Subject: Re: Remote desktop (GUI) access to Linux systems behind firewalls
To: hogan (hogan@netspace.net.au)
Cc: luv@luv.asn.au
hogan (hogan@netspace.net.au) wrote:
> Other than VNC and standard X, are there any solutions/protocols for
> remote desktop access to linux machines across slow network links such
> as dialup PPP given the network and systems environment described
> above?
Yes. MLView DXPC craps all over both VNC (regular, tight, hextile or whatever), X, LBXProxy, and standard DXPC -- and according to its makers equals Citrix ICA in terms of compression, around 60:1 when compared to the standard X protocol. It's also in beta, but seems to work well enough. It's open source, too, IIRC.
Get it from http://www.medialogic.it/projects/mlview/
Date: Thu, 24 Jan 2002 10:32:15 +1100
From: Penguin (Penguin@Mirosystems.com)
Subject: Re: Remote desktop (GUI) access to linux systems
behind firewalls to
which I have SSH access?
To: hogan (hogan@netspace.net.au), luv@luv.asn.au
On Thu, 24 Jan 2002 04:18, hogan wrote:
> I'd like ultimately to be able to see my work desktop at home, and my home
> desktop at work (in both cases, the systems are running Linux with XFree86
> 4.1.x and Debian unstable..
>
> ... going through packages available for Debian, and looking at the VNC
> Web site, it would seem that the vncserver available for Linux at the
> present time is based upon the XFree86 3.x codeset.
>
> A. Am I correct in my guess?
> B. Either way, is there support out there for XFree86 4.x stuff?
>
> Maybe I shouldn't even think about using VNC, but just X? Problem
> there is that the link between work and home is a 33.6kbps modem link.
You should probably look at tightvnc http://www.tightvnc.com/ Vnc will be very slow & forget about X over a 33k modem.
From rick Wed Jan 23 17:16:58 2002
Date: Wed, 23 Jan 2002 17:16:58 -0800
To: luv@luv.asn.au
Subject: Re: Remote desktop (GUI) access to linux systems
behind firewalls to which I have SSH access?
Quoting Penguin (Penguin@Mirosystems.com):
> You should probably look at tightvnc
> http://www.tightvnc.com/
This is very, very cool stuff. I hadn't seen it before. Even better than the flagship AT&T Cambridge VNC software, and just the thing for running remote Win32 applications from a nice, comfortable X11 desktop.
-- "Is it not the beauty of an asynchronous form of discussion that one can go and make cups of tea, floss the cat, fluff the geraniums, open the kitchen window and scream out it with operatic force, volume, and decorum, and then return to the vexed glowing letters calmer of mind and soul?" -- The Cube, forum3000.org
[Someone in private mail informed me of http://www.tridiavnc.com/ ]
Date: Thu, 28 Mar 2002 18:56:48 -0800
From: Benjy Feen (benjy@feen.com)
To: baylisa@baylisa.org
Subject: rdesktop, VNC, tightvnc
I've had great luck using rdesktop from my RH7.2 desktop to access our red-headed stepsystems. In a pinch I've been able to VNC into a Windows box running the VNC server, then run the Terminal Services client from there. This is a little icky, but those who dance with the Devil should get used to his breath.
As an aside, if you use VNC, you should check out TightVNC, which desuckulates VNC's bandwidth issues.
www.tightvnc.com
rdesktop is available at www.rdesktop.org
From: Jacco de Leeuw (jacco2@dds.nl)
To: lnx-bbc@zork.net
Subject: Suggestion for inclusion: rdesktop
Date: Sun, 05 May 2002 19:35:36 +0200
I noticed that vncviewer is included with LNX-BBC. How about adding a similar program called rdesktop?
rdesktop (http://www.rdesktop.org) is an implementation of the RDP 4 protocol as used Windows NT/2000/XP Terminal Server. rdesktop was created by Samba team member Matthew Chapman and released under the GNU Public License.
Generally the "unified patch" by Peter Bystroem is also applied (http://bibl4.oru.se/projects/rdesktop/).
Binaries are fairly small, only 200 KB or so. Less if OpenSSL is available. I've made Red Hat RPMs and Linux binaries available at http://www.jacco2.dds.nl/rdesktop/
A demo Windows 2000 Terminal Server is available at scylla.odyssey.securewave.com (158.64.60.49). This server can be used (with permission of the owners) for testing purposes. No password is required.
Jacco
-- Jacco de Leeuw (jacco2@dds.nl) van Wessemstr. 54 http://www.jacco2.dds.nl 1501 VM Zaandam, Holland tel:+31(0)756352068 Sign in lab: "Do not look into laser with remaining eye".
Date: Tue, 16 Jul 2002 09:13:11 +1000
From: Mike MacCana (mikem@cyber.com.au)
Subject: Re: VNC question.
To: Seon Rozenblum (seon@sector3.com.au)
Cc: luv@luv.asn.au
On Tue, 2002-07-16 at 08:18, Seon Rozenblum wrote:
> I have vncserver working on my Linux box (Red Hat 7.2), and can use VNC
> viewer on my PC (Win2k) to see it, but all I see is an Xterm shell on
> an empty X11 screen. How can I use VNC to view my current KDE
> session on the Linux box, so I can take over the KDE session and have
> all of the apps and icons and stuff available to me.
>
> On a Win2k machine, when I use VNC, I get to control the entire
> current desktop, as if I was sitting in front on that machine.
>
> Currently, VNCServer is using display 2. I have tried to view display
> 1 and display 0 (0 is the normal default), and cannot connect to host.
Rohan's answer was helpful, but not a hundred percent correct. Unix VNC traditionally acted very differently from Windows VNC - it would create a new session, rather than use your existing desktop (as Unix is multiuser, and Windows traditionally wasn't - "Hey, who wouldn't want a new login if you could have one?").
This changed recently. You can now use VNC to take over an existing desktop with an application called x0rfbserver.
x0rfbserver. How obvious :) Right up there with `gnorpm'. Linux on the desktop, here we come!
Anyway, for KDE, there's a nice little x0rfbserver replacement / front end called `kfrb'. It's designed to work a little like the `remote desktop' function of Windows, giving you a simple way to change the password, decide whether to allow the connecting user to take over the keyboard and mouse or just see your screen, and whether to prompt you before allowing someone else to connect.
krfb is what you want to install on your PC. IIRC, you can download packages for Red Hat from the KDE apt repository I mentioned last night. If you can't, mail me and I'll send you my own. If you use another distro, then have a hunt and I'm sure you'll find packages.
Mike
From: Ken Bloom (kabloom@ucdavis.edu)
To: vox-tech@lists.lugod.org
User-Agent: Mutt/1.3.28i
Subject: [vox-tech] Re: remote desktop question
Date: Sun, 28 Jul 2002 16:28:06 -0700
Quoting Matt Holland (mdholland@ucdavis.edu)
> It's also not clear to me what the connection is between vnc and krfb,
> which is probably why your port numbers are different (I guess 5500 is
> the standard port for X display :0.0?).
---From http://www.tjansen.de/krfb/
KRfb Server is a small server for the RFB protocol, better known as VNC. Unlike other Unix/Linux RFB servers, KRfb shares your X11 session instead of creating a new one. This allows a friend or administrator to fix problems on your computer, or you can use it to show your desktop to somebody else at a remote location. It is compatible with all regular VNC / RFB clients.
---End http://www.tjansen.de/krfb/
There's a similar tool included in LinuxMandrake called x0rfb (in the rfb package). These tools are very useful for helping newbies over the phone and Internet, because you don't need to explain how to run the whole session through VNC (which would require them restarting all of the programs in their session), you just need to tell them to run krfb, and to click the button that says "Accept Connection" when you the UNIX guru try to connect.
Date: Wed, 25 Sep 2002 17:12:17 -0500
From: "Peter A. Peterson II" (pedro@tastytronic.net)
To: rick@linuxmafia.com
Subject: remote controlling satanic computers
User-Agent: Mutt/1.3.20i
X-pw: reindeer flotilla
Hey Rick,
Just found out something that might be interesting to you, or useful for you to tell others. I was, for a while, using vnc to remote control a headless Windows workstation for "job reasons", but found that vnc was too slow and non-updatey to be very useful for this, so I went to a KVM switch.
However, XP/NT/2000 have something called "terminal services" (and the terminal services client) that runs an MS-specific Remote Desktop Protocol that they have optimized pretty nicely (whereas vnc remote control for Windows was really brute-forced (an afterthought, as they say) since its windowing is not as network-friendly as is X11) --
ANYWAY,
Someone has written an X11 client for MS Terminal Services called rdesktop (http://www.rdesktop.org/), it's in Debian (the newest version is even in woody), and it's fan-freaking-tastic! It feels better than Terminal Services client feels on WINDOWS!
So tell your friends who are using vnc to ditch it and use rdesktop and Terminal Services client.
Hope you're well,
Peter
-- Peter A. Peterson II, technician and musician. ---=[ http://tastytronic.net/~pedro/ ]=---
Date: Fri, 21 Nov 2003 03:25:56 +0000
From: Mike MacCana (mikem@cyber.com.au)
To: LUV (luv@luv.asn.au)
X-Mailer: Ximian Evolution 1.4.5 (1.4.5-7)
Subject: Re: remote desktop displayed locally - easy?
On Fri, 2003-11-21 at 00:58, Ron Palmer wrote:
> I have a few LAN server computers sitting without monitors, keyboards,
> and mice. I would like to display their entire desktop on another
> computer (RH9 notebook or if I really have to, WinXP). I have read a
> few comments I have saved in the past, looked at a few HOWTOs, but I
> can't quite get it. Does anyone have a few simple 1-2-3 points to
> suggest?
The (modern) Linuxey way to get access to a Linux machine's desktop:
Make a shortcut to, or run the following command:
ssh linuxbox -C "/usr/X11R6/bin/Xnest :1 & export DISPLAY=linuxbox:1; gnome-session"
It'll log into the remote machine, prompt for a password if necessary, start Xnest, tell subsequent apps to run on Xnest's desktop rather than your own, and then start GNOME. Use `startkde' rather than `gnome-session' if you wish.
Install a decent X server on Windows (WinAxe Plus) or Mac.
You could alternatively use VNC, but since X is already network-aware, I personally find it kinda hacky.
Mike
-- Mike MacCana (mikem@cyber.com.au)
Date: Sun, 05 Dec 2004 19:04:32 +0000
From: Niall Walsh (linux@esatclear.ie)
To: ilug@linux.ie
Subject: Re: [ILUG] Remote desktop Windows->Linux
Kae Verens wrote:
>Can't wait for the FreeNX project to release some test software!
Knoppix has included FreeNX for a while now. The packages they used (not too surprising, it appeared here first when it was Fabian Franz who wrote the missing pieces to make it complete) were on www.kalyxo.org, but they are repopulating their archive for some reason. There are debs and a tarball on http://debian.tu-bs.de/ (tarballs in knoppix/experiments) and also http://www.kanotix.com/files/debian/nx/.
Now, I don't think there is a FreeNX server for Windows yet, but the NX client is free from nomachine.com, anyway.
Date: Tue, 1 Nov 2005 06:05:22 +0800
From: echan (echan@netspace.net.au)
To: luv-main@luv.asn.au
X-Mailer: Sylpheed version 2.0.1 (GTK+ 2.6.1; i486-pc-linux-gnu)
Subject: Re: Xwindows and remote login
On Mon, 31 Oct 2005 16:14:49 +1100, Jason White (jasonjgw@pacific.net.au) wrote:
> There was an article (cited on LWN.net a few weeks ago, I think)
> stating that FreeNX was a good solution to this problem, being less
> consumptive of bandwidth than VNC or other alternatives.
> It does work (low bandwidth consumption). I tried all 3 remote desktop
> mechanisms (TightVNC, SSH -C -X, FreeNX) in supporting a desktop
> connected to a 33 kB dial-up connection. FreeNX is about 5 times
> faster (and at those speeds ( 33 kB) very noticeable ). The other two
> (TightVNC and ssh -C -X ) is almost unusable. (We are talking about
> running a GUI, here ).
With a 56 kB dialup; it is quite usable; on a 512 kB ADSL, it's like running X across a 10 MB NIC. On a 10 MB NIC, it's like on a 100 MB NIC. That is FreeNX I am talking about.
I am currently developing methods and procedures for implementing all of 3 of the above at CBV, to help with remote desktop support for their end-users, most of whom are on dial-up.
Except in the "current situation" (a simple 2 PC network (5 - 20 meters apart)); it may not be necessary to go to this level of performance.
Regards,
Ed Chan
Date: Mon, 31 Oct 2005 16:12:00 -0800
To: luv-main@luv.asn.au
From: Rick Moen (rick@linuxmafia.com)
Subject: Re: Xwindows and remote login
Quoting Jason White (jasonjgw@pacific.net.au):
> On Tue, Nov 01, 2005 at 06:54:59AM +0800, echan wrote:
> > Freenx ( I meant Freenx when I use "NX" ) is GPL.
>
> Indeed it is, but there doesn't appear to be a free (as in freedom)
> client, although there is a project to integrate one into KDE (not
> sure about GNOME).
The free-software / open source NX client is called kNX, "written as a proof-of-concept within 2 half-days of hacking during LinuxTag 2004". That project has now joined forces with the developers of the core FreeNX library, nxc.
User discussion list is here: https://mail.kde.org/mailman/listinfo/freenx-knx
It seems pretty beta-ish; code can be checked out of CVS/SVN.
There doesn't seem to be a canonical set of informational Web pages for the client piece (other than that concerning the mailing list), but there is this wiki page cluster:
http://openfacts.berlios.de/index-en.phtml?title=FreeNX
Pay no attention to obsolete references to "Kalyxo.org" such as on http://dot.kde.org/1088363665/ , ad that domain appears to have been snatched by one of those domain... er... collectors, and equipped with a useless "search engine" to keep you there, racking up hits.
I find no signs of a parallel GNOME effort.