Direkt zum Inhalt

Wie greife ich über eine GUI auf meine EC2-macOS-Instance zu?

Lesedauer: 5 Minute
0

Ich habe eine macOS-Instance der Amazon Elastic Compute Cloud (Amazon EC2) auf einem Dedicated Host. Ich möchte über eine grafische Benutzeroberfläche (Graphical User Interface, GUI) auf die Instance zugreifen.

Lösung

Die folgenden Schritte wurden auf macOS Ventura 13.7.5, macOS Sonoma 14.7.5 und macOS Sequoia 15.4.1 getestet.

Wichtig: Führe die SSH-Sitzung aus, auch wenn du dich in einer Remote-Sitzung befindest.

Verbindung zu deiner EC2-macOS-Instance herstellen

Verwende SSH, um eine Verbindung zu der Amazon EC2-macOS-Instance herzustellen.

Linux

Führe den folgenden Befehl aus, um SSH für die Herstellung einer Verbindung zur EC2-macOS-Instance als ec2-Benutzer zu verwenden:

ssh -i keypair_file ec2-user@Instance-Public-IP

Hinweis: Ersetze keypair_file durch dein Schlüsselpaar und Instance-Public-IP durch die öffentliche IP-Adresse deiner Instance.

Windows

In Windows 10 und neueren Versionen ist standardmäßig ein OpenSSH-Client installiert. Gehe wie folgt vor, um den OpenSSH-Client zu aktivieren:

  1. Wähle Einstellungen aus.
  2. Wähle Apps und dann Apps und Funktionen aus.
  3. Wähle Optionale Funktionen verwalten aus.
  4. Wähle Feature hinzufügen und dann OpenSSH-Client aus. Wenn du eine frühere Version von Windows verwendest, verwende Git Bash, um den folgenden Befehl auszuführen:
    ssh -i keypair_file ec2-user@Instance-Public-IP

Hinweis: Wenn sich die Instance in einem öffentlichen Subnetz befindet, kannst du sie über eine öffentliche IP-Adresse oder eine Elastic IP-Adresse zugänglich machen. Verwende einen Bastion- oder Jump-Server, um die Instance über eine private IP-Adresse zu verbinden. Oder verwende AWS VPN oder AWS Direct Connect, um über eine private IP-Adresse eine Verbindung zur Instance herzustellen. Es empfiehlt sich, SSH zu verwenden, um den Datenverkehr zum macOS-Bildschirmfreigabe-Service zu tunneln. Es ist auch eine bewährte Methode, keine VNC-Ports in deinen Sicherheitsgruppen zu öffnen.

macOS-Bildschirmfreigabe-SSH installieren

Führe den folgenden Befehl aus, um macOS-Bildschirmfreigabe-SSH von der macOS-Instance aus zu installieren und zu starten:

sudo launchctl enable system/com.apple.screensharing
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist

Führe den folgenden Befehl aus, um ein Passwort für ec2-user festzulegen:

sudo passwd ec2-user

Vergewissere dich, dass das Betriebssystem (OS) auf Port 5900 lauscht:

sudo lsof -i -n -P | grep TCP | grep 5900

Port 5900 ist der Standard-Port für VNC-Server.

Erwartetes Ergebnis:

launchd 1 root 15u IPv6 0xa78dfebd53aa990a 0t0 TCP *:5900 (LISTEN)
launchd 1 root 16u IPv4 0x7a1b35dd60e49ee6 0t0 TCP *:5900 (LISTEN)
launchd 1 root 19u IPv6 0xa78dfebd53aa990a 0t0 TCP *:5900 (LISTEN)
launchd 1 root 20u IPv4 0x7a1b35dd60e49ee6 0t0 TCP *:5900 (LISTEN)

Beende die Sitzung.

Über die GUI eine Verbindung zu deiner Instance herstellen

Du kannst dich entweder über den localhost oder über die öffentliche IP-Adresse/DNS der Instance mit der GUI verbinden.

Localhost verwenden

Hinweis: Bevor du eine Verbindung zur GUI herstellst, musst du möglicherweise die Bildschirmübertragung auf deinem lokalen Mac-Computer deaktivieren. Dies liegt daran, dass sowohl die Bildschirmübertragung auf deinem lokalen Computer als auch die Amazon EC2-Verbindung versuchen, Port 5900 zu verwenden, was zu einem Konflikt führt. Um die Bildschirmübertragung zu deaktivieren, wähle Systemeinstellungen, Allgemein und dann Bildschirmübertragung aus. Stelle die Bildschirmübertragung auf ** AUS**.

Führe die folgenden Schritte aus:

  1. Führe den folgenden Befehl aus, um einen SSH-Tunnel zum VNC-Port zu erstellen:
    ssh -i keypair_file -L 5900:localhost:5900 ec2-user@Instance-Public-IP
    Hinweis: Ersetze keypair_file durch deinen SSH-Schlüsselpfad. Ersetze Instance-Public-IP durch die IP-Adresse deiner Instance oder den DNS-Namen. Oder wenn du eine Verbindung über ein privates Netzwerk herstellst, kannst du auch deine private IP-Adresse verwenden.
  2. Verwende einen VNC-Client, um eine Verbindung zu localhost:5900 herzustellen.
    macOS
    macOS hat einen integrierten VNC-Client. Um auf den VNC-Viewer zuzugreifen, öffne Finder, wähle Go und dann Connect to Server aus. Oder verwende das Tastenkürzel CMD + K. Gib dann als Server-Adresse vnc://localhost:5900 ein.
    Windows
    Du kannst den VNC-Client eines Drittanbieters wie RealVNC Viewer verwenden. Wenn du den RealVNC Viewer-Client verwendest, wähle in der Dropdown-Liste File die Option New Connection aus. Wähle für VNC Server: localhost:5900 Encryption: Let VNC Server Choose die Option OK aus. Andere Clients, wie TightVNC unter Windows, funktionieren mit dieser Lösung nicht.
    Hinweis: Möglicherweise treten Authentifizierungsfehler auf, wenn du eine Verbindung zu RealVNC Viewer herstellst. Um dieses Problem zu beheben, ändere die Einstellung Encryption von Prefer On in Prefer Off oder von Prefer Off in Prefer On.
    Linux
    Du kannst den VNC-Client eines Drittanbieters wie Remmina verwenden. Informationen zum Herunterladen des Tools findest du unter How to install Remmina (So installierst du Remmina) auf der Remmina-Website.

Öffentliche IP-Adresse oder DNS verwenden

Wenn du die Bildschirmübertragung auf deinem Mac nicht aktivieren möchtest, verwende eine öffentliche IP-Adresse oder DNS, um über die GUI eine Verbindung zur Instance herzustellen.

Führe den folgenden Befehl aus:

ssh -i keypair_file ec2-user@Instance-Public-IP

Folge dann Schritt 2 im Abschnitt Localhost, um auf den VNC-Viewer zuzugreifen und eine Verbindung herzustellen:

vnc://Instance-Public-IP:5900 or vnc://Instance-DNS-address:5900

Hinweis: Um eine Verbindung über eine öffentliche IP-Adresse herzustellen, lass Port 5900 in deinen Sicherheitsgruppenregeln zu.

Stelle nach dem Start der macOS-GUI als ec2-user mit dem neu erstellten Passwort eine Verbindung zur Remote-Sitzung der macOS-Instance her.

Ähnliche Informationen

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

Mithilfe von SSH oder einer GUI eine Verbindung zur Mac-Instance herstellen

amazon-ec2-mac-getting-started auf der GitHub-Website

AWS OFFICIALAktualisiert vor 9 Monaten