使用VNC Viewer连接Linux云服务器
Linux云服务器一般采用SSH连接方式,使用密钥对进行安全地无密码访问。但是SSH连接一般都是字符界面,有时需要使用图形界面进行一些复杂操作。本文以Ubuntu操作系统为例,介绍如何为云服务器安装VNC Server,以及如何使用VNC Viewer连接云服务器。
准备工作
- 本文适用于Ubuntu 16.04/18.04/20.04/22.04/24.04操作系统,已创建一台对应的Ubuntu操作系统的云服务器,并且为云服务器绑定弹性公网IP,确保可以连接互联网。具体操作请参见自定义购买ECS、申请弹性公网IP。
- 弹性云服务器所在安全组添加了如下表所示的安全组规则,具体步骤参见为安全组添加安全组规则。
表1 安全组规则 方向
优先级
策略
类型
协议端口
源地址
入方向
1
允许
IPv4
TCP: 5901
0.0.0.0/0
- 已在本地PC安装VNC Viewer客户端。
步骤一:安装VNC Server
本示例中,桌面环境使用Xfce,它是一个精简的轻量化桌面,与Gnome和KDE相比更小巧,并且界面美观、对用户友好,适合云服务器远程连接场景下使用。
- 远程登录云服务器。
账号:root;密码:您在创建云服务器时设置的密码。具体操作请参见Linux ECS登录方式概述。
- 执行以下命令,更新软件列表。
sudo apt update
- 执行以下命令,安装Xfce桌面环境。
sudo apt install xfce4 xfce4-goodies
- 执行以下命令,安装TightVNC服务器。
sudo apt install tightvncserver
- 执行完成后,使用vncserver命令进行配置。
当您第一次运行vncserver时,它会创建一个默认启动脚本。按照提示进行配置:

- 密码:长度为6~8个字符。超过8个字符的密码将自动截断,只截取前8位作为VNC登录密码。请牢记该密码,VNC Viewer连接云服务器时会使用。
- 验证密码:再次输入密码。
- 是否创建仅查看密码:使用仅查看密码登录的用户将无法使用鼠标或键盘控制云服务器。此处输入“n”。
步骤二:配置VNC Server
- 首先停止第一个虚拟桌面。
vncserver -kill :1

- 执行以下命令,修改xstartup文件。
vim ~/.vnc/xstartup
按“i”进入编辑模式,添加以下内容:
#!/bin/sh xrdb $HOME/.Xresources startxfce4 &
其中,
- 第一个命令“xrdb $HOME/.Xresources”告诉VNC的GUI框架读取服务器用户的“.Xresources”文件。用户可以在“.Xresources”中更改图形桌面的某项设置,如终端颜色、光标主题和字体渲染。
- 第二个命令“startxfce4 &”告诉服务器启动Xfce。

- 为了保证VNC服务正常启动,需要配置可执行。
sudo chmod +x ~/.vnc/xstartup
- 执行以下命令,重启VNC Server。
vncserver
第二次运行vncserver时,它将创建日志文件。

回显信息中出现类似这样的一条信息:Log file is /root/.vnc/xxx:1.log。其中,“1”表示当前用户分配的是VNC的第一个虚拟桌面。
步骤三:云服务器控制台配置
- 登录ECS控制台,进入弹性云服务器列表页面。
- 单击弹性云服务器名称,进入详情页面。
- 选择“安全组”页签,单击待配置安全组规则右侧的“配置规则”。
- 在“入方向规则”页签,单击“添加规则”。
- 添加一条入方向规则,放行5901端口。 图1 更改安全组规则
步骤四:使用VNC Viewer连接云服务器
- 在本地PC打开VNC Viewer客户端,输入云服务器的弹性公网IP:1,设置名称,单击“OK”。

- 弹出如下界面,直接单击“Continue”。
- 输入5中设置的密码,单击“OK”。

- 建立连接后,即可查看Ubuntu的图形界面。如果需要在Ubuntu的图形界面打开终端,可在Ubuntu的图形界面右键单击Open Terminal Here即可。 图2 Ubuntu 20.04的图形化界面
图3 Ubuntu 24.04的图形化界面
常见问题
- 如何解决无法通过VNC Viewer访问图像化桌面?
问题现象:通过VNC Viewer访问图像化桌面出现如下图所示报错:

处理方法:
- 排查Ubuntu服务器的防火墙中放行了VNC服务所需的5901端口。请参考云服务器端口不通怎样排查?进行排查。
- 排查本地电脑是否设置了防火墙。
- 排查本地电脑是否能ping通Ubuntu服务器的弹性公网IP。
更多信息,请参见无法登录到Linux云服务器怎么办?。
- 设置完VNC密码后,如何重置新的密码?
- 修改VNC密码。根据系统提示输入新的密码,然后再次输入以确认。
vncpasswd
密码长度为6~8个字符。超过8个字符的密码将自动截断,只截取前8位作为VNC登录密码。 - (可选)重启VNC服务。
vncserver -kill :1 vncserver
- 修改VNC密码。根据系统提示输入新的密码,然后再次输入以确认。

