Skip to content
LiveStart building for free · CA$100 signup credit, up to CA$300 totalCA$1 verification payment credited back · Ends December 31, 2026
Get started for free →

Ubuntu KDE Desktop

Ubuntu KDE provides an Ubuntu 24.04 desktop image with KDE Plasma and XRDP pre-installed for remote desktop access. You can connect with a standard Remote Desktop Protocol client from Windows, macOS, or Linux.

ComponentVersion
Ubuntu24.04 LTS
DesktopKDE Plasma
Remote desktopXRDP with Xorg backend
ResourceMinimumRecommended
vCPU22
RAM2 GB4 GB
Storage20 GB30 GB

If deployment variable fields are available in your launch flow, use them there. Otherwise, provide the same values through user data that writes /etc/zmi/deploy.env, or configure them after first boot to create or update the desktop login.

VariableDescription
UBUNTUKDE_USERNAMEDesktop username. Defaults to ubuntu
UBUNTUKDE_PASSWORDDesktop password. Generated if blank
DESKTOP_USERNAMEGeneric alias for UBUNTUKDE_USERNAME
DESKTOP_PASSWORDGeneric alias for UBUNTUKDE_PASSWORD
ssh ubuntu@<your-vm-ip>

On first boot, the setup service applies platform metadata, regenerates SSH host keys, creates or updates the desktop user, configures KDE Plasma as the XRDP session, and starts XRDP.

Track progress:

sudo journalctl -u ubuntukde-first-boot.service -f
sudo cat /etc/ubuntukde/credentials.env

The file is readable only by root.

Open your RDP client and connect to:

<your-vm-ip>:3389

Use the configured desktop username and password.

# Check XRDP status
sudo systemctl status xrdp
# Restart XRDP
sudo systemctl restart xrdp
# View logs
sudo journalctl -u xrdp
sudo journalctl -u xrdp-sesman

Important files:

FilePurpose
/etc/zmi/deploy.envOptional deployment variables
/etc/ubuntukde/info.txtSetup and operation notes
/etc/ubuntukde/credentials.envDesktop login credentials
/usr/local/bin/ubuntukde-first-boot.shFirst-boot script
/etc/systemd/system/ubuntukde-first-boot.serviceFirst-boot service
PortProtocolPurpose
22TCPSSH
3389TCPRDP

Do not expose RDP broadly to the public internet. Restrict port 3389 to trusted IPs, use a VPN, or use an SSH tunnel where possible. Change generated credentials after first login.

If the RDP client cannot connect, confirm that the VM has a reachable public IP and that 3389/tcp is allowed by the ZCP firewall or security policy.

If login succeeds but the desktop does not appear, check the XRDP session logs:

sudo journalctl -u xrdp
sudo journalctl -u xrdp-sesman
cat ~/.xsession-errors

If the password is unknown, retrieve it as root:

sudo cat /etc/ubuntukde/credentials.env

Last updated: