RDP Zugriff auf GNOME mit Wayland

Mo, 8. November 2021, Lioh Möller

Seit einiger Zeit ist es grundsätzlich möglich, einen unter Wayland laufenden GNOME Desktop mittels RDP fernzusteuern.

Hinweis: in aktuellen GNOME Versionen lässt sich die Option direkt in den Einstellungen im Bereich Freigabe / Bildschirmfreigabe aktivieren:

Unter älteren GNOME Versionen erfordert eine Aktivierung der Funktionalität jedoch noch manuelle Konfigurationsanpassungen.



Zunächst muss ein entsprechendes selbstsigniertes SSL Zertifikat erstellt werden. Dazu kann ein versteckter Ordner .rdp im Homeverzeichnis angelegt und das Zertifikat dort generiert werden.

mkdir ~/.rdp
openssl genrsa -out ~/.rdp/rdp.key 4096
openssl req -new -key ~/.rdp/rdp.key -out ~/.rdp/rdp.csr
openssl x509 -req -days 730 -signkey ~/.rdp/rdp.key -in ~/.rdp/rdp.csr -out ~/.rdp/rdp.crt

Bei der Erstellung des CSR (Certificate Sign Request) werden eine Vielzahl von Parametern abgefragt, welche im Zweifelsfall durch die Eingabe von Enter beantwortet werden können. Wichtig ist, dass kein Challenge-Passwort vergeben wird.

Daraufhin muss der Pfad zum zuvor erstellten Zertifikat und Private Key in gsettings hinterlegt werden. Die Option view-only steuert, ob nur lesender Zugriff via RDP erlaubt sein soll oder Schreibzugriff ebenfalls gestattet ist:

Wichtig: der Pfad zum Homeverzeichnis muss entsprechend angepasst werden:

gsettings set org.gnome.desktop.remote-desktop.rdp tls-cert  '/home/Benutzername/.rdp/rdp.crt'
gsettings set org.gnome.desktop.remote-desktop.rdp tls-key   '/home/Benutzername/.rdp/rdp.key'
gsettings set org.gnome.desktop.remote-desktop.rdp view-only "false"

Mittels dconf-editor lässt sich prüfen, ob die Einstellungen korrekt vorgenommen wurden.

Zusätzlich müssen RDP Anmeldeinformationen generiert werden. Dazu eignet sich das Python Script RDP-set-credentials.py

git clone  https://github.com/arjenpdevries/RDP .rdp/tools/
python ~/.rdp/tools/RDP-set-credentials.py $USER GeheimesRDPPasswort

Abschliessend muss lediglich der Fernzugriff in den GNOME Einstellungen aktiviert werden.

Dieser befindet sich im Bereich Freigabe / Bildschirmfreigabe.


Ein Zugriff kann mit einem unterstützten RDP Client wie Remmina initialisiert werden. Als Anmeldeinformationen können die zuvor mithilfe von RDP-set-credentials.py vergebenen Informationen angegeben werden.

Tags

RDP, GNOME, Zugriff, RDP-set-credentials.py, Zertifikat, Anmeldeinformation, Homeverzeichnis