加油
努力

使用腾讯云时,怎样通过远程工具访问Ubuntu的桌面界面?

在腾讯云 CVM(云服务器)上通过远程工具访问 Ubuntu 桌面界面,需要完成以下步骤:


✅ 前提条件

  1. 已创建 Ubuntu 实例(建议 Ubuntu 20.04/22.04 LTS)。
  2. 已配置安全组规则:放行桌面相关端口(如 VNC/RDP/X11 等)。
  3. 本地电脑有图形化远程工具(如 x2go、NoMachine、VNC Viewer、RustDesk 等)。

⚠️ 注意:Ubuntu Server 默认无 GUI;需先安装桌面环境。


🔧 步骤一:安装桌面环境(以 GNOME 为例)

登录 SSH(通过腾讯云控制台或本地终端):

ssh ubuntu@<你的公网IP>

1. 更新软件源并安装桌面 + 基础组件

sudo apt update && sudo apt upgrade -y
sudo apt install ubuntu-desktop -y
# 若网络慢,可换国内镜像(可选)
# sudo sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list

💡 提示:ubuntu-desktop 包较大(约 1~2GB),首次安装可能耗时较长。

2. 安装轻量级替代方案(推荐用于低配机器)

若资源紧张,可用更轻量的桌面:

# XFCE 桌面(推荐)
sudo apt install xfce4 xfce4-goodies -y
# 或 LXDE/LXQt
sudo apt install lxde-core lxterminal -y

🌐 步骤二:配置远程桌面协议

方案 A:使用 x2go(推荐!稳定、加密、支持剪贴板/音频)

✅ 优点:基于 SSH 隧道,无需额外开放端口,安全性高
✅ 适合:日常开发、远程办公

服务端安装(CVM 上):

sudo apt install x2goserver x2goserver-xsession -y

客户端安装(本地电脑):

  • Windows/macOS/Linux:下载 x2goclient
  • 连接参数示例:
    • Host: <CVM 公网IP>
    • Port: 22(SSH 默认)
    • Login: ubuntu
    • Session Type: XFCE(或其他你安装的桌面)
    • 勾选 “Use SSH tunnel”

🔒 安全组需放行 TCP 22(SSH),其他端口自动由 x2go 动态协商。


方案 B:使用 NoMachine(高性能、多屏支持)

✅ 优点:延迟低、画质好、支持 USB 重定向
❌ 缺点:需额外安装 NX 服务,安全组需放行 4000 端口

服务端:

wget https://download.nomachine.com/download/8.0/NX/nomachine_8.0.5_1_amd64.deb
sudo dpkg -i nomachine_*.deb
sudo nxserver --start

客户端:

  • 下载 NoMachine,安装后新建会话:
    • Host: <CVM IP>
    • Port: 4000
    • User: ubuntu

🔐 安全组需放行:TCP 4000


方案 C:使用 VNC(传统方式,不推荐生产环境)

⚠️ 风险:明文传输,需配合 SSH 隧道或 TLS 加密

安装 TigerVNC:

sudo apt install tigervnc-standalone-server tigervnc-common -y
mkdir ~/.vnc
vncpasswd  # 设置密码
echo "export XAUTHORITY=/home/ubuntu/.Xauthority" >> ~/.bashrc

启动 VNC 服务(例如显示 :1):

vncserver :1 -geometry 1920x1080 -depth 24

配置自动启动桌面(可选):

编辑 ~/.vnc/xstartup

#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4  # 或 gnome-session, unity 等
chmod +x ~/.vnc/xstartup
vncserver -kill :1
vncserver :1

客户端连接:

  • 工具:RealVNC Viewer / TightVNC
  • 地址:<CVM_IP>:5901(对应 :1)

🔐 强烈建议:通过 SSH 隧道转发 VNC 端口,避免直接暴露 5900+:

ssh -L 5901:localhost:5901 ubuntu@<CVM_IP>

然后本地访问 localhost:5901


🛡️ 安全组配置(腾讯云控制台)

进入【云服务器】→ 选择实例 → 【安全组】→ 添加入方向规则:

方案 端口 协议 来源
x2go 22 TCP 0.0.0.0/0(或指定 IP)
NoMachine 4000 TCP 仅允许你的公网 IP
VNC 5900+ TCP 务必结合 SSH 隧道,不建议直开

✅ 最佳实践:所有远程桌面均通过 SSH 加密通道(如 x2go、NoMachine、VNC over SSH)


🧪 验证是否成功

  • 打开远程工具,连接后应看到完整 Ubuntu 桌面。
  • 测试:打开浏览器、终端、文件管理器是否正常。
  • 检查资源:htop 查看 CPU/内存占用(桌面会消耗较多资源)。

❗ 常见问题

问题 解决方案
黑屏/无法登录 检查 xstartup 脚本权限;尝试重启 VNC/x2go 服务
分辨率不对 在客户端设置中调整分辨率;或修改 vncserver-geometry 参数
字体模糊 安装 fonts-wqy-zenhei 等中文字体;调整 DPI 设置
性能卡顿 降低画质(如关闭特效)、改用 XFCE/LXDE;升级实例配置

需要我帮你生成一份自动化部署脚本(含 x2go + XFCE + 安全组说明模板)吗?

云服务器