如何通过 GUI 访问我的 Amazon EC2 Mac 实例?

上次更新日期:2023 年 1 月 31 日

我的专属主机上有一个 Amazon Elastic Compute Cloud(Amazon EC2)macOS 实例。我希望通过 GUI 访问该实例,以便获得 macOS 环境的卓越体验。

解决方法

注意:以下步骤针对 macOS Mojave 10.14.6macOS Catalina 10.15.7 进行测试。

1.    使用 SSH 连接到您的 EC2 macOS 实例。

Linux

通过以下命令,使用 SSH 以 ec2-user 身份连接到您的 EC2 macOS 实例。将 keypair_file 替换为密钥对,并将 Instance-Public-IP 替换为您的实例的公有 IP。

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

Windows

Windows 10 和更新版本的 Windows Server 默认安装有 OpenSSH 客户端。或者,您也可以通过选择 Settings(设置)、Apps(应用程序)、Apps & features(应用程序和功能)、Manage optional features(管理可选功能)、Add a feature(添加功能),然后选择 OpenSSH Client(OpenSSH 客户端)来激活 OpenSSH 客户端。如果您使用较旧版本的 Windows,则使用 Git Bash 执行上述命令。

注意:当实例位于公共子网中时,可以通过公共 IP 地址或弹性 IP 地址访问该实例。在这种情况下,使用堡垒机或跳转服务器连接到实例。或者,您可以使用 AWS VPNAWS Direct Connect 建立一个连接,以便通过私有 IP 访问您的实例。出于安全原因,将使用 SSH 为到 VNC 服务器的流量建立隧道。此为避免在您的安全组中开放 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 Viewer。对于 Linux,您可以使用 Remmina。其他客户端(例如在 Windows 上运行的 TightVNC)不适用于此解决方法。

对于 macOS:要访问 VNC 查看器,请打开 Finder(查找工具),选择 Go(转到),然后选择 Connect to Server(连接到服务器)。或者,使用键盘快捷键 CMD + K。然后,在 Server Address(服务器地址)字段中输入以下内容:

vnc://localhost:5900

对于 Windows:使用 RealVNC Viewer 客户端,通过 SSH 本地端口转发隧道连接到 macOS 主机。从 File(文件)下拉菜单中选择 New Connection(新建连接)。然后,填写以下字段:

VNC Server:(VNC 服务器:)localhost:5900Encryption:(加密:)Let VNC Server Choose(让 VNC 服务器选择)选择 OK(确定)。

注意:如果您在使用 RealVNCSet 时遇到身份验证错误,请将 Encryption(加密)设置为 Prefer On(首选开启)或 Prefer Off(首选关闭),直到其中一个设置生效。

6.    macOS 的 GUI 启动。使用您在第 3 步中设置的密码以 ec2-user 身份连接到 macOS 实例的远程会话。

您现已登录 macOS 桌面。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?