Wie kann ich über eine GUI auf meine Amazon EC2-Mac-Instance zugreifen?

Lesedauer: 3 Minute
0

Ich habe eine macOS-Instance der Amazon Elastic Compute Cloud (Amazon EC2) auf einem Dedicated Host. Ich möchte über eine GUI auf die Instance zugreifen, damit ich die macOS-Umgebung optimal nutzen kann.

Behebung

Hinweis: Die folgenden Schritte wurden für macOS Mojave 10.14.6 und macOS Catalina 10.15.7 getestet.

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

Linux

Verwenden Sie den folgenden Befehl, um SSH für die Herstellung einer Verbindung zu Ihrer EC2-macOS-Instance als ec2-Benutzer zu verwenden. Ersetzen Sie keypair_file durch Ihr Schlüsselpaar und Instance-Public-IP durch die öffentliche IP-Adresse der Instance.

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

Windows

In Windows 10 und neueren Versionen von Windows Server ist standardmäßig ein OpenSSH-Client installiert. Alternativ dazu können Sie auch den OpenSSH-Client aktivieren, indem Sie Einstellungen, Apps, Apps und Funktionen, Optionale Funktionen verwalten, Eine Funktion hinzufügen und dann OpenSSH-Client auswählen. Wenn Sie eine ältere Version von Windows nutzen, verwenden Sie Git Bash, um den vorherigen Befehl zu implementieren.

Hinweis: Sie können die Instance über eine öffentliche IP-Adresse oder eine elastische IP-Adresse zugänglich machen, während sie sich in einem öffentlichen Subnetz befindet. Verwenden Sie in diesem Fall einen Bastions- oder Jump-Server, um eine Verbindung zur Instance herzustellen. Sie können aber auch mithilfe von AWS VPN oder AWS Direct Connect eine Verbindung herstellen und damit über eine private IP-Adresse auf Ihre Instance zugreifen. Aus Sicherheitsgründen wird der Datenverkehr zum VNC-Server mithilfe von SSH getunnelt. Es hat sich bewährt, das Öffnen von VNC-Ports in Ihren Sicherheitsgruppen zu vermeiden.

2.    Führen Sie den folgenden Befehl aus, um VNC (macOS Screen Sharing SSH) von der macOS-Instance aus zu installieren und zu starten:

sudo defaults write /var/db/launchd.db/com.apple.launchd/overrides.plist com.apple.screensharing -dict Disabled -bool false
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist

3.    Führen Sie den folgenden Befehl aus, um ein Passwort für ec2-Benutzer festzulegen:

sudo /usr/bin/dscl . -passwd /Users/ec2-user

4.    Erstellen Sie einen SSH-Tunnel zum VNC-Port. Ersetzen Sie im folgenden Befehl keypair_file durch Ihren SSH-Schlüsselpfad und 192.0.2.0 durch die IP-Adresse oder den DNS-Namen der betreffenden Instance:

ssh -i keypair_file -L 5900:localhost:5900 ec2-user@192.0.2.0

Hinweis: Lassen Sie die SSH-Sitzung laufen, während Sie sich in der Remote-Sitzung befinden.

5.    Stellen Sie mithilfe eines VNC-Clients eine Verbindung zu localhost:5900 her.

Hinweis: macOS hat einen integrierten VNC-Client. Für Windows können Sie RealVNC Viewer für Windows verwenden. Für Linux können Sie Remmina verwenden. Andere Clients, wie TightVNC, die unter Windows laufen, funktionieren mit dieser Lösung nicht.

Für macOS: Um auf den VNC-Viewer zuzugreifen, öffnen Sie den Finder, wählen Sie Start und dann Mit dem Server verbinden aus. Oder verwenden Sie die Tastenkombination CMD + K. Geben Sie dann Folgendes in das Feld Serveradresse ein:

vnc://localhost:5900

Für Windows: Stellen Sie mithilfe des RealVNC-Viewer-Clients über den Tunnel des SSH Local Port Forwarding eine Verbindung zum macOS-Host her. Wählen Sie im Dropdownmenü Datei die Option Neue Verbindung aus. Füllen Sie dann die folgenden Felder aus:

VNC-Server: localhost:5900 Verschlüsselung: Lassen Sie den VNC-Server entscheiden Wählen Sie OK aus.

Hinweis: Wenn bei RealVNCSet Authentifizierungsfehler auftreten, stellen Sie Verschlüsselung auf Bevorzugt Ein oder Bevorzugt Aus, bis eine dieser Einstellungen funktioniert.

6.    Die GUI des macOS wird gestartet. Stellen Sie als ec2-Benutzer mit dem Passwort, das Sie in Schritt 3 festgelegt haben, eine Verbindung zur Remote-Sitzung der macOS-Instance her.

Sie sind jetzt auf Ihrem macOS-Desktop angemeldet.


Verwandte Informationen

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

AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Jahr