如何透過 GUI 存取 Amazon EC2 Mac 執行個體?

2 分的閱讀內容
0

我在專用執行個體上擁有一個 Amazon Elastic Compute Cloud (Amazon EC2) macOS 執行個體。我想透過 GUI 存取執行個體,以便獲得 macOS 環境的頂級體驗。

解決方法

**注意:**針對 macOS Mojave 10.14.6macOS Catalina 10.15.7 對下列步驟進行了測試。

1、    使用 SSH 連接至 EC2 macOS 執行個體。

Linux

使用下列指令,以 ec2-user 身份利用 SSH 連接到 EC2 macOS 執行個體。將 keypair_file 取代為您的金鑰對,將 Instance-Public-IP 取代為您執行個體的公共 IP。

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

Windows

依預設,Windows 10 和更新版本的 Windows Server 已安裝 OpenSSH 用戶端。或者,您可以依次選取設定應用程式應用程式和功能管理選用功能新增功能OpenSSH 用戶端,來啟用 OpenSSH 用戶端。如果您使用的是較舊版本的 Windows,則使用 Git Bash 來實作上述命令。

**注意:**在執行個體位於公共子網路時,您可以透過公共 IP 地址或彈性 IP 地址存取該執行個體。在此情況下,請使用堡壘或跳板伺服器連接至執行個體。或者,您可以使用 AWS VPNAWS Direct Connect 建立連線,讓您透過私有 IP 存取執行個體。基於安全理由,VNC 伺服器的流量使用 SSH 進行通道傳輸。最佳實務是避免在安全群組中開啟 VNC 連接埠。

2、    執行下列命令,從 macOS 執行個體上安裝並啟動 VNC (macOS 螢幕共用 SSH):

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、    執行下列命令來設定 ec2-user 的密碼:

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

4、    建立連至 VNC 連接埠的 SSH 通道。在下列命令中,將 keypair_file 取代為您的 SSH 密鑰路徑,將 192.0.2.0 取代為您的執行個體的 IP 地址或 DNS 名稱:

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

**注意:**在遠端工作階段時保持執行 SSH 工作階段。

5、    使用 VNC 用戶端連接至 localhost:5900

**注意:**macOS 具有內建 VNC 用戶端。在 Windows 中,您可以使用適用於 Windows 的 RealVNC 檢視器。在 Linux 中,您可以使用 Remmina。其他用戶端(例如在 Windows 上執行的 TightVNC) 不能使用此解決方法。

在 macOS 中: 若要存取 VNC 檢視器,請開啟 Finder,選取執行,然後選取連接至伺服器。或者,使用鍵盤快速鍵 CMD + K。然後,在伺服器地址欄位中輸入下列內容:

vnc://localhost:5900

在 Windows 中:使用 RealVNC 檢視器用戶端,透過 SSH 本機連接埠轉遞通道連接至 macOS 主機。從檔案下拉式功能表中選取新連線。然後,填寫下列欄位:

VNC 服務器:localhost:5900 加密: 讓 VNC 伺服器選擇 選取確定

注意:如果您在使用 RealVNCSet 時遇到身份驗證錯誤,則將加密設定為偏好開啟偏好關閉,直到其中一個設定有效。

6、    macOS 的 GUI 會啟動。使用您在步驟 3 中設定的密碼,以 ec2-user 身份連接至 macOS 執行個體的遠端工作階段。

您現在已登入 macOS 桌面。


相關資訊

如何在執行 Amazon Linux 2 的 Amazon EC2 執行個體上安裝 GUI?

AWS 官方
AWS 官方已更新 1 年前