TigerVNC Viewer
        ↓
Mac localhost:5901
        ↓
SSH Tunnel
        ↓
EC2 localhost:5901
        ↓
VNC Server (Xtigervnc)
        ↓
X Display (:1)
        ↓
Linux Desktop (XFCE)

1.安装虚拟桌面

  • XFCE
  • GNOME
  • LXDE
sudo apt install xfce4 xfce4-goodies -y

2.安装vnc服务

1.安装

sudo apt install tigervnc-standalone-server tigervnc-common -y

TigerVNC 做的事情是:

  1. 在服务器上启动一个虚拟 X display
  2. 在这个 display 上运行桌面环境(XFCE)
  3. 把这个桌面通过 VNC 协议传到网络
  4. 你的 Mac 用 VNC viewer 接收这个画面
3.启动vnc服务

第一次运行需要密码设置

vncserver

指定 display 和分辨率:

vncserver :1 -geometry 1920x1080 -depth 24

端口对应关系:

:1 → 5901
:2 → 5902
:3 → 5903

4.查看会话

vncserver -list

示例:

X DISPLAY #     RFB PORT #     PROCESS ID
:1             5901           6497

5.关闭会话

vncserver -kill :1

如果出现 stale,需要清理:

rm -f ~/.vnc/*.pid
rm -f /tmp/.X1-lock
rm -f /tmp/.X11-unix/X1
6.建立ssh

建立连接

ssh -i /xxx/xxx.pem 
-L 5901:localhost:5901 ubuntu@ip地址

7.本地连接vnc

localhost:5901

8.启动GUI程序

echo $DISPLAY

示例:

:1
# 每次重启后在 VNC 终端运行:
DISPLAY=:1 xhost +local:
DISPLAY=:1 /snap/bin/chromium --remote-debugging-port=9222 https://x.com/login &

整体架构

你的 Mac
    │
    │  SSH 隧道(端口转发)
    │  ssh -L 5901:localhost:5901
    │
    ▼
AWS 服务器(13.55.190.89)
    │
    ├── TigerVNC(通信层)
    │     └── 监听 5901 端口
    │     └── 把桌面画面传给你的 Mac
    │
    ├── XFCE(图形界面层)
    │     └── 运行在虚拟 Display :1 上
    │     └── 提供可操作的桌面环境
    │
    └── Chromium(浏览器层)
          └── 运行在 Display :1 上(你能看到)
          └── 开启 9222 调试端口
          └── agent-browser 通过 CDP 接管操控
Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐