在 Ubuntu 22.04.5 上使用 GNOME 桌面环境进行远程桌面连接是完全可行的。Ubuntu 22.04 默认使用 GNOME 桌面,并且系统自带了“设置 > 共享”功能来启用远程桌面(基于 VNC 和 RDP 协议)。以下是详细的配置方法和推荐方案。
✅ 方法一:使用 GNOME 内置的“屏幕共享”(推荐用于局域网)
这是最简单的方式,适合家庭或办公室局域网内使用。
步骤:
-
打开“设置”
- 点击右上角系统菜单 → “设置”(Settings)
-
进入“共享”设置
- 左侧选择 “Sharing”(共享)
-
开启共享
- 将“共享”开关打开
- 系统会提示你设置一个访问密码(仅查看 / 完全控制)
-
启用“屏幕共享”
- 点击左侧的 “Screen Sharing”(屏幕共享)
- 配置选项:
- 允许其他人查看和控制你的桌面
- 设置安全选项(建议使用“要求确认”或设置密码)
- 可选:允许通过网络连接(如 SSH 隧道)
-
获取连接信息
- 启用后会显示类似
vnc://192.168.x.x:5900
的地址 - 记下本机 IP 地址(可用
ip a
查看)
- 启用后会显示类似
-
从远程客户端连接
- 使用支持 VNC 的客户端(如:
- Windows: TightVNC、RealVNC
- macOS: 屏幕共享应用(Finder > 前往 > 连接服务器 >
vnc://IP:5900
) - Linux: Remmina、Vinagre
- 使用支持 VNC 的客户端(如:
⚠️ 注意:
- 默认端口是
5900
- 防火墙需放行该端口(
sudo ufw allow 5900
)- GNOME 屏幕共享默认使用 VNC over TLS 加密,部分客户端可能不兼容。若连接失败,可尝试禁用加密(见下文)
✅ 方法二:使用 xrdp(推荐用于 Windows 用户或跨平台 RDP)
如果你习惯使用 Windows 的“远程桌面连接”(mstsc),可以安装 xrdp
支持 RDP 协议。
安装步骤:
# 更新系统
sudo apt update && sudo apt upgrade -y
# 安装 xrdp
sudo apt install xrdp -y
# 安装 GNOME Shell Extensions 兼容包(避免黑屏)
sudo apt install gnome-session gdm3 -y
# 配置 xrdp 使用 GNOME
echo "gnome-session" > ~/.xsession
# 或全局设置(可选):
echo "startx" | sudo tee -a /etc/xrdp/startwm.sh
# 启动并设置开机自启
sudo systemctl enable xrdp
sudo systemctl restart xrdp
# 开放防火墙端口(RDP 默认 3389)
sudo ufw allow 3389
连接方式:
- 在 Windows 上打开“远程桌面连接”
- 输入 Ubuntu 的 IP 地址
- 登录时选择会话类型为
Xorg
,输入用户名和密码即可
💡 提示:有时会出现黑屏问题,解决方法是在
/home/用户名/.xsession
文件中添加:gnome-shell --replace
或改用 MATE 桌面(更稳定):
sudo apt install mate-desktop-environment
,然后.xsession
写入mate-session
✅ 方法三:使用 VNC Server(如 TigerVNC、RealVNC)
适用于需要更高定制性的场景。
示例:安装 TigerVNC
sudo apt install tigervnc-standalone-server tigervnc-common -y
# 设置密码(首次运行)
vncserver
# 修改配置(~/.vnc/xstartup),确保启动 GNOME
nano ~/.vnc/xstartup
替换内容为:
#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec gnome-session &
赋予权限并重启服务:
chmod +x ~/.vnc/xstartup
vncserver -kill :1
vncserver :1 -geometry 1920x1080 -depth 24
然后用 VNC 客户端连接 IP:5901
🔐 安全建议
- 使用强密码
- 限制防火墙访问(只允许可信 IP)
- 推荐通过 SSH 隧道连接 VNC(更安全):
ssh -L 5900:localhost:5900 user@ubuntu-ip
然后本地连接 vnc://localhost:5900
🧩 总结对比
方法 | 协议 | 优点 | 缺点 |
---|---|---|---|
GNOME 屏幕共享 | VNC/TLS | 系统原生、无需安装 | 客户端兼容性差,仅局域网友好 |
xrdp | RDP | Windows 用户友好,性能好 | 可能出现黑屏,需调试 |
TigerVNC | VNC | 灵活、可定制 | 需手动配置,安全性依赖设置 |
❓常见问题
Q:连接后黑屏怎么办?
A:多数是因为 .xsession
或启动脚本未正确加载 GNOME。尝试创建文件:
echo "gnome-session" > ~/.xsession
并重启服务。
Q:无法连接?检查什么?
A:
- 是否开启防火墙端口(5900 / 3389)
- 是否运行了服务(
systemctl status xrdp
) - 是否在同一网络
- GNOME 是否正在运行(不能是 headless)
如有具体需求(如X_X访问、多用户、音频转发等),可进一步说明,我可以提供进阶配置方案。