Some things are so established that they shouldn’t need an introduction — such as Virtual Network Computing (VNC). Like RDP, VNC is a desktop-sharing system that allows you to remotely control another computer. VNC is platform-independent and built on the open RFB protocol with a myriad of clients and servers for many systems.
31 Flavors
The extensibility of the RFB protocol has led to a number of VNC variants, each offering enhanced functionality such as encryption, file transfer, or optimizations for specific operating systems (fun fact: did you know that Apple’s Remote Desktop is a VNC variant?).
While many of these variants are compatible with one another at the core protocol level, the extended functionality generally isn’t. If your favourite VNC vendor supports a nifty new feature in their server, then to take advantage of it you’ll generally need to use their viewer application as well.
Enter The Dragon
This represents a conundrum in RDM, since integrating all of these different VNC clients is hard. Many don’t support embedding or allow us to drive them effectively, and the user must choose the VNC application that “matches” the server.
Well, what if I told you there’s a better way? Behold: FreeVNC, Devolutions’ very own VNC client with a goal of being a true VNC “Swiss Army knife.” FreeVNC is the default VNC application for embedded connections for RDM on all platforms, so you might not even realize that you’re already using it! But just in case you’re still using the UltraVNC application, or an external RealVNC client, I’d like to introduce two new features for FreeVNC in RDM 2022.3.
Talk To Me (Raspberry Pi Edition)
If you use RealVNC and have a Home or Professional subscription, then your servers support end-to-end encryption using 128-bit AES. FreeVNC now implements this encryption mode. Assuming that you’re establishing a direct connection, simply configure your login details in Settings > Credentials > System Authentication and things should just work™.
This gets really interesting when you know that the default VNC server on raspian (the official Raspberry Pi operating system) uses this configuration by default, so embedded connections to RaspPis are now possible without degrading security.
Enterprise subscriptions of RealVNC allow an improved “maximum” encryption option (using 256-bit AES), and supporting this is already on our Roadmap.
UltraFreeVNC
FreeVNC gained several new features when talking to UltraVNC servers this year, notably adding support for DSM encryption plugins. But what we’re most excited about is native file transfer and interactive chat.
With an embedded VNC session, the “File Transfer” and “Chat” buttons in the toolbar are now supported with the FreeVNC application. Currently we only support this functionality on Windows, but if this interests you on other platforms, then don’t hesitate to leave your feedback in the comments or on our forum.
Apple Remote… Management?
Apple has made extensive additions to VNC to build their screen sharing functionality (imaginatively named “Apple Remote Desktop”). If you use a Mac remotely, then you might have noticed that ARD (using Apple’s ScreenSharing.app) performs significantly better than VNC (their own Apple Adaptive codec is well tuned for streaming the remote display).
Of course, FreeVNC provides a complete implementation, as well as Apple’s custom encryption and authentication. But there’s more to ARD than just screen sharing and remote control: the full ARD application provides extensive remote management capabilities.
While it’s not strictly VNC related, another new feature in RDM 2022.3 is the “Apple Remote Management” connection type, which provides a large set of these capabilities: file transfers, interactive chat, remote UNIX commands, and more. Look out for a future blog post to discuss this in more depth!
What’s Next?
We’re always working hard to improve the VNC story inside RDM, and FreeVNC is the backbone of that effort (in fact it does triple-duty, as it also provides the foundation for supporting Apple Remote Desktop and VMWare Remote Console connections).
How can we do better? If you have a favourite VNC feature that’s missing, badly integrated, or just clunky in RDM, then let us know! Despite the name, FreeVNC is currently a closed-source project, but we’re always eager for feature requests. You can make yours via the usual support channels, in the comments, or on our forum.