通过 SSH 保护 Mac 屏幕共享

macOS 10.12 Sierra 开始,可以将 macOS 配置为让其内置的屏幕共享服务只接受来自 Mac 本机的连接。这样可以防止其他设备直接通过网络连接到屏幕共享(VNC)服务。

Screens 仍然可以通过先建立安全的 SSH 连接,然后通过该连接隧道传输屏幕共享连接来连接到 Mac。

开始之前

由于进行此更改后将不再接受直接的屏幕共享连接,必须在你的 Mac 上启用远程登录(SSH)

  1. 打开 系统设置
  2. 前往 通用 > 共享
  3. 启用 远程登录
  4. 确保你的 Mac 用户账户被允许访问。

如果已安装,你还需要按如下说明配置 Screens 和 Screens Connect 以使用安全连接。

将屏幕共享限制为本地连接

在 Mac 上打开 终端 并输入:

sudo defaults write /Library/Preferences/com.apple.RemoteManagement.plist VNCOnlyLocalConnections -bool yes

出现提示时输入你的 Mac 用户账户密码。

VNCOnlyLocalConnections 设置会指示 macOS 屏幕共享仅侦听来自 localhost 的连接。因此,来自其他设备的直接屏幕共享连接将不再被接受。

配置 Screens Connect

如果你使用 Screens Connect,请打开其设置,选择 通用,并启用 使用远程登录

这可确保 Screens Connect 将远程连接配置为使用 SSH,而不是直接连接到屏幕共享服务。

配置 Screens

编辑你在 Screens 中保存的连接,并打开 安全性 部分。

启用 安全连接,并确保 在本地连接上启用 也已打开。

随后 Screens 会与你的 Mac 建立 SSH 连接,并通过该连接隧道传输屏幕共享连接。

撤销更改

如果你想让 macOS 屏幕共享再次直接接受网络连接,请打开终端并输入:

sudo defaults write /Library/Preferences/com.apple.RemoteManagement.plist VNCOnlyLocalConnections -bool no

如果你之后不再想使用安全连接,也可以禁用 Screens 和 Screens Connect 中与 SSH 相关的设置。

仍然需要帮助?

给我们发送电子邮件