Chrome Remote Desktop für Linux in Compute Engine einrichten

Last reviewed 2022-11-16 UTC

In dieser Anleitung wird beschrieben, wie Sie den Dienst Chrome Remote Desktop in einer VM-Instanz mit Debian Linux auf Compute Engine einrichten. Eine separate Anleitung für Windows-VMs finden Sie unter Virtuelle Windows-Maschinen. Chrome Remote Desktop bietet eine grafische Benutzeroberfläche, über die Sie von lokalen Computern oder mobilen Geräten aus per Remotezugriff auf Anwendungen zugreifen können.

Wenn Sie diese Anleitung befolgen, lassen die Standardfirewallregeln Chrome Remote Desktop-Verbindungen zu; Sie müssen keine zusätzlichen Firewallregeln konfigurieren. Der SSH-Zugriff ist nur für die Ersteinrichtung erforderlich.

Die VM benötigt Zugriff auf das Internet (entweder über eine externe IP-Adresse oder über Cloud NAT) und Sie verwenden Ihr Google-Konto für die Authentifizierung und Autorisierung.

In dieser Anleitung wird davon ausgegangen, dass Sie mit der Linux-Befehlszeile vertraut sind und Debian-Pakete installieren können.

Informationen zu anderen Optionen zum Erstellen virtueller Workstations finden Sie unter Virtuelle Workstation erstellen.

Ziele

  • Monitorlose Compute Engine-VM-Instanz erstellen, auf der Chrome Remote Desktop ausgeführt wird
  • Chrome Remote Desktop auf der VM-Instanz installieren und konfigurieren
  • Desktopumgebung auf Basis von X Window System in der VM-Instanz einrichten
  • Vom lokalen Computer eine Verbindung zur Desktopumgebung der VM-Instanz herstellen

Kosten

In dieser Anleitung werden kostenpflichtige Komponenten von Google Cloud verwendet, darunter:

  • Compute Engine

Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung erstellen.

Hinweis

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. Compute Engine API aktivieren.

    Aktivieren Sie die API

  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. Compute Engine API aktivieren.

    Aktivieren Sie die API

  8. Nach Abschluss der in diesem Dokument beschriebenen Aufgaben können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.

  9. Prüfen Sie, ob Sie die folgenden Rollen für das Projekt haben: roles/compute.admin

    Auf Rollen prüfen

    1. Öffnen Sie in der Google Cloud Console die Seite IAM.

      IAM aufrufen
    2. Wählen Sie das Projekt aus.
    3. Suchen Sie in der Spalte Hauptkonto die Zeile mit Ihrer E-Mail-Adresse.

      Ist Ihre E-Mail-Adresse nicht in dieser Spalte enthalten, haben Sie keine Rollen.

    4. Prüfen Sie in der Spalte Rolle der Zeile mit Ihrer E-Mail-Adresse, ob die Liste der Rollen die erforderlichen Rollen enthält.

    Rollen zuweisen

    1. Öffnen Sie in der Google Cloud Console die Seite IAM.

      IAM aufrufen
    2. Wählen Sie das Projekt aus.
    3. Klicken Sie auf Zugriff erlauben.
    4. Geben Sie in das Feld Neue Hauptkonten Ihre E-Mail-Adresse ein.
    5. Wählen Sie in der Liste Rolle auswählen eine Rolle aus.
    6. Wenn Sie weitere Rollen hinzufügen möchten, klicken Sie auf Weitere Rolle hinzufügen und fügen Sie weitere Rollen hinzu.
    7. Klicken Sie auf Speichern.
  10. Sie verwenden den Browser Google Chrome auf Ihrem lokalen Computer.

Compute Engine-Instanz erstellen

Für die Zwecke dieser Anleitung wird der Standardmaschinentyp mit einem Debian Linux-Bootlaufwerk verwendet. Wenn Sie diesen für Ihre eigene Umgebung verwenden, müssen Sie möglicherweise den Maschinentyp, den Namen, die Region, die Größe des Bootlaufwerks oder andere Einstellungen anpassen.

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zur Seite „VM-Instanzen“

  2. Klicken Sie auf Erstellen.

  3. Legen Sie als Instanznamen crdhost fest.

  4. Klicken Sie auf Erstellen.

    Das Erstellen der Instanz dauert einen Moment.

  5. Stellen Sie eine Verbindung zur neuen Instanz her, sobald die Instanz erstellt wurde. Klicken Sie dafür in der Instanzliste auf SSH:

    Screenshot: SSH-Verbindung zur VM-Instanz erstellen

Chrome Remote Desktop auf der VM-Instanz installieren

  1. Fügen Sie im SSH-Fenster für Ihre VM-Instanz das Repository für Debian Linux Chrome Remote Desktop der Paketliste apt hinzu und installieren Sie das Paket chrome-remote-desktop.

    curl https://dl.google.com/linux/linux_signing_key.pub \
        | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/chrome-remote-desktop.gpg
    echo "deb [arch=amd64] https://dl.google.com/linux/chrome-remote-desktop/deb stable main" \
        | sudo tee /etc/apt/sources.list.d/chrome-remote-desktop.list
    sudo apt-get update
    sudo DEBIAN_FRONTEND=noninteractive \
        apt-get install --assume-yes chrome-remote-desktop
    

    Der Parameter DEBIAN_FRONTEND=noninteractive unterdrückt die Aufforderung zur Konfiguration eines Layouts für eine Tastatur, die direkt mit der VM-Instanz verbunden ist.

Desktopumgebung auf Basis von X Windows System installieren

Sie müssen eine Desktopumgebung auf Basis von X Window System und einen Fenstermanager für Chrome Remote Desktop installieren. Gängige Optionen:

Es können auch andere Desktopumgebungen verwendet werden, allerdings unterstützt Chrome Remote Desktop keine 3D-Grafikbeschleunigung. Wenn Sie sich für eine Desktopumgebung mit 3D-Grafikbeschleunigung entscheiden, müssen Sie diese Funktion deaktivieren. Andernfalls wird der Remote Desktop-Dienst nicht gestartet.

Für Remoteverbindungen über langsamere Netzwerke empfehlen wir Xfce, da es minimale grafische Elemente und wenige Animationen enthält.

Xfce

  1. Installieren Sie im SSH-Fenster, das mit der VM-Instanz verbunden ist, die Xfce-Desktopumgebung und die grundlegenden Desktopkomponenten:

    sudo DEBIAN_FRONTEND=noninteractive \
        apt install --assume-yes xfce4 desktop-base dbus-x11 xscreensaver
    

    XScreenSaver ist erforderlich, da die Xfce-Standardbildschirmsperre (Light Locker) nicht mit Chrome Remote Desktop funktioniert (Light Locker zeigt einen leeren Bildschirm an, der nicht entsperrt werden kann).

  2. Konfigurieren Sie Chrome Remote Desktop, um Xfce standardmäßig zu verwenden:

    sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/xfce4-session" > /etc/chrome-remote-desktop-session'
    
  3. Da mit Ihrer Instanz kein Display verbunden ist, deaktivieren Sie den Displaymanager in Ihrer Instanz:

    sudo systemctl disable lightdm.service
    
  4. Installieren Sie optional die vollständige Suite der Linux-Desktopanwendungen, die u. a. Firefox-Browser, LibreOffice, eine Suite für Office-Programme und den PDF-Viewer Evince umfasst:

    sudo apt install --assume-yes task-xfce-desktop
    
  5. Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:

    curl -L -o google-chrome-stable_current_amd64.deb \
    https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
    sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
    

Cinnamon

  1. Installieren Sie im SSH-Fenster, das mit der VM-Instanz verbunden ist, die Cinnamon-Desktopumgebung und die grundlegenden Desktopkomponenten:

    sudo DEBIAN_FRONTEND=noninteractive \
        apt install --assume-yes cinnamon-core desktop-base dbus-x11
    
  2. Richten Sie Ihre Sitzung mit Chrome Remote Desktop so ein, dass Cinnamon im 2D-Modus (ohne 3D-Grafikbeschleunigung) standardmäßig genutzt wird:

    sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/cinnamon-session-cinnamon2d" > /etc/chrome-remote-desktop-session'
    
  3. Installieren Sie optional die vollständige Suite der Linux-Desktopanwendungen, die u. a. Firefox-Browser, LibreOffice, eine Suite für Office-Programme und den PDF-Viewer Evince umfasst:

    sudo apt install --assume-yes task-cinnamon-desktop
    
  4. Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:

    curl -L -o google-chrome-stable_current_amd64.deb \
    https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
    sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
    

Gnome

  1. Installieren Sie in dem mit der VM-Instanz verbundenen SSH-Fenster die vollständige Desktop-Umgebung von Gnome, einschließlich Firefox-Browser, der LibreOffice-Suite für Office-Anwendungen und des Evince-PDF-Viewers:

    sudo DEBIAN_FRONTEND=noninteractive \
        apt install --assume-yes  task-gnome-desktop
    
  2. Richten Sie die Chrome Remote Desktop-Sitzung für die Verwendung von Gnome ein.

    sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/gnome-session" > /etc/chrome-remote-desktop-session'
    
  3. Deaktivieren Sie den Gnome-Anzeigemanager auf Ihrer Instanz, da er mit dem Chrome Remote Desktop-Dienst in Konflikt steht.

    sudo systemctl disable gdm3.service
    sudo reboot
    

    Mit diesem Befehl wird die VM neu gestartet.

  4. Stellen Sie die Verbindung über SSH wieder her, bevor Sie fortfahren.

  5. Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:

    curl -L -o google-chrome-stable_current_amd64.deb \
    https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
    sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
    

Gnome-Classic

  1. Installieren Sie in dem mit der VM-Instanz verbundenen SSH-Fenster die vollständige Desktop-Umgebung von Gnome, einschließlich Firefox-Browser, der LibreOffice-Suite für Office-Anwendungen und des Evince-PDF-Viewers:

    sudo DEBIAN_FRONTEND=noninteractive \
        apt install --assume-yes  task-gnome-desktop
    

    Der Parameter DEBIAN_FRONTEND=noninteractive unterdrückt die Aufforderung zur Konfiguration eines Layouts für eine Tastatur, die direkt mit der VM-Instanz verbunden ist.

  2. Legen Sie fest, dass in der Chrome Remote Desktop-Sitzung der Gnome-Classic-Desktop verwendet wird:

    sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/gnome-session-classic" > /etc/chrome-remote-desktop-session'
    
  3. Deaktivieren Sie den Gnome-Anzeigemanager auf Ihrer Instanz, da er mit dem Chrome Remote Desktop-Dienst in Konflikt steht.

    sudo systemctl disable gdm3.service
    sudo reboot
    

    Mit diesem Befehl wird die VM neu gestartet.

  4. Stellen Sie die Verbindung über SSH wieder her, bevor Sie fortfahren.

  5. Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:

    curl -L -o google-chrome-stable_current_amd64.deb \
    https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
    sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
    

KDE Plasma

  1. Installieren Sie in dem mit der VM-Instanz verbundenen SSH-Fenster die vollständige Desktop-Umgebung von KDE Plasma, einschließlich Firefox-Browser, der LibreOffice-Suite für Office-Anwendungen und des Evince-PDF-Viewers:

    sudo DEBIAN_FRONTEND=noninteractive \
        apt install --assume-yes  task-kde-desktop
    

    Der Parameter DEBIAN_FRONTEND=noninteractive unterdrückt die Aufforderung zur Konfiguration eines Layouts für eine Tastatur, die direkt mit der VM-Instanz verbunden ist.

  2. Legen Sie fest, dass in der Chrome Remote Desktop-Sitzung KDE Plasma verwendet wird.

    sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/startplasma-x11" > /etc/chrome-remote-desktop-session'
    
  3. Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:

    curl -L -o google-chrome-stable_current_amd64.deb \
    https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
    sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
    

Chrome Remote Desktop-Dienst konfigurieren und starten

Für den Start des Remote Desktop-Servers benötigen Sie einen Autorisierungsschlüssel für das Google-Konto, zu dem Sie eine Verbindung herstellen möchten.

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:

    Die Seite VM-Instanzen aufrufen

  2. Stellen Sie eine Verbindung zur Instanz her. Klicken Sie dazu auf SSH.

  3. Wechseln Sie auf Ihrem lokalen Computer mit Google Chrome zur Seite für die Befehlszeilen-Konfiguration von Chrome Remote Desktop:

    https://remotedesktop.google.com/headless

  4. Wenn Sie noch nicht angemeldet sind, melden Sie sich mit einem Google-Konto an. Dieses Konto dient zur Autorisierung des Remotezugriffs.

  5. Klicken Sie auf der Seite Weiteren Computer einrichten auf Starten.

  6. Klicken Sie auf Autorisieren.

    Sie müssen Chrome Remote Desktop den Zugriff auf Ihr Konto gewähren. Wenn Sie zustimmen, wird auf der Seite eine Befehlszeile für Debian Linux angezeigt, die so oder ähnlich aussieht:

    DISPLAY= /opt/google/chrome-remote-desktop/start-host \
        --code="4/xxxxxxxxxxxxxxxxxxxxxxxx" \
        --redirect-url="https://remotedesktop.google.com/_/oauthredirect" \
        --name=$(hostname)
    

    Mit diesem Befehl können Sie den Chrome Remote Desktop-Dienst in Ihrer VM-Instanz einrichten und starten. Über den Autorisierungscode wird er mit dem Google-Konto verknüpft.

  7. Kopieren Sie den Befehl in das mit Ihrer Instanz verbundene SSH-Fenster und führen Sie ihn dann aus.

  8. Geben Sie bei Aufforderung eine 6-stellige PIN ein. Diese Zahl wird zur zusätzlichen Autorisierung verwendet, wenn Sie später eine Verbindung herstellen.

    Möglicherweise werden Fehler wie No net_fetcher oder Failed to read angezeigt. Sie können diese Fehler ignorieren.

  9. Prüfen Sie mit dem folgenden Befehl, ob der Dienst ausgeführt wird.

    sudo systemctl status chrome-remote-desktop@$USER
    

    Ist der Dienst aktiv, sehen Sie in der Ausgabe den Status active:

    chrome-remote-desktop.service - LSB: Chrome Remote Desktop service
        Loaded: loaded (/lib/systemd/system/chrome-remote-desktop@USER.service; enabled; vendor preset: enabled)
        Active: active (running) since DATE_TIME; ELAPSED_TIME
    

Verbindung zur VM-Instanz herstellen

Sie können mit der Chrome Remote Desktop-Webanwendung eine Verbindung zur VM-Instanz herstellen:

  1. Rufen Sie auf Ihrem lokalen Computer die Chrome Remote Desktop-Website auf.

  2. Klicken Sie auf Auf meinen Computer zugreifen.

  3. Wenn Sie noch nicht bei Google angemeldet sind, melden Sie sich mit demselben Google-Konto an, über das Sie den Chrome Remote Desktop-Dienst eingerichtet haben.

    Die neue VM-Instanz crdhost wird jetzt in der Liste Remote-Geräte angezeigt.

  4. Klicken Sie auf den Namen der Remote Desktop-Instanz.

  5. Wenn Sie dazu aufgefordert werden, geben Sie die PIN ein, die Sie zuvor erstellt haben, und klicken Sie dann auf die Pfeilschaltfläche, um die Verbindung herzustellen.

    Sie sind jetzt mit der Desktopumgebung auf der Remoteinstanz von Compute Engine verbunden.

  6. Wenn Sie dazu aufgefordert werden, erlauben Sie der Remote Desktop-Anwendung immer, Ihre Zwischenablage zu lesen und das Kopieren und Einfügen zwischen lokalen und Remote-Anwendungen zu ermöglichen.

  7. Wenn Sie den Xfce-Desktop installiert haben, werden Sie bei der ersten Verbindung aufgefordert, die Desktopbereiche einzurichten. Klicken Sie auf Standardkonfiguration verwenden, um die Standard-Taskleiste oben und die Schnellstartleiste unten einzublenden.

Screenshot: Xfce-Desktop mit Taskleiste und Schnellstartleiste

Remote Desktop-Oberfläche anpassen

In diesem Abschnitt wird beschrieben, mit welchen Einstellungen Sie Remote Desktop an Ihre Anforderungen anpassen können.

Remote Desktop Chrome-App installieren

Die Remote Desktop Chrome App bietet ein separates Fenster und ermöglicht die Verwendung von Tastenkürzeln, die normalerweise von Chrome abgefangen werden würden, auf dem Remote-System.

Wenn diese App nicht installiert ist, gehen Sie so vor:

  1. Öffnen Sie den Bereich Sitzungsoptionen über die Schaltfläche , die angezeigt wird, wenn Sie die Maus zur Seite des Fensters bewegen.
  2. Klicken Sie im Abschnitt App installieren auf Starten.
  3. Klicken Sie auf Installieren.

Die Remote Desktop-Sitzung wird in einem eigenen Anwendungsfenster wieder geöffnet.

Sie können beliebige Remote Desktop-Sitzungen von einem Chrome-Tab in das App-Fenster verschieben. Klicken Sie dazu in der Adressleiste auf das Symbol Öffnen mit .

Animationen und Effekte in Cinnamon deaktivieren

Auf dem Cinnamon-Desktop gibt es verschiedene grafische Funktionen und Animationen, die ein- und ausgeblendet werden, zum Beispiel halbtransparente Fenster und Menüs. Da das Rendern dieser Animationen über eine Remoteverbindung länger dauert, wird der Eindruck erweckt, die gesamte Benutzeroberfläche wäre langsam.