Hinweis:

Gnome Remote Desktop auf Oracle Linux konfigurieren

Einführung

Die Gnome Desktop-Umgebung bietet verschiedene Möglichkeiten, um aus der Ferne darauf zuzugreifen, je nachdem, ob Sie physischen Zugriff haben oder Headless laufen. Wenn physischer Zugriff verfügbar ist und ein Monitor angeschlossen ist, können Sie vorhandene Anwendungen nutzen, die in die Anwendung "Gnome Desktop-Umgebungseinstellungen" integriert sind.

Bei Remote-Headless-Systemen, wie denen, die in Oracle Cloud Infrastructure ausgeführt werden, müssen Sie FreeRDP verwenden. FreeRDP ist eine Open-Source-Implementierung des Remotedesktopprotokolls (RDP), mit dem Benutzer Remote-Computersysteme über das Netzwerk verbinden und steuern können. Diese Sessions ermöglichen die Einzelbenutzer- oder Mehrbenutzerkonfiguration und erfordern die Einrichtung eines TLS-Schlüssels und eines TLS-Zertifikats, damit der Service ausgeführt werden kann.

Ziele

In diesem Tutorial lernen Sie:

Voraussetzung

Oracle Linux bereitstellen

Hinweis: Wenn Sie in Ihrem eigenen Mandanten ausgeführt werden, lesen Sie das Projekt linux-virt-labs GitHub README.md, und schließen Sie die Voraussetzungen ab, bevor Sie die Übungsumgebung bereitstellen.

  1. Öffnen Sie ein Terminal auf dem Luna Desktop.

  2. Klonen Sie das Projekt linux-virt-labs GitHub.

    git clone https://github.com/oracle-devrel/linux-virt-labs.git
    
  3. Wechseln Sie in das Arbeitsverzeichnis.

    cd linux-virt-labs/ol
    
  4. Installieren Sie die erforderlichen Sammlungen.

    ansible-galaxy collection install -r requirements.yml
    
  5. Bereitstellen der Übungsumgebung.

    ansible-playbook create_instance.yml -e localhost_python_interpreter="/usr/bin/python3.6" -e os_version="10"
    

    Für die kostenlose Übungsumgebung ist die zusätzliche Variable ansible_python_interpreter für localhost erforderlich, da sie das RPM-Package für das Oracle Cloud Infrastructure-SDK für Python installiert. Der Speicherort für die Installation dieses Packages befindet sich basierend auf Ihrer Oracle Linux-Version unter den Python-Standardmodulen des Systems. Wenn Sie eine Bestandsvariable verwenden, wird verhindert, dass sich dies auf andere Hosts als localhost auswirkt.

    Die Standard-Deployment-Ausprägung verwendet die AMD-CPU. Sie können die Ausprägung der Instanzen ändern, indem Sie eine neue Definition der Ausprägungsvariablen in der Befehlszeile übergeben.

    Beispiel: -e instance_shape="VM.Standard3.Flex"

    Ebenso verwendet die Standardversion des Oracle Linux-Images die Variable os_version, die in der Datei "default_vars.yml" definiert ist. Sie können diesen Wert ändern, indem Sie die Oracle Linux-Hauptversion in der Befehlszeile übergeben.

    Beispiel: -e os_version="9"

    Wichtig: Warten Sie, bis das Playbook erfolgreich ausgeführt wird, und erreichen Sie die Unterbrechungsaufgabe. In dieser Phase des Playbooks ist die Installation von Oracle Linux abgeschlossen, und die Instanzen sind bereit. Beachten Sie die vorherige Wiedergabe, bei der die öffentlichen und privaten IP-Adressen der bereitgestellten Knoten ausgegeben werden.

Grafische Desktopumgebung installieren und FreeRDP

  1. Öffnen Sie ein Terminal, und stellen Sie eine SSH-Verbindung zur Instanz ol-node-01 her.

    ssh oracle@<ip_address_of_instance>
    
  2. Führen Sie ein Upgrade der Packages auf dem System auf das neueste Release durch.

    sudo dnf upgrade -y
    
  3. Installieren Sie eine GNOME-Desktopumgebung und alle zugehörigen Abhängigkeiten.

    sudo dnf group install -y GNOME Fonts
    
  4. Installieren Sie das Package FreeRDP.

    sudo dnf install -y freerdp
    
  5. Prüfen Sie, ob ein Neustart erforderlich ist.

    sudo dnf needs-restarting -r
    

    Falls erforderlich, starten Sie das System mit sudo reboot neu, und stellen Sie die Verbindung wieder her.

RDP-Service für mehrere Benutzer konfigurieren

  1. Erstellen Sie ein Verzeichnis für das selbstsignierte TLS-Zertifikat.

    sudo -u gnome-remote-desktop mkdir -p ~gnome-remote-desktop/.local/share/gnome-remote-desktop
    
  2. Generieren Sie ein selbstsigniertes TLS-Zertifikat.

    sudo -u gnome-remote-desktop winpr-makecert -silent -rdp -path ~gnome-remote-desktop/.local/share/gnome-remote-desktop rdp-tls
    
  3. Legen Sie den TLS-Schlüssel für den Remote-Desktop fest.

    sudo grdctl --system rdp set-tls-key ~gnome-remote-desktop/.local/share/gnome-remote-desktop/rdp-tls.key
    

    Mit der Option --system wird der Remotedesktopsystem-Daemon konfiguriert, der für den Zugriff mehrerer Benutzer erforderlich ist. Zusätzliche Befehle und Optionen sind verfügbar, indem Sie grdctl --help ausführen.

  4. Legen Sie das TLS-Zertifikat fest.

    sudo grdctl --system rdp set-tls-cert ~gnome-remote-desktop/.local/share/gnome-remote-desktop/rdp-tls.crt
    
  5. RPD-Zugangsdaten festlegen

    sudo grdctl --system rdp set-credentials oracle 12345678
    

    Sie können diese Zugangsdaten entweder in der Befehlszeile übergeben, wie dargestellt, oder wenn Sie die Zugangsdaten nicht übergeben, werden Sie zur Eingabe des Benutzernamens und Kennworts aufgefordert. Diese Zugangsdaten ermöglichen nur den Zugriff auf die Remote-RDP-Sitzung, in der die Gnome Desktop-Anmeldung angezeigt wird. Um auf eine Remotedesktopsitzung zuzugreifen, müssen Benutzer weiterhin über ein tatsächliches Linux-Konto auf dem Rechner verfügen und sich mit diesen Zugangsdaten anmelden.

  6. Prüfen Sie die TLS-Einstellungen und die RDP-Zugangsdaten.

    sudo grdctl --system status --show-credentials
    

    Prüfen Sie, ob das TLS-Zertifikat und der TLS-Schlüssel übereinstimmen. Wenn Sie das TLS-Zertifikat mit winpr-makecert generieren, erstellt es eine Datei .key und .crt im selben Ordner mit demselben Namen. Das Flag --show-credentials des Befehls status blendet den Benutzernamen und das Kennwort aus, sodass Sie sie lesen und prüfen können, ob Sie sie korrekt eingegeben haben.

  7. RDP-Service aktivieren.

    sudo grdctl --system rdp enable
    
  8. Prüfen Sie, ob der Service aktiviert und aktiv ist.

    sudo grdctl --system status
    
  9. GDM-Service aktivieren

    sudo systemctl enable --now gdm
    
  10. Aktivieren Sie den Remoteanmeldeservice auf Systemebene.

    sudo systemctl enable --now gnome-remote-desktop.service
    
  11. Legen Sie den Remote-Desktopservice nach einem Neustart als Standard fest.

    sudo systemctl set-default graphical.target
    
  12. Prüfen Sie, ob der Service ausgeführt wird.

    sudo systemctl status gnome-remote-desktop.service
    

    Sie können auch prüfen, ob der Service ausgeführt wird, indem Sie prüfen, ob er auf Port 3389 horcht, indem Sie sudo ss -lnpAinet | grep -e gnome-remote ausführen.

Öffnen eines RDP-Clients und Testen der Bereitstellung

Es gibt mehrere Clients, mit denen Sie eine Verbindung zu einem RDP herstellen können. Sie funktionieren jedoch nicht alle. Diejenigen, von denen bekannt ist, dass sie funktionieren, sind Remmina und Connections unter Linux und xfreerdp unter macOS. Die Anweisungen konzentrieren sich auf Remmina, da es für alle Versionen von Oracle Linux verfügbar ist, während Verbindungen nur in Gnome 47 und höher verfügbar sind, das Teil von Oracle Linux 10 ist. Wenn die Remmina-Software in der freien Laborumgebung ausgeführt wird, ist sie bereits auf dem Luna Desktop installiert.

  1. Öffnen Sie ein neues Terminal, und verbinden Sie sich über SSH mit der Instanz ol-node-01.

    Mit der Option -L wird die lokale Weiterleitung aktiviert. Dadurch wird ein lokaler Port geöffnet, der über einen SSH-Tunnel eine Verbindung zum Remote-DP-Server herstellt.

    ssh -L 13389:localhost:3389 oracle@<ip_address_of_instance>
    

    Der Standard-RDP-Port ist 3389. Daher wird ein verfügbarer Port von 13389 als lokaler Port im SSH-Tunnel verwendet.

  2. Öffnen Sie Remmina, indem Sie auf das Menü Anwendungen, Internet, Remmina klicken.

    rdp-Menü

  3. Geben Sie einen Namen für die RDP-Verbindung in das Feld Name ein, und wählen Sie RDP - Remote Desktop Protocol in der Werteliste Protokoll aus.

  4. Melden Sie sich bei der GUI-Umgebung des bereitgestellten Servers an.

    Geben Sie die folgenden Werte ein, und klicken Sie auf die Schaltfläche Verbinden.

    • Server: localhost:13389
    • Benutzername: oracle
    • Passwort: 12345678

    rdp-Anmeldung

    Sie können auch eine Verbindung herstellen, indem Sie Remmina über ein Terminal mit remmina -c rdp://oracle@localhost:13389 ausführen.

  5. Der Gnome Desktop Manager wird mit einer Gnome-Anmeldesitzung angezeigt.

  6. Melden Sie sich mit den Linux-Zugangsdaten Ihres Benutzers an.

    Die Anmeldeinformationen in der kostenlosen Laborumgebung lauten:

    • Benutzername: oracle
    • Kennwort: oracle
  7. Sie sind jetzt remote beim System angemeldet.

    Oracle Linux 10:

    Ein Dialogfeld "Willkommen" wird angezeigt.

    gui-welcome

    Klicken Sie auf die Schaltfläche Überspringen (oder drücken Sie Enter), und das Dialogfeld "Willkommen" wird nicht mehr angezeigt.

    Start-Use-ol

    Wenn Konnektivitätsprobleme auftreten, beheben Sie diese Probleme, indem Sie über eine SSH-Tunnelverbindung eine Verbindung zum Remoteserver herstellen.

    Möglicherweise müssen Sie zusätzliche Schritte ausführen, wenn Sie eine Verbindung zu einer Oracle Cloud Infrastructure-Instanz herstellen möchten. Weitere Informationen finden Sie unter Verbindungen zu Instanzen herstellen in der Oracle Cloud Infrastructure-Dokumentation.

    Wenn Sie versuchen, eine Verbindung zu einer von Oracle VM VirtualBox gehosteten virtuellen Maschine herzustellen, müssen Sie zusätzliche Portweiterleitung für den Remotezugriff konfigurieren. Anweisungen zum Konfigurieren virtueller Netzwerke finden Sie im Benutzerhandbuch für die installierte Version von Oracle VM VirtualBox.

(Optional) Konfigurieren der Firewallregeln

Wenn Sie in einem sicheren privaten Netzwerk ausgeführt werden, können Sie den Firewallport für den RDP-Service öffnen, der den Standardport 3389 verwendet.

   sudo firewall-cmd --permanent --add-port=3389/tcp
   sudo firewall-cmd --reload

Hinweis: Während RDP TLS zur Verschlüsselung des Protokolls verwendet, sollten Sie die Firewall nicht zu diesem Port öffnen und sich über ein ungeschütztes Netzwerk direkt mit einem RDP-Server verbinden. Obwohl wir diesen Schritt als optional auflisten, empfehlen wir nicht, ihn zu verwenden. Stattdessen sollten Sie erwägen, SSH-Tunneling oder einen anderen Mechanismus zum Schutz der Verbindung zu verwenden, wie in den nicht optionalen Schritten gezeigt.

Nächste Schritte

Sie sollten nun über eine funktionale Remote-Desktopumgebung zum Ausführen Ihrer grafischen Anwendungen verfügen. Sehen Sie sich unsere anderen Inhalte auf der Oracle Linux-Schulungsstation an.

Weitere Lernressourcen

Sehen Sie sich weitere Übungen zu docs.oracle.com/learn an, oder greifen Sie auf weitere kostenlose Lerninhalte im Oracle Learning YouTube-Kanal zu. Besuchen Sie außerdem education.oracle.com/learning-explorer, um ein Oracle Learning Explorer zu werden.

Die Produktdokumentation finden Sie im Oracle Help Center.