NoMachine and Alternatives
Chapter 7 — NoMachine and the Alternatives
RDP and VNC are the two foundational remote desktop protocols — open standards supported by every operating system. But they were both designed in an era of fast local networks, and VNC in particular can feel sluggish over a broadband connection. A tier of modern tools has emerged that either builds on these protocols or replaces them entirely, trading openness for speed, simplicity, or both.
This chapter covers the four tools you're most likely to encounter: NoMachine (the performance king on a LAN), AnyDesk (fast and firewall-friendly), TeamViewer (the enterprise staple), and Guacamole (browser-based remote desktop — no client software required).
At a Glance — Which Tool Does What
| Tool | Protocol | Needs relay server? | Encryption | Free tier | Best for |
|---|---|---|---|---|---|
| NoMachine | NX (proprietary) | No — direct P2P | TLS | Free for personal use | Fast LAN/WAN access, Linux desktops |
| AnyDesk | DeskRT (proprietary) | Optional (relay for NAT) | TLS 1.2 + AES-256 | Free personal (non-commercial) | Remote support, firewall traversal |
| TeamViewer | Proprietary | Yes (by default) | TLS + AES-256 | Free personal only | Enterprise support, unattended access |
| Guacamole | HTML5 (wraps RDP/VNC/SSH) | Self-hosted gateway | HTTPS | Fully open-source (Apache) | Browser access, zero client install |
| RDP + xRDP | RDP (open standard) | No | TLS / NLA | Free | Windows hosts, structured access |
| VNC + SSH | RFB (open standard) | No | SSH tunnel required | Free | Physical screen sharing, cross-platform |
NoMachine
- Noticeably faster than VNC, comparable to RDP
- Direct peer-to-peer — no relay server, no third-party cloud
- Can share the physical desktop (like VNC) or create a virtual session
- Audio, file transfer, USB sharing all built in
- Works on ARM — great for Raspberry Pi
- Free for personal use with no time limit
- Proprietary — both ends must run NoMachine software
- No built-in NAT traversal — harder to reach from outside your LAN without port forwarding or VPN
- Commercial use requires a paid licence
- Less widely known than TeamViewer or AnyDesk in support scenarios
Installing NoMachine on Debian / Ubuntu
On the client side (Windows, macOS, another Linux machine), install the NoMachine player from the same download page. Enter the server's IP address and port 4000, log in with your Linux credentials, and choose whether to connect to the physical desktop or create a new virtual session.
nomachine_x.x.x_armhf.deb for Pi 3/4,
arm64.deb for Pi 5). This turns any Pi with a desktop
environment into a fully functional remote desktop server — great for
accessing a headless Pi without setting up xRDP.
AnyDesk
- Works through NAT and most firewalls without port forwarding
- Very low latency on good connections
- Tiny binary — no installation required (portable .exe on Windows)
- Unattended access mode for servers and headless machines
- Free for personal non-commercial use
- Relay connections route through AnyDesk's infrastructure
- Commercial use requires a paid subscription
- AnyDesk has suffered phishing/social engineering attacks — employees granting access to "support" callers
- Closed source — you must trust AnyDesk's security claims
Installing AnyDesk on Linux
TeamViewer
- Works through almost any corporate firewall or NAT
- Mobile apps — support someone on Android/iOS from a desktop
- Well-known — easy to ask a non-technical user to install it
- Unattended access, file transfer, remote printing, meeting mode
- Extensive audit logging in commercial tiers
- All traffic routes through TeamViewer's servers by default
- Aggressively detects "commercial use" and blocks free accounts
- Commercial pricing is expensive
- Heavier client than AnyDesk or NoMachine
- TeamViewer itself has suffered credential-stuffing breaches in the past
Apache Guacamole — Remote Desktop in a Browser
- Zero client installation — any browser works
- Centralised access control — one place to manage who can reach which machine
- Supports RDP, VNC, and SSH from the same interface
- Fully open-source (Apache 2.0) and self-hosted
- Works well behind a reverse proxy (Nginx, Caddy, Cloudflare Tunnel)
- Requires a dedicated server to run the Guacamole daemon
- Setup is more involved than single-machine tools
- Performance is limited by the server running guacd — not ideal for high-resolution video work
- Docker makes it easier but adds another layer to maintain