This article was provided to TechRadar by Linux Format, the number one magazine to boost your knowledge on Linux, open source developments, distro releases and much more. Subscribe to the print or digital version of Linux Format here.
SSH has been the staple remote access tool for the sysadmins since its advent. The cryptographic network protocol is synonymous with remote network services over an unsecured network. Admins use SSH to mount remote directories, backup remote servers, spring-clean remote databases, and even forward X11 connections. The popularity of single-board computers, such as the Raspberry Pi, has introduced SSH into the parlance of the everyday desktop users as well.
While SSH is useful for securely accessing one-off applications, it’s usually overkill especially if you aren’t concerned about the network’s security. Then there are times when you need to remotely access the complete desktop session rather than just a single application. Perhaps you want to handhold the person on the other end through installing software or want to tweak settings on a Windows machine from the comfort of your Linux desktop.
This is where remote desktop software comes in handy. Using these nifty little applications you can remotely access and operate a computer over the network from all sorts of devices. There are various protocols and while the clients we’ll cover in this article support multiple protocols, we’ll focus on Virtual Network Computing (VNC) which is one of the most popular.
Specifically, we’re going to evaluate and compare five clients: RealVNC, Remmina, TigerVNC, TightVNC and Vinagre.
How we tested
A remote desktop sharing session involves a server and a client. The server component is installed on the remote machine that you want to access and the client is installed on the local machine or even on a mobile device such as a tablet. For this feature, we’ll use three servers – the RealVNC server built into the Raspberry Pi, the default Vino server in Ubuntu and TigerVNC server for accessing Windows PCs.
A good remote desktop client should be responsive, and we’ll rate it higher than a client that does a wonderful job of replicating the remote desktop in true colour but takes ages to register clicks and key presses. We’ll also keep an eye out for any related features that are included, such as the ability to encrypt connections. The clients and servers are also all running inside our network connected via Wi-Fi.
So, without further ado, let’s move on and compare these clients across a broad range of aspects – from available features, to the interface, multimedia capabilities and more – before we round things off with our final verdict.
- 5 of the most popular Linux gaming distros
- What's the best Linux distro for beginners?
- 10 of the most popular lightweight Linux distros
- 7 best Linux distros
All the clients in the feature are rather equally matched in terms of features. That said, Remmina and Vinagre are the only ones that can sniff and discover a VNC server running on the network. Additionally, Vinagre can tunnel VNC connections through SSH and enables you to easily take screenshots of the remote machines.
However, with Remmina you can manually tweak the quality of the connection to make good use of the available bandwidth. Best of all you can change the colour depth of the remote desktop on the fly. The application encrypts VNC connections with AES256 algorithm and also offers a button to send all keyboard commands to the remote server.
TigerVNC and TightVNC are both very similar since the former is a fork of the latter. TigerVNC uses the TLSVnc encryption by default. While the application encrypts authentication and traffic, it lacks any identity verification capability. However, TigerVNC supports various other encryption schemes, such as X509Vnc, that allow the client to verify the identity of the server.
Furthermore, TigerVNC offers users controls to manually tweak the encoding and colour level and a couple of other parameters depending on the available bandwidth. You can also use it to create view-only sessions and run a full-screen session on the guest. TightVNC offers pretty much the same features as TigerVNC though some distinguishing features like the ability to transfer files are available only to Windows users.
No client in the feature transfers audio and all except RealVNC lack the ability to transfer files. But then, this feature along with several others such as the ability to exchange instant messages with the person on the VNC server are available only when you connect to a RealVNC server, e.g. the one pre-installed on the newer versions of Raspbian for the Raspberry Pi.
Furthermore, the client only encrypts connections to the RealVNC server, now dubbed VNC Connect. The client allows multiple sessions and can run sessions full-screen and scale the remote display to fit the current window on the client computer. It can also remember remote access credentials so you don’t have to enter them each time which is a definite plus, especially if you need to remotely manage a handful of machines.
Verdict
- RealVNC: 4/5
- Remmina: 4/5
- TigerVNC: 3/5
- TightVNC: 3/5
- Vinagre: 3/5
You should give TightVNC a skip, if multimedia performance is paramount to your remote desktop access. With the default settings, all manner of PDFs are browsable but the videos are barely watchable and input-sensitive games, like snake4, performed horribly and were delayed by well over two seconds.
Remmina performed better and games were playable without any delay even at the best quality on the remote Ubuntu server. However, we couldn’t watch video playback at any quality setting. At the lowest quality level the video was less jerky but the colours were all wrong. At the other end of the quality setting the colours were perfect but the video skipped frames. The application could also easily scroll through lightweight PDFs at best quality, while PDFs with lots of images were best scrolled through at lower quality levels and were even readable at the lowest setting.
Similarly, you can easily scroll through PDFs and do regular desktop tasks with RealVNC. However, you can get more mileage on the Pi once the experimental hardware acceleration mode is enabled which allows you to run applications such as Minecraft and watch videos with omxplayer without any issues. The best performance was delivered by TigerVNC and Vinagre. You can use either application to play games without any delays even at the best quality setting. Video playback was also surprisingly good and we could easily scroll through all sorts of PDFs at the best quality without issue.
Verdict
- RealVNC: 4/5
- Remmina: 3/5
- TigerVNC: 4/5
- TightVNC: 2/5
- Vinagre: 4/5
There are several aspects to the usability aspect of the client. First up is the interface for establishing the connection to the server. To score points for usability, the client has to offer the right number of features to define the connection without inundating the user with a sea of toggles and checkboxes.
Also, the client’s role doesn’t end when the connection is established. The post-connection interface plays a crucial role in helping you interact with the remote desktop. Note: however that we’ll only rate applications based on the accessibility of the available post-connection features. The fact that some applications offer more controls once the connection has been established than the others will be compared in a separate section of this article.
We’ll break this slide down into mini-reviews of the interface and user experience, starting with…
RealVNC
You’ll have to define a new connection before connecting with the RealVNC client by manually entering the IP address of the VNC server. You can then either use the default settings or tweak them from the New Connection window. The General and Options tabs list common parameters while the Expert tab enables experienced campaigners modify the default values of various parameters. You can access these options during an active connection either by using the hidden menu at the top of the connection window or by pressing the F8 key.
By default, the RealVNC client also saves screenshots for connections. During an active connection the client also gives you the option to transfer files to and from the remote server and exchange instant messages. However, these options will only work when connected to a RealVNC server.
Score: 3/5
Remmina
Before you can establish a connection, Remmina asks you to create a profile to define parameters for the connection. At the very least, you’ll have to select a protocol from a drop-down list and enter the server’s IP address. Optionally, you can define other parameters as well that vary depending on the protocol being used, e.g. for VNC connections, you can optionally choose the colour depth and quality of the connection. You also get checkboxes to toggle some quick settings like starting a simple View Only session and disable encryption etc.
Remmina has a tabbed interface that enables you to manage multiple remote desktop sessions from a single window. The intuitiveness continues after a connection to a remote host has been established. You get a bunch of buttons for common tasks such as switching to full-screen mode or to the scaled mode in case the remote desktop doesn’t fit.
Score: 3/5
TigerVNC
TigerVNC has a rather straightforward interface. However, unlike some of the other clients in the feature, it lacks the ability to automatically sniff VNC servers on the network and you’ll have to manually enter the IP address of the remote VNC server to establish a connection. While the default options work for most users, various connection parameters can be customised.
Besides the options to choose the encoding, colour and compression levels for the connection, you also get options to only view the remote computer screen and ignore the use of mouse and keyboard or take control. TigerVNC also enables you to share the clipboard with the remote VNC server and since your monitor can differ in size and characteristics, the application also makes it possible to choose the remote session screen size.
Score: 3/5
TightVNC
The only client in this feature that has a Java-based client, TightVNC also uses a simple textbox interface similar to TigerVNC’s. You’ll have to manually enter the IP address of the remote VNC server since the client lacks the ability to detect VNC servers running on the network. Again, you can either connect with the default option or customise any of the available settings. However, TightVNC lists all of the available options in one window unlike TigerVNC’s tabbed interface.
The differences between the two continue once a connection has been established, while TigerVNC uses a hidden menu, the TightVNC viewer lists a row of buttons at the top of the interface and you can use these to customise any of the parameters for the connections as well as send various special keys to the remote VNC server.
Score: 3/5
Vinagre
Vinagre has a minimal interface that’s very much like Remmina. However, there aren’t nearly as many advanced options that are available behind Remmina’s simple GUI. To connect all you need to do is pick a protocol from the pull-down list and enter the IP address of the remote VNC server. What makes Vinagre more intuitive and user friendly than Remmina is the very helpful ‘Find’ button that hunts for active servers on the local network.
Also much like Remmina, you get optional checkboxes for starting a full-screen session, a view-only or a scaled window. You also have the ability to select a colour depth from 24-bit true colour to three-bit ultra-low colour and can also enable JPEG compression if you have the resources to bear the processing overhead. On the downside, you can’t change the quality settings of the connection while it’s active.
Score: 3/5
TigerVNC wouldn’t be much help if you’re new to VNC. There’s next to no documentation on the website with just HTML versions of the man pages of the various utilities. The website also points to the project’s three mailing lists—one of which is meant for resolving user queries.
TightVNC isn’t much better. The project’s website asks users to start with the FAQ that answers questions about the application’s security and usage. Reading everything from the release announcements to viewing the handful of screenshots along with their description, it’s easy to conclude that TightVNC is a Windows-only product. As the new version isn’t available for platforms other than Windows, you wouldn’t find any documentation of the older version that does work on Linux.
Vinagre is a little better with pointers to the project’s IRC channel along with a Bugzilla page and the lead developer’s email address on the project’s homepage at Gnome.org. The client also has a Help section that will familiarise users with the key features and basic operations. You can also find more information about its features and usage on external sources such as Wikipedia and the Ubuntu wiki.
Similarly, Remmina’s website lists the features of the main client along with those that are added via plugins. There’s also a handful of screenshots and a barebones FAQ that answers some commonly asked questions on how to use application.
Verdict
- RealVNC: 5/5
- Remmina: 3/5
- TigerVNC: 2/5
- TightVNC: 2/5
- Vinagre: 2/5
VNC isn’t the only protocol in town for accessing the remote desktop and you can use a few applications in this feature to connect to other protocols besides VNC. However, RealVNC, TightVNC and TigerVNC only support the VNC protocol. Both TigerVNC and TightVNC have a server as well but the latest version of the TightVNC server is only available for Windows and along with the desktop client, the version for Linux is for an older, unmaintained version.
RealVNC too only supports the VNC protocol which it can tunnel through via SSH, but it’s the only client in this feature that has its own branded clients for the Android and iOS mobile platforms. Also, unlike some of the other clients, RealVNC has a multiplatform server component and works best when the clients are paired with the server.
In contrast, besides VNC, Vinagre can connect using the SPICE, RDP and SSH protocols. But the client doesn’t run on any other platform besides the Linux desktop and neither does it have any clients for mobile platforms. It also has no server component of its own but works best when paired with the default VNC server for Gnome called Vino.
Similarly, in addition to VNC, Remmina supports other common protocols for accessing remote desktops including SSH, RDP, XDMCP, NX, and SPICE. It too doesn’t have a server of its own and no clients for any of the mobile platforms.
Verdict
- RealVNC: 4/5
- Remmina: 3/5
- TigerVNC: 2/5
- TightVNC: 1/5
- Vinagre: 3/5
Some of the applications in the feature offer several tweakable options to help you get the most out of your connection. Some, like TigerVNC, TightVNC and Vinagre, don’t offer any real configurable parameters besides the ones that are available during an active connection. For what it’s worth though, TigerVNC enables you to save configuration information for individual connections into separate files that can be loaded on subsequent connection or from a different client computer.
The TightVNC interface makes passing VNC connections via SSH tunnels very straightforward. Similarly, you can use Vinagre to enable JPEG compression if the VNC server supports it. The application also enables you to specify the colour depth to be used for the connection.
In contrast, both Remmina and RealVNC offer a good amount of control over the respective application’s behaviour. Remmina houses default remote connection settings under its Preferences window. Here you’ll find options to tweak some auto save settings for the connections, define custom hotkeys for common tasks. You can also alter a few aspects of the client’s behaviour and define a list of resolutions for the remote desktop.
Then there’s RealVNC that allows you to change several aspects of the viewer. It’ll let you share the printer on your local machine as the default printer on the remote VNC server which is a very useful feature. Security conscious users will also appreciate the options that are available under the Privacy section where you can set a master password for the viewer to protect it from unauthorised use. The window in RealVNC also gives you access to the Expert parameters to tweak the server’s behaviour.
Verdict
- RealVNC: 4/5
- Remmina: 3/5
- TigerVNC: 2/5
- TightVNC: 2/5
- Vinagre: 2/5
During an active remote desktop session, you can ask Vinagre to stop sending keyboard and mouse input to the remote desktop and effectively turn it into a view-only session. Vinagre’s interface also includes a button to send (Ctrl+Alt+Del) and another to take a screenshot. You can also bookmark an active connection for quick access on subsequent connections, but you can’t alter the colour depth during an active connection.
RealVNC is a little better as it enables you to tweak some connection options via a dedicated window. Like some of its peers, RealVNC uses an auto-hiding panel for accessing features such as the file transfer and chat. Alternatively, you can press the F8 key to display these options. Expert users can alter aspects of the VNC connection by changing the default values under the Expert tab.
The other three clients all allow you to change the encoding and colour format on the fly. TightVNC includes a toolbar at the top of the window with buttons to send keys such as Alt and Ctrl to the remote server. You can also disable clipboard transfer and alter how the mouse cursor is traced and the shape of the local cursor.
Similar to RealVNC, you can press the F8 key in an active session in TigerVNC to bring up a menu for viewing connection data and toggle the Ctrl and Alt special keys. You can also change the colour level and encoding of the connection and convert the session into a view-only one.
Finally, Remmina has a tabbed interface for managing multiple remote sessions from a single window. When connected, there are buttons for common tasks, such as switching to full-screen or scaled mode. You can also change the quality of the connection on-the-fly and send keyboard commands to the remote desktop.
Verdict
- RealVNC: 3/5
- Remmina: 4/5
- TigerVNC: 4/5
- TightVNC: 4/5
- Vinagre: 2/5
Rating applications with very similar features and capabilities is never an easy task. In such a case instead of picking up an outright winner, we try to work our way to the top by the process of elimination. TightVNC is the first to rule itself out as the Java-based client feels out of place on the Linux desktop even more so as its corresponding server is available for Windows only.
Next up are Remmina and Vinagre which are very similar in that they both offer support for multiple protocols besides VNC and don’t pledge allegiance to a particular server. Vinagre just gets the job done without much ado and performs surprisingly well. However, the client doesn’t offer the same flexibility as the others during an active session which is a downer. Similarly, Remmina scores decently in the performance department and gives you the flexibility to change the quality settings of the connection on the fly.
The client supports the widest range of protocols and will connect to all kinds of remote desktop servers. Remmina doesn’t have a server of its own, but you can use for all sorts of remote connections via all types of servers. But Remmina lacks some extra functionality that you get with other clients such as the ability to transfer files.
If transferring files is imperative to your remote access activities, then there’s no better option than RealVNC. The client performs decently with other servers but works best when paired with its own server. We’ll recommend it for remotely accessing all kinds of graphical work on the Pi especially if you use the Raspbian distro.
That leaves us with TigerVNC. The client performs well irrespective of the VNC server broadcasting at the other end. Its only downside is its lack of mobile clients and doesn’t allow you to copy files. But then ferrying files and instant messages aren’t the primary functions of a VNC. TigerVNC’s open source credentials, intuitive interface, exemplary performance during an active connection make it a very capable VNC client for all kinds of remote desktop tasks.
1st Place: TigerVNC – its open source credentials and performance are its hallmark.
Overall score: 5/5
Web: www.tigervnc.org
2nd Place: RealVNC – the go-to solution for remote desktop access on the Raspberry Pi.
Overall score: 4/5
Web: www.realvnc.com
3rd Place: Remmina – multi-protocol remote desktop client that performs well.
Overall score: 3/5
Web: www.remmina.org/wp
4th Place: Vinagre – a multiple-protocol client that lacks the control offered by its peers.
Overall score: 3/5
Web: http://bit.ly/ProjectVinagre
5th Place: TightVNC – its biggest turn off is the focus on those Windows platforms.
Overall score: 2/5
Web: www.tightvnc.com
There are several other remote desktop clients and solutions that you can use out there. While we’ve only covered the most popular and actively developed VNC clients, there are several others. There’s KDE’s Krdc, TurboVNC, and x11vnc. Also as previously noted, VNC isn’t the only remote desktop protocol in town. Another popular one is the proprietary protocol NoMachine NX.
If you aren’t averse to proprietary solutions there’s also the TeamViewer client and Google’s Chrome Remote Desktop tool. One solution that uses remote desktop sharing technology is iTALC. This is an open source solution for remotely accessing, controlling and managing classroom computers and uses VNC’s RFB protocol.
And finally, if you just wish to access a single application and care more about security than sheer nippiness then you can just enable X11 forwarding over SSH.
http://ift.tt/2k11gS3
No comments:
Post a Comment