---
title: "Ubuntu GNOME 桌面安装和配置 TigerVNC，包含服务设置、桌面环境适配和防火墙配置"
source: https://www.iowill.com/blog/2026/09/ubuntu-gnome-tigervnc-setup/
date: 2026-09-10
updated: 2026-10-14
tags: [GNOME, TigerVNC, Ubuntu, VNC, 远程桌面]
categories: [系统与运维]
---

# Ubuntu GNOME 桌面安装和配置 TigerVNC，包含服务设置、桌面环境适配和防火墙配置

## 一、安装 TigerVNC

```bash
sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common -y
```

## 二、首次配置

### 1\. 设置 VNC 密码（长度需 ≥6 位）

```bash
vncpasswd
```

密码文件会保存在 ~/.vnc/passwd。

### 2\. 创建 xstartup 配置文件（适配不同桌面环境）

```bash
mkdir -p ~/.vnc
nano ~/.vnc/xstartup
```

根据桌面环境选择配置：

#### ***GNOME 桌面：***

```bash
#!/bin/bash
export GNOME_SHELL_SESSION_MODE=ubuntu
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
dbus-launch --exit-with-session /usr/bin/gnome-session --session=ubuntu
```

#### ***XFCE 桌面（轻量级推荐）：***

```bash
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &
```

#### ***KDE Plasma 桌面：***

```bash
#!/bin/bash
startplasma-x11 &
```

### 3.赋予执行权限：

```bash
chmod +x ~/.vnc/xstartup
```

## 三、启动 VNC 服务

### 临时启动（端口 5901）：

```bash
vncserver :1 -geometry 1920x1080 -depth 24 -localhost no
```

-   \-localhost no：允许外部连接
-   :1 对应端口 5901（:2 → 5902，依此类推）

### 查看运行中的实例：

```bash
vncserver -list
```

## 四、设置系统服务（开机自启）

### 1\. 创建 systemd 服务文件

```bash
sudo nano /etc/systemd/system/vncserver@.service
```

***粘贴以下内容（注意替换 USER）：***

```ini
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=simple
User=root  # 改为实际用户名
ExecStart=/usr/bin/vncserver :%i -geometry 1920x1080 -depth 24 -localhost no
ExecStop=/usr/bin/vncserver -kill :%i
Restart=on-failure

[Install]
WantedBy=multi-user.target
```

### 2\. 启用并启动服务

```bash
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1  # 对应 :1 实例
sudo systemctl start vncserver@1
```

### 3\. 检查状态

```bash
sudo systemctl status vncserver@1
```

## 五、防火墙放行

```bash
sudo ufw allow 5901/tcp
sudo ufw reload
```

## 六、客户端连接

> 地址：<服务器IP>:5901  
> 或者ssh客户端内部连接：localhost:5901

***客户端工具：***  
Windows: [TigerVNC Viewer](https://sourceforge.net/projects/tigervnc/files/latest/download)

Linux/macOS:

```bash
vncviewer 服务器IP:5901
```

## 七、常见问题解决

### 1\. 连接后黑屏

-   确保桌面环境已安装：

```bash
sudo apt install ubuntu-desktop  # GNOME
或
sudo apt install xfce4          # XFCE
```

-   检查日志：

```bash
cat ~/.vnc/ubuntu:1.log
```

### 2\. 修改分辨率

停止服务后重新启动：

```bash
vncserver -kill :1
vncserver :1 -geometry 1280x720 -depth 24
```

### 3\. 卸载 TigerVNC

```bash
sudo apt remove --purge tigervnc-*
rm -rf ~/.vnc
```

### 附：安全建议

#### 使用 SSH 隧道加密：

```bash
ssh -L 5901:localhost:5901 用户名@服务器IP
```

然后连接 localhost:5901。

#### 限制访问 IP：

```bash
sudo ufw allow from 192.168.1.100 to any port 5901
```

按照以上步骤，你可以在 Ubuntu 上快速搭建一个支持多用户的 TigerVNC 远程桌面服务。
