Wie installiere ich eine GUI auf meiner Amazon-EC2-Instance, auf der Amazon Linux 2 ausgeführt wird?

Lesedauer: 7 Minute
0

Ich möchte eine grafische Benutzeroberfläche (GUI) in meiner Amazon Elastic Compute Cloud (Amazon EC2)-Instance installieren, auf der Amazon Linux 2 ausgeführt wird. Wie mache ich das?

Kurzbeschreibung

Ziehen Sie eine der folgenden Alternativen zur manuellen Installation einer GUI in Betracht, bevor Sie fortfahren:

  • Starten Sie von einem Amazon Linux 2 AMI, auf dem MATE vorinstalliert ist. Weitere Informationen finden Sie unter Konfigurieren der Amazon Linux 2 MATE-Desktop-Verbindung.
  • Nutzen Sie Amazon WorkSpaces, einen vollständig verwalteten, persistenten Desktop-Virtualisierungsservice. Weitere Informationen finden Sie unter Amazon WorkSpaces.
  • Nutzen Sie NICE DCV, ein Remote-Display-Protokoll, das Remote-Desktops und Anwendungsstreaming sicher von jeder Cloud und jedem Rechenzentrum auf jedes Gerät ermöglicht. Weitere Informationen finden Sie unter NICE DCV.

Wenn Sie mit der manuellen GUI-Installation fortfahren möchten, gehen Sie wie folgt vor:

  1. Installieren Sie die MATE-Desktop-Umgebung, eine schlanke GUI auf Basis von GNOME 2, die als Extra für Amazon Linux 2 verfügbar ist. Weitere Informationen zu MATE finden Sie auf der Website zur MATE-Desktop-Umgebung.
  2. Installieren Sie einen Virtual Network Computing (VNC)-Dienst wie TigerVNC. Weitere Informationen zu TigerVNC finden Sie auf der Website tigervnc.org.
  3. Stellen Sie mithilfe des VNC eine Verbindung zur GUI her.
  4. (Optional) Schalten Sie die Passwortauthentifizierung für VNC aus.
  5. (Optional) Installieren Sie einen Webbrowser wie Chromium oder Firefox. Weitere Informationen zu Chromium finden Sie auf der Website chromium.org. Weitere Informationen zu Firefox finden Sie auf der Website mozilla.org. Beachten Sie, dass sowohl Chromium als auch Firefox nur in der X86-Variante verfügbar sind.

Hinweis: Diese Anweisungen gelten nur für Amazon Linux 2. Führen Sie den folgenden Befehl aus, um sich zu vergewissern, welche Version Sie ausführen:

$ grep PRETTY_NAME /etc/os-release
PRETTY_NAME="Amazon Linux 2"

Anweisungen zum Zugriff auf eine EC2-Instance, die macOS ausführt, über eine GUI finden Sie unter Wie kann ich über eine GUI auf meine Amazon EC2 Mac-Instance zugreifen?

Behebung

Bevor Sie anfangen

1.Stellen Sie mithilfe von SSH als EC2-User eine Verbindung zu Ihrer Instance her.

Die Instance muss sich in einem öffentlichen Subnetz befinden und über eine öffentliche IP-Adresse oder eine Elastic-IP-Adresse zugänglich sein. Sie können aber auch mithilfe von AWS VPN oder AWS Direct Connect eine Verbindung herstellen und so über eine private IP-Adresse auf Ihre Instance zugreifen. Diese Anweisungen gelten nicht für Umgebungen, die einen Bastion-Host verwenden. Aus Sicherheitsgründen wird der Datenverkehr zum VNC-Server mit SSH getunnelt. Es ist bewährte Praxis, das Öffnen von VNC-Ports in Ihren Sicherheitsgruppen zu vermeiden.

2.Aktualisieren Sie Ihre Instance, indem Sie sudo yum update ausführen, und starten Sie die Instance anschließend neu. Wenn Sie das Update und den Neustart nicht durchführen, können folgende Schritte zu unvorhersehbaren Ergebnissen führen.

Installieren Sie die MATE-Desktop-Umgebung

1.Installieren Sie die MATE-Pakete.

sudo amazon-linux-extras install mate-desktop1.x

2.Definieren Sie MATE als Ihren Standard-Desktop für alle Benutzer.

sudo bash -c 'echo PREFERRED=/usr/bin/mate-session > /etc/sysconfig/desktop'

Installieren Sie TigerVNC

1.Installieren Sie den TigerVNC-Server:

sudo yum install tigervnc-server

2.Konfigurieren Sie ein VNC-spezifisches Passwort mit sechs bis acht Zeichen für diesen Benutzer. Wenn Sie gefragt werden, ob Sie ein „view-only“-Passwort eingeben möchten, das nur zum Lesen verwendet werden kann, drücken Sie „n“.

vncpasswd

3.Beschränken Sie den VNC-Netzwerkzugriff auf den Localhost, sodass nur über einen sicheren SSH-Tunnel auf VNC zugegriffen werden kann.

Erstellen Sie das tigervnc-Konfigurationsverzeichnis:

sudo mkdir /etc/tigervnc

Erstellen Sie eine obligatorische Konfigurationsdatei, die die Option localhost enthält:

sudo bash -c 'echo localhost > /etc/tigervnc/vncserver-config-mandatory'

4.Starten Sie den VNC-Server auf Anzeige Nummer 1 und sorgen Sie dafür, dass er immer beim Booten startet.

Erstellen Sie eine neue systemd-Einheit.

sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@.service

Verwenden Sie den Befehl sed, um alle Vorkommen von USER in der neuen Einheit durch ec2-user zu ersetzen.

sudo sed -i 's/<USER>/ec2-user/' /etc/systemd/system/vncserver@.service

Laden Sie die systemd-Manager-Konfiguration neu.

sudo systemctl daemon-reload

Schalten Sie den Dienst ein.

sudo systemctl enable vncserver@:1

Starten Sie den Dienst.

sudo systemctl start vncserver@:1

Herstellen einer Verbindung zur GUI mit VNC

1.Installieren Sie die TigerVNC-Software auf Ihrem lokalen Computer, falls noch nicht geschehen. TigerVNC ist für Windows, Linux und macOS verfügbar. Auf der TigerVNC-Website finden Sie die entsprechenden Download-Optionen.

Linux: Das tigervnc-Paket ist in den Repositorys vieler Distributionen verfügbar und kann mit deren jeweiligen Paketmanagern installiert werden.

macOS: Laden Sie TigerVNC-x.y.z.dmg herunter und installieren Sie das Paket, wobei x.y.z für die neueste Version steht.**
Windows:** Laden Sie tigervnc64-x.y.z.exe (64 Bit) oder tigervnc-x.y.z.exe (32 Bit) herunter und installieren Sie das Paket, wobei x.y.z für die neueste Version steht.

2.Verwenden Sie auf Ihrem lokalen Computer SSH, um eine Verbindung zu Ihrer Instance herzustellen, während Sie einen Tunnel erstellen, um sämtlichen Datenverkehr auf dem lokalen Port 5901/TCP (VNC) an den VNC-Server der Instance weiterzuleiten:

Linux und macOS

Wenn Sie über SSH eine Verbindung zu Ihrer Instance herstellen, fügen Sie den Parameter**-L** hinzu, um die Anschlussweiterleitung zu aktivieren. Ersetzen Sie PEM_FILE durch Ihren privaten Schlüssel und INSTANCE_IP je nach Bedarf durch die öffentliche oder private IP Ihrer Instance.

ssh -L 5901:localhost:5901 -i PEM_FILE ec2-user@INSTANCE_IP

Windows

Wenn Sie die Verbindung mit PuTTY öffnen, konfigurieren Sie die Anschlussweiterleitung und öffnen Sie dann die Verbindung:

  1. Wählen Sie im Menü Verbindung die Option SSH und dort Tunnel.
  2. Geben Sie 5901 in das Feld Quellanschluss ein.
  3. Geben Sie localhost:5901 in das Feld Ziel ein.
  4. Klicken Sie auf Hinzufügen.

3.Öffnen Sie den TigerVNC Viewer auf Ihrem lokalen Computer. Wenn Sie nach dem hostname des VNC-Servers gefragt werden, geben Sie localhost:1 ein und stellen Sie dann eine Verbindung damit her.

4.Geben Sie das VNC-Passwort ein, das Sie in Schritt 2 des Abschnitts Installieren von TigerVNC eingerichtet haben. Wenn eine Warnung erscheint, dass die Verbindung nicht sicher sei, ignorieren Sie sie. Sie greifen über einen verschlüsselten SSH-Tunnel auf den VNC-Server zu.

Ihre MATE-Desktop-Umgebung wird angezeigt.

(Optional) Deaktivieren der Passwortauthentifizierung für VNC

Es wird nicht empfohlen, die VNC-Passwortauthentifizierung zu deaktivieren. Alle Benutzer, die sich über SSH mit Ihrer Instance verbinden können, können einen Tunnel erstellen und auf Ihren VNC-Desktop zugreifen. Wenn es sich um eine Einzelbenutzer-Instance handelt (das heißt, keine anderen Personen können sich anmelden) und Sie die Passwortauthentifizierung für VNC trotzdem deaktivieren möchten, gehen Sie wie folgt vor:

1.Ändern Sie die Einstellung für Sicherheitstypen des VNC-Servers auf Keine:

echo SecurityTypes=None >> ~/.vnc/config

2.Starten Sie den VNC-Server neu.

sudo systemctl restart vncserver@:1

(Optional) Installieren eines Webbrowsers (nur X86)

AWS stellt in Amazon-Linux-2-Repositorys keine Webbrowser wie Chromium oder Firefox bereit. Gehen Sie wie folgt vor, um einen dieser Browser zu installieren. Beachten Sie, dass AWS keinen Support für Software bietet, die aus Quellen von Drittanbietern installiert wurde.

Die folgenden Anweisungen gelten für EC2-Instances auf Basis von 64-Bit-Prozessoren von Intel und AMD (x86_64). Diese Drittanbieterquellen stellen keine Webbrowser für Instances zur Verfügung, die auf Graviton-Prozessoren (aarch64) basieren. Führen Sie den folgenden Befehl aus, um sich über die Architektur Ihrer Instance zu vergewissern:

$ uname -m
x86_64

Gehen Sie wie folgt vor, um Chromium (das Open-Source-Projekt hinter Google Chrome) zu installieren:

1.Aktivieren Sie das EPEL-Repository. Weitere Informationen finden Sie in der EPEL-Dokumentation auf der FedoraProject.org-Website.

sudo amazon-linux-extras install epel

2.Installieren Sie die Chromium-Pakete.

sudo yum install chromium

Chromium wird auf MATE unter Anwendungen, Internet, Chromium Web Browser installiert.

Gehen Sie wie folgt vor, um Mozilla Firefox (nur für aktuelle Benutzer) zu installieren:

1.Laden Sie die neueste Firefox-Version für Linux 64-Bit auf Ihren lokalen Computer herunter. Besuchen Sie die Website mozilla.org, um auf den Download zuzugreifen.

2.Kopieren Sie die Datei auf Ihre Instance, nachdem Sie Firefox heruntergeladen haben. Anweisungen für Linux und Windows finden Sie auf den jeweiligen Websites.

3.Stellen Sie eine SSH-Verbindung zu Ihrer EC2-Instance her.

4.Extrahieren Sie den Dateiinhalt. Dieser Beispielbefehl gibt an, dass sich die Datei im Stammverzeichnis des Benutzers „ec2-user“ befindet. Ändern Sie den Pfad und die Firefox-Version nach Bedarf.

tar jxf ~/firefox-xx.y.tar.bz2 -C ~/

5.Erstellen Sie mit vim oder Ihrem bevorzugten Editor ein Desktop-Symbol. Erstellen Sie die Datei ~/Desktop/Firefox.desktop mit dem Inhalt des folgenden Beispiels.

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon=/home/ec2-user/firefox/browser/chrome/icons/default/default128.png
Icon[en_US]=/home/ec2-user/firefox/browser/chrome/icons/default/default128.png
Name[en_US]=Firefox
Exec=/home/ec2-user/firefox/firefox
Comment[en_US]=Firefox web browser
Name=Firefox
Comment=Firefox web browser
GenericName[en_US.UTF-8]=Firefox web browser
Categories=Network;WebBrowser;

6.Verwenden Sie das Desktop-Symbol, das Sie in Schritt 5 erstellt haben, um Firefox zu starten.

7.Wenn eine Meldung angezeigt wird, dass der Anwendungsstarter nicht als vertrauenswürdig eingestuft ist, wählen Sie Als vertrauenswürdig markieren und doppelklicken Sie anschließend, um Firefox zu öffnen.

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren