March 14, 2026
Tutorials

How to Install Chrome Remote Desktop on Linux

Install Chrome Remote Desktop on Linux

Even experienced users can find it difficult to manage Linux when GUI-based software is required. Chrome Remote Desktop provides a browser-based, secure way to connect to your Linux and access a desktop environment anywhere in the world. It’s lightweight, free, and integrates seamlessly with your Google Account.

This guide will show you how to install Chrome Remote Desktop on Linux. You’ll also learn how secure your connection is, and how to access your Linux from anywhere.

Table of Content

Why Use Chrome Remote Desktop on Linux?

Chrome Remote Desktop lets you remotely control your Linux via a web browser without exposing insecure ports, like VNC and RDP. It is based on Google’s infrastructure and provides encrypted connections with easy authentication.

It is ideal for:

  • VPS users needing GUI access
  • Beginners managing Linux servers
  • Running desktop-based applications remotely
  • Secure remote administration

Note: Chrome Remote Desktop works best on Ubuntu-based Linux systems.

How to Install Chrome Remote Desktop on Linux

Chrome Remote Desktop offers a secure and intuitive way to connect to a Linux VPS using a graphical user interface. Installing a lightweight desktop, configuring Chrome Remote Desktop, and enabling Google Account access will allow you to manage your VPS from anywhere. This method avoids complicated firewall rules, reduces the security risks, and offers a smooth remote experience for beginners.

Step 1: Connect to Your Linux VPS

Connect to your VPS via SSH. You can now install the required packages and configure your desktop environment.

ssh username@your_vps_ip

ssh username@your_vps_ip

Direct access to the server ensures proper installation and ensures that permissions are handled correctly.

Step 2: Update System Packages

Updates to system packages will ensure compatibility with Chrome Remote Desktop and prevent dependency conflicts.

sudo apt update && sudo apt upgrade -y

sudo apt update && sudo apt upgrade -y

This also improves the system’s security and stability.

Step 3: Install a Desktop Environment

Linux VPS servers are not equipped with a GUI by default. Chrome Remote Desktop can display a GUI by installing a lightweight desktop.

sudo apt install xfce4 xfce4-goodies -y

sudo apt install xfce4 xfce4-goodies -y

XFCE’s low resource consumption makes it a good choice. Let’s choose GUI:

configure lightdm

Step 4: Install Google Chrome Browser

Chrome Remote Desktop is required to authenticate and control remote sessions.

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb

Chrome is compatible with Google’s Remote Desktop Services. Let’s install it:

sudo apt install ./google-chrome-stable_current_amd64.deb -y

sudo apt install ./google-chrome-stable_current_amd64.deb -y

Step 5: Download Chrome Remote Desktop Package

Chrome Remote Desktop must be installed separately. This package contains the background service for remote connections.

wget https://dl.google.com/linux/direct/chrome-remote-desktop_current_amd64.deb

wget https://dl.google.com/linux/direct/chrome-remote-desktop_current_amd64.deb

This app integrates directly into your Google account.

sudo apt install ./chrome-remote-desktop_current_amd64.deb -y

sudo apt install ./chrome-remote-desktop_current_amd64.deb -y

Step 6: Configure Chrome Remote Desktop Session

Chrome Remote Desktop requires that you tell it which desktop environment to launch after connecting.

nano ~/.chrome-remote-desktop-session

Add the following content:

exec startxfce4 &

exec startxfce4 &

Save and exit the file. A session file is used to ensure that the desktop will load correctly.

Step 7: Set Correct Permissions

Permissions ensure Chrome Remote Desktop can access your desktop session securely. This will prevent session startup errors.

sudo chmod +x ~/.chrome-remote-desktop-session

sudo chmod +x ~/.chrome-remote-desktop-session

Step 8: Add User to Chrome Remote Desktop Group

Add your user to the CRD Group to allow it to manage remote sessions. Without this, the service may fail to start.

sudo usermod -aG chrome-remote-desktop $USER

sudo usermod -aG chrome-remote-desktop $USER

Note: Restarting the service will apply configuration changes to the system and prepare it for remote access.

sudo systemctl restart chrome-remote-desktop

Step 9: Enable Remote Access from Browser

Open the URL below on your local computer.

https://remotedesktop.google.com/access

Sign in to remote desktop

Follow the instructions and sign in to your Google account to enable remote access.

enable remote access

Step 10: Set a Secure PIN

Select a PIN that is difficult to guess to prevent unauthorised access. Choose a strong PIN to prevent unauthorized access. This adds an extra layer of security beyond your Google account.

set up ssh

Step 11: Connect to Your Linux VPS Remotely

Chrome Remote Desktop will display your VPS once it is enabled. Click on it, enter your PIN, and access your Linux VPS GUI instantly.

Connect to a remote computer

Step 12: Optimize Performance on a VPS

To ensure smooth performance:

  • Use a lightweight desktop (XFCE)
  • Close unnecessary background apps
  • Choose a VPS with sufficient RAM (2GB+ recommended)

This minimizes lag and improves responsiveness.

Common Issues and Fixes

  • Black screen on connect:
    Ensure the session file points to XFCE and permissions are correct.
  • Connection drops:
    Check VPS memory usage and restart the CRD service.
  • High CPU usage:
    Switch to a lighter desktop or upgrade VPS resources.

Conclusion

Installing Chrome Remote Desktop requires you to install a lightweight desktop such as XFCE. You will also need Google Chrome, the Chrome Remote Desktop package, and to configure the desktop session. Remote access is enabled through your Google Account. Chrome Remote Desktop is a secure way to access a Linux VPS from your browser. It does not require complex configuration or expose insecure ports.