SSH covers most remote Linux administration, but sometimes you genuinely need a graphical desktop — VNC and xrdp are the two standard options, each with real trade-offs.
# xrdp: speaks the RDP protocol, so Windows' built-in Remote Desktop client works directly sudo apt install xrdp xfce4 xfce4-goodies sudo systemctl enable --now xrdp # XFCE is a common lightweight choice specifically for remote desktop sessions echo "xfce4-session" > ~/.xsession
# VNC: needs a dedicated VNC client, but works cross-platform identically everywhere sudo apt install tightvncserver vncserver :1 -geometry 1920x1080
xrdp vs VNC
- xrdp — uses the RDP protocol, meaning Windows users connect with the built-in Remote Desktop Connection client, no extra software needed on their end
- VNC — requires a dedicated VNC client on every connecting machine, but the protocol itself is simpler and works identically across every platform
A lightweight desktop environment (XFCE, LXDE) is almost always the right choice for a remote session over either protocol — a full GNOME or KDE desktop adds real, noticeable latency over a remote connection compared to a genuinely minimal environment.