Yandex Cloud
Search
Contact UsTry it for free
  • Customer Stories
  • Documentation
  • Blog
  • All Services
  • System Status
  • Marketplace
    • Featured
    • Infrastructure & Network
    • Data Platform
    • AI for business
    • Security
    • DevOps tools
    • Serverless
    • Monitoring & Resources
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
    • Price calculator
    • Pricing plans
  • Customer Stories
  • Documentation
  • Blog
© 2026 Direct Cursus Technology L.L.C.
All solutions
    • All solutions for Compute Cloud
    • You are unable to add a committed volume of services (CVoS) for Compute Cloud
    • Resolving the `Permission denied` error when connecting to a VM created with Terraform
    • Nested virtualization is not supported
    • Fixing the "Not enough resources" error on launching a virtual machine
    • Recovering access to a VM with a lost SSH key
    • Resolving issues with creating disk snapshots
    • Boot disk size failed to increase
    • VM shuts down on the `Instance guest stop processing` operation
    • Resolving the `WARNING REMOTE HOST IDENTIFICATION HAS CHANGED` error
    • Fixing a non-replicated disk failure
    • Resolving connection issues with Kosmos VM
    • Resolving password reset issues for VMs based on a Kosmos image
    • Resolving the `The limit on maximum number of cores has exceeded` error
    • CUDA unavailable on GPU platform
    • Resolving issues with performance of disk and network input/output on a VM
    • Resolving the `FAILED_PRECONDITION Relocation to zone `ru-central1-a/b/c` is disabled` error
    • Options to migrate a VM image to Yandex Cloud
    • How to change a boot disk type for a VM
    • How to get details about RAM consumption for Compute Cloud VMs
    • How to create VMs with multiple network interfaces
    • How to reduce the VM disk size
    • How to export Compute Cloud VM disk images
    • How to move a VM across folders or clouds
    • How to set up GUI and graphical environment on VMs running Linux
    • How to use an ISO image for deploying VMs
    • How to view incoming or outgoing traffic logs for a VM
    • How to use WinSCP to connect to a Linux VM in Yandex Cloud with a key generated on VM creation
    • How to back up a VM with rollback support
    • How to connect over SSH as root with `-X` or key
    • How to monitor memory usage
    • How to change an internal IP address
    • How to read the `Connections quota utilization` chart
    • How to check the disk access speed for a VM
    • How to create a VM instance with password access
    • How to increase the number of network connections
    • How to secure RDP connections on Microsoft Windows®

In this article:

  • Case description
  • Solution
  1. Compute Cloud
  2. How to set up GUI and graphical environment on VMs running Linux

How to set up GUI and graphical environment on VMs running Linux

Written by
Yandex Cloud
Improved by
vladd11
Updated at December 17, 2025
  • Case description
  • Solution

Case descriptionCase description

You need to use graphical applications on VM instances running Linux.

SolutionSolution

There are several options that allow you to use a graphical desktop environment on Linux VMs:

Access by VNC/RDP
X-session forwarding
Terraform
Docker

You can connect to a VM over remote access protocols, such as VNC or RDP. To do this, follow these steps:

  1. Install the desktop environment.
  2. Install the xrdp or tightvncserver package to connect over RDP or VNC, respectively.

We recommend combining the use of a VNC server only listening to localhost, and an SSH tunnel. Thus you will prevent interception of a VNC session to your VM, encrypt VNC traffic, and exclude one of the possible ways of compromising access to your VM.

Check this guide to set up an SSH tunnel.

You can forward a GUI of an application running within an Xorg session on your VM, to your local computer. There are numerous articles online on how to do this. For Microsoft Windows®, you can use the Xming server:

  1. Install any desktop environment (e.g., KDE, Gnome, XFCE, LXQT, Cinnamon, etc.) on your VM. You can just install the metapackage of the desktop environment you need. All required dependencies, including Xorg, will be installed automatically.
  2. Set up Xorg forwarding in your SSH client and connect to the VM.
  3. Start the graphical application from within the SSH session.
  4. The GUI of the application you need will be rendered in a separate window.

You can use Terraform to create a VM with the pre-installed graphical environment. You can use the basic Terraform scenario from this article to write your own configuration.

  1. Install Docker.

  2. Run a ready-made lightweight Ubuntu image with the pre-installed LXDE graphical environment and x11vnc VNC server:

    docker run -p 127.0.0.1:6080:80 -e HTTP_PASSWORD=<your_password> -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
    
  3. After running a container, forward port 6080 to your VM.

  4. Open http://<address>:6080 in your browser and sign in using the root login and your password. Use the left-hand menu for clipboard and pressing additional keys (Ctrl, Alt, Win, and Tab).

  5. Install and run the graphical application.

Alert

Our support team does not provide advice on the setup and use of third-party software on VM instances. Yandex Cloud users are solely responsible for administering operating systems, setting up third-party software, and writing code in various programming languages.

Was the article helpful?

Previous
How to move a VM across folders or clouds
Next
How to use an ISO image for deploying VMs
© 2026 Direct Cursus Technology L.L.C.